I have stumbled upon an issue with my port on UWP. While the application is building, running, looking and function perfectly fine when I run it on my development environment, if I downloaded from the store or simple install on other systems, the app is looking very different. The colours get some weird distortion the fonts the same, even simple lines.
I cannot share with you the whole application but I have made a screenshot where you can clearly see the issue.
Have you seen this before?
Is there a way to fix it?
Thanks in advance.
Are you using SDL_Renderer?
If so, what texture format(s) are you requesting, and what is getting used?
SDL_QueryTexture can be used to retrieve the texture’s format: https://wiki.libsdl.org/SDL_QueryTexture?highlight=(\bCategoryRender\b)|(CategoryEnum)|(CategoryStruct)
Thank you for the quick response. I am using SDL_Renderer. When I am calling SDL_QueryTexture I am not requesting any pixel format I pass NULL as an argument. When I create the main texture I use SDL_PIXELFORMAT_ABGR8888.
Should I be trying different texture format?
Can you try using SDL_QueryTexture() to retrieve the pixel-format that ends up getting used, by textures? Once you’ve done that, see if the format is what you expected it to be.
An other issue I failed to mention, which I have figured out and I am just using a work around for now, is when I create the Texture.
Lets say I want the App to be 600x480 resolution, only on WinRt I have to give 1200x480 when I call the function SDL_CreateTexture other wise I get back half of the pixel data.
So I am back with some feedback, (not sure if anyone is reading this but here I go). It was not the pixel format that was causing this, its the Renderer.
If I create a renderer with SDL_RENDERER_SOFTWARE it results in the distorted version. I have a safe guard in case it fails to create an SDL_RENDERER_ACCELERATED to create a SDL_RENDERER_SOFTWAR, but why would the software render result in this distortion?
To close the subject in case of future searches, the problem was unrelated to SDL after all!
I guess the cause of the problem would be interesting for future searches
I am using boost operators for the colour class. Specifically addable, less_than_comparable, and equality_comparable. Apparently when these implementations were malfunctioning with the Direct11 and software driver, on Nvidia. I am not sure 100% but implementing them my self in the class fixed my issue.