I'm working on a WinRT update using the latest Gideros build and I'm seeing a serious degradation in the sharpness of text. I have my project window size set to 1920 x 1080, the same as the logical dimensions. In the Gideros Player I see sharp text, but in the WinRT application the text looks like it was rendered at a much lower resolution and then stretched. The attached screen shot shows the WinRT application on the top and the Gideros Player below. In the same window size, the text (implemented via TextField objects) in the player looks very crisp, while in WinRT application window it looks quite blurry. Is this a bug, or some project setting I need to tweak?
Paul
Comments
"In order to maintain crisp vector rendering, you should listen for the CompositionScaleChanged event and query the CompositionScaleX and CompositionScaleY property values to account for the current UI scale, and potentially render again from DirectX. Otherwise XAML layout might do the scaling and your visuals might be degraded."
Seems relevant to me...
Do see see any hope for resolving this from within Gideros? I'd try to take it on myself but I know very little of the Gideros code, I'm not at all familiar with XAML and my DirectX experience is way out of date.
If not, I'll start implementing a workaround. Since this issue seems to only effect TextFields (probably the only vector rendering at least in the app in question) I'm considering the workaround of displaying text through bitmaps rather than through TextFields, at least for the WinRT version. Some could be pre-rendered, but dynamic text would have to built from a collection of character bitmaps, probably through a class that uses the same interface as TextField. It would be a fair amount of work, and probably a bit of a performance hit, but it would eliminate the blurry text.
Paul
Likes: keszegh
Likes: hgy29, antix
I'll follow your suggestion from the PM and listen for the application resize event. I'll also wait a few milliseconds before creating fonts and TextFields on startup. That workaround will allow me to publish the update to get my customers the fix for the high-DPI screen issue.
Thanks for your help! I've made a donation as promised.
Paul
Likes: hgy29, keszegh, talis
Fragmenter - animated loop machine and IKONOMIKON - the memory game
Fragmenter - animated loop machine and IKONOMIKON - the memory game
Hgy29 also suggested listening for the event APPLICATION_RESIZE, and then rebuild fonts and TextFields.
Paul
Likes: snooks, antix, SinisterSoft