31
Graphics / Re: Changes in RenderTextures/Texts?
« on: October 06, 2014, 09:23:06 pm »
I investigated a bit further and compiled new SFML dlls from the 2.1 tag. Using these the problem with the mirroring is gone, so I can attribute that to some change in SFML. Though I have doubts if the old or the new version is correct, as I vaguely remember having to re-sort the vertices back then.
To answer your questions, there is surely no mixing of debug and release, debug version uses debug dlls and release version uses release dlls and both had the same problems. 2 and 3 are completely single threaded.
1 is nearly single threaded, just to circumvent some other problem, only when a new texture is needed, it launches a new sf::Thread and immediately waits for that thread, inside it just creates a String, Text, RenderTexture, does a clear, draw, display, copies the internal texture into a newly created one.
Somehow the clear does not clear the RenderTexture, which causes the garbage pixels in both SFML versions I tested when normally running the program. I confirmed this by running it in the debugger and seeing the garbage replaced with a green color (debug memory fill I guess) while still having the text in the parts of the RenderTexture that got drawn to. That also causes some problems in the 3rd version that I forgot to mention.
I think the reason I did not have these problems earlier is because back then I still had a newer ATI card that I replaced with some ancient NVidia card that was laying around here when its stopped working reliably. That card does not support GL_EXT_framebuffer_object and I think there lies the problem, maybe the fallback implementation is bugged (I'm still looking for the root cause, could be some activation issue; code will therefore have to wait for later).
And lastly the text size, I'll adjust somehow to the change.
To answer your questions, there is surely no mixing of debug and release, debug version uses debug dlls and release version uses release dlls and both had the same problems. 2 and 3 are completely single threaded.
1 is nearly single threaded, just to circumvent some other problem, only when a new texture is needed, it launches a new sf::Thread and immediately waits for that thread, inside it just creates a String, Text, RenderTexture, does a clear, draw, display, copies the internal texture into a newly created one.
Somehow the clear does not clear the RenderTexture, which causes the garbage pixels in both SFML versions I tested when normally running the program. I confirmed this by running it in the debugger and seeing the garbage replaced with a green color (debug memory fill I guess) while still having the text in the parts of the RenderTexture that got drawn to. That also causes some problems in the 3rd version that I forgot to mention.
I think the reason I did not have these problems earlier is because back then I still had a newer ATI card that I replaced with some ancient NVidia card that was laying around here when its stopped working reliably. That card does not support GL_EXT_framebuffer_object and I think there lies the problem, maybe the fallback implementation is bugged (I'm still looking for the root cause, could be some activation issue; code will therefore have to wait for later).
And lastly the text size, I'll adjust somehow to the change.