Pages: 1 2 3 4 5 6 7 8 9
Author Topic: Fonts display glitch / Borders / Scrolling glitches  (616,297 Views)
Offline (Unknown gender) Darkstar2

Member
Joined: Jan 2014
Posts: 1,238
View profile
Reply #90 Posted on: June 02, 2014, 11:28:54 PM
Quote from: lonewolff on June 02, 2014, 11:25:38 PM
My test was just with the default 640 x 480 window

Your screen resolution was set to what?

When running my tests just for principles I test under every screen resolution down from 800x600 up to native, which in my  case is 1920x1080 (FullHD).
Offline (Unknown gender) Goombert

Developer
Joined: Jan 2013
Posts: 2,991
View profile
Reply #91 Posted on: June 03, 2014, 01:01:12 AM
Quote from: egofreeWhat about using font_add_sprite ? :

http://enigma-dev.org/docs/Wiki/Font_add_sprite
Sprite fonts will obviously work because they use individual textures for each character, currently fonts are the only thing texture paged. The issues they are experiencing are the result of the characters being tightly packed together on the same texture, so obviously sprite fonts would work for him.

Quote from: Darkstar2If worse comes to worse I will just compile my project with whatever setting works for me and tough fucking luck for the rest....... Thanks to those who posted and confirmed they too saw what I saw seeing, I'm not crazy! (YET but getting there!).

You can calm down because nobody spoke up until we were half why through testing, why? I don't fucking know, so you should be blaming them instead of thanking them, Harri especially, he waited till we were at the end of the topic before speaking up.

I suppose you can also blame me for not getting them to confirm their results, but they seemed avoidant of the subject, which was also destroying my moral to fix the problem.

Also to confirm, I ran it exactly as you said, and do not experience the issue.


Quote from: Darkstar2
Thanks Robert for the initial suggestions, the round 1000 thing worked and the min 14px + AA1 makes it fully  functional on all fonts and sizes I tried.  Since the real root of the problem might be difficult to fix and requiring a rewrite or time nobody has, why not just use this if it works for everyone !?!?!?
Then I am certain it has to do with rounding anomalies in the sampler, where as Direct3D was rounding issues in the screen space, this is why Direct3D we reproduced the same results. Direct3D is known to have less inconsistencies between graphics card manufacturers as well.

OpenGL samples texture coordinates at their centers.
http://hacksoflife.blogspot.com/2009/12/texture-coordinate-system-for-opengl.html

Does that solution work with fonts of other sizes/resolutions/aliasing? That is important because if it does and works that well, then we know we are on the right track.
http://www.opengl.org/wiki/Sampler_%28GLSL%29#Direct_texel_fetches
Offline (Unknown gender) Darkstar2

Member
Joined: Jan 2014
Posts: 1,238
View profile
Reply #92 Posted on: June 03, 2014, 01:48:09 AM
No not blaming you at all Robert, that's what forums are for, I posted the topic and it's up to others confirming themselves if they too have the issue, however you did mention on several occasions that everyone complained when offsets was used and so it gave me the impression that the problem was on my end.

I'll take the whole blame for not waiting until I get enough replies from people before wasting my time !
Before I do anymore testing I will make a new test project that covers everything in one product and upload it for everyone interested (lol every 4 users using ENIGMA), and tell me who is having the issues.

Lonewolf, why does your text render black ? :D
or did you change colours ?

BTW you are not running windows, could this have anything to do?

as to sprite fonts why the hell should I do that, ? Aren't fonts used as sprites already internally?
That would be double to have to convert fonts I need to bitmap and back to font........ I shouldn't have to do that :D  it's a pain in the arse that method. because each time I want to modify something I have to regenerate a new font sprite strip and add the strip to a font index, etc, whereas with the font system I simply  change font properties inside the IDE.
Offline (Unknown gender) Goombert

Developer
Joined: Jan 2013
Posts: 2,991
View profile
Reply #93 Posted on: June 03, 2014, 01:54:08 AM
This issue will become more lucid in the future when texture paging is added because individual subimages of a sprite will be tightly packaged together. The only quick fix I can think of is adding padding between the font characters.
Offline (Unknown gender) Darkstar2

Member
Joined: Jan 2014
Posts: 1,238
View profile
Reply #94 Posted on: June 03, 2014, 01:56:47 AM
Quote from: Robert B Colton on June 03, 2014, 01:54:08 AM
This issue will become more lucid in the future when texture paging is added because individual subimages of a sprite will be tightly packaged together. The only quick fix I can think of is adding padding between the font characters.

Will that cause any other problems / visual anomalies ?

BTW did you read my previous posts in this topic ? I tried every suggestion, the ones with xoff and yoff floats rendered nothing, meaning no text displayed at all, only the last 2 sets of xoff yoff displayed garbled characters.  The mixture of ceil /floor also got no good results.
Offline (Unknown gender) Darkstar2

Member
Joined: Jan 2014
Posts: 1,238
View profile
Reply #95 Posted on: June 03, 2014, 02:36:35 AM
Without defining the color do you see white text or black ?

Offline (Unknown gender) Goombert

Developer
Joined: Jan 2013
Posts: 2,991
View profile
Reply #96 Posted on: June 03, 2014, 04:18:05 AM
QuoteWill that cause any other problems / visual anomalies ?
Yes, the reason you see the same bars on the side of the ones is because your card must round down the texel or something causing texels from the character next to it on the font texture to be drawn on the quad. Again because OGL samples pixel centers. With padding this would not happen because the pixels on each side would be transparent, but that still doesn't fix the problem because if users wanted to create texture sheets manually themselves they would have some problems.

QuoteBTW did you read my previous posts in this topic ? I tried every suggestion, the ones with xoff and yoff floats rendered nothing, meaning no text displayed at all, only the last 2 sets of xoff yoff displayed garbled characters.  The mixture of ceil /floor also got no good results.
Yes you said round with the / 1000 * 1000 worked for you. So to clarify, with that version you had no other issues?

I also tried with the default font, and could not reproduce the issues.
Offline (Unknown gender) Darkstar2

Member
Joined: Jan 2014
Posts: 1,238
View profile
Reply #97 Posted on: June 03, 2014, 04:49:55 AM
Read my PM for some other strange stuff. :P
Also I am uploading something in a bit.
Offline (Unknown gender) Goombert

Developer
Joined: Jan 2013
Posts: 2,991
View profile
Reply #98 Posted on: June 03, 2014, 05:03:07 AM
I already did. This issue is texture paging for different graphics drivers. The issue is in the OpenGL sampler, for Direct3D the issue is in the projection/viewport. The only solution appears to be to round all texture coordinates to the nearest thousandth, but that is no solution.

The only solution I can think  of is adding padding options to font packing and then later texture paging. Since fonts are the only texture paging done by ENIGMA currently. The only problem is then in the future if users want to manually create texture pages they will also have to pad their shit.

We are not going to fix OGL by manipulating the project like we did with Direct3D because the two issues are inherently different.
Offline (Unknown gender) Darkstar2

Member
Joined: Jan 2014
Posts: 1,238
View profile
Reply #99 Posted on: June 03, 2014, 05:09:23 AM
Quote from: Robert B Colton on June 03, 2014, 05:03:07 AM
I already did. This issue is texture paging for different graphics drivers. The issue is in the OpenGL sampler, for Direct3D the issue is in the projection/viewport. The only solution appears to be to round all texture coordinates to the nearest thousandth, but that is no solution.

The only solution I can think  of is adding padding options to font packing and then later texture paging. Since fonts are the only texture paging done by ENIGMA currently. The only problem is then in the future if users want to manually create texture pages they will also have to pad their shit.

We are not going to fix OGL by manipulating the project like we did with Direct3D because the two issues are inherently different.

How can this be ? I tested the shit on many systems with different drivers, different hardware and all had the 1:1 identical visuals.  So far this seems to be an issue for NVIDIA users so what, are you telling all NVIDIA users to just fuck off and wait for an official fix whenever that will happen if at all OR offer a solution as temporary as it may be that works for all ???

I knew from the damn beginning this was a temporary fix, I would not have wasted my bloody time otherwise had I known offsets would not be accepted as even a temporary solution, why the fuck then did I go through all this ? if you never had intentions of using it !

Then you gave me new rounding tricks, which I tried, worked for me but not fully for other font types.

If the .01 offset works out for NVIDIA and AMD users as ugly as the fix might seem to an ENIGMA developer perspective, then we shouldn't even have this conversation, the whole idea is that things get displayed properly to both NVIDIA and AMD users and beyond.......this is not a coding competition or engine competition, so why all this fuss ???  By all means this would not win any competition that's for sure  :D
I will try some more rounding manipulations and that's it.......if that  does not work I will use what works for myself and everyone else. I'm not a fucking C++ coder so I can't fix ENIGMA myself, so I got to use alternatives, and those seem to work for everyone I asked so far.

and ego, the add font from sprite thing requires a font sprite, these are not made from thin air, it means I have to convert a font to a sprite strip and use that in the function.  I already have the software for that (SpriteFont2), but why should I do that anyway, it's more work, when I could use fonts directly, with a fix that works for everyone !
Also somehow I did not get that to work despite my font sprite sheet being ok.  Also by using fonts directly I can tweak them from the IDE, whereas with the add from sprite I have to change the font sprite sheet each time.......so many detours - defeats the purpose of having a fonts system!  Also you mention it as "fixing my problem" when you know that we are many here having the same issue?

Also the 1000 rounding trick does not work with my latest project, it completely screws up the scrolling, and everything.  the 0.01 works across the board and seems the best hack so far.  Also the font add sprite is broken in ENIGMA, tried that already nothing gets displayed, I have the proper sprite fonts png.



Offline (Unknown gender) Goombert

Developer
Joined: Jan 2013
Posts: 2,991
View profile
Reply #100 Posted on: June 04, 2014, 05:45:01 AM
QuoteHow can this be ? I tested the shit on many systems with different drivers, different hardware and all had the 1:1 identical visuals.  So far this seems to be an issue for NVIDIA users so what, are you telling all NVIDIA users to just fuck off and wait for an official fix whenever that will happen if at all OR offer a solution as temporary as it may be that works for all
No I'm saying Nvidia sucks, AMD rules, and we'll find a fix once we better identify the problem.

QuoteI knew from the damn beginning this was a temporary fix, I would not have wasted my bloody time otherwise had I known offsets would not be accepted as even a temporary solution, why the fuck then did I go through all this ? if you never had intentions of using it !
I did and still do have intentions of using it, but you haven't even finished confirming it from all the other users in your other topic. So fucking relax, I try to make decisions which most people mutually agree to, so I'm just waiting to see other peoples thoughts.

Also font_add_sprite does work, it does not use external files, just like GM.
http://enigma-dev.org/docs/Wiki/Font_add_sprite
I just tested fundies game, and his sprite font works fine.
Offline (Unknown gender) Goombert

Developer
Joined: Jan 2013
Posts: 2,991
View profile
Reply #101 Posted on: June 04, 2014, 05:51:26 AM
Actually if the problem was with AMD we'd be killing 60%-70% since AMD has a larger market share than Nvidia, you are also forgetting about Intel.

That said, this problem still makes no fucking sense. I don't believe you guys are even having this problem, shifting the projection for you guys is like shifting the fucking texture matrix, it's insane!
Offline (Unknown gender) Darkstar2

Member
Joined: Jan 2014
Posts: 1,238
View profile
Reply #102 Posted on: June 04, 2014, 06:00:45 AM
Quote from: Robert B Colton on June 04, 2014, 05:51:26 AM

That said, this problem still makes no fucking sense. I don't believe you guys are even having this problem, shifting the projection for you guys is like shifting the fucking texture matrix, it's insane!

Right like we have better things to do and just making shit up and this is all just a bad dream :D  Anyhow this is not a topic about who's dick is larger and who has a better GPU but finding a fix (as gay as it might be) that works for all of us so we can move on to other serious stuff need fixing :D As Harri suggested maybe this fix is helping with the rounding.  I work with what I have.

All the suggestions you gave me I did and none worked 100%.  But of course there was no way of knowing unless trying, which I did......
To be honest this 0.01 thing was random, I too never expected it to be the ideal fix. 

But unless you have a contact at NVIDIA you will never know for sure......  Graphic card issues is nothing new, some games in history have had issues with NVIDIA, some with AMD  etc.....

For legal reasons I won't go into details about why I would never use AMD.....I just know stuff and I will leave it at that.

Yeah NVIDIA has its flaws, so does Intel so does the fucked up AMD CPUs that came after the Phenom x4's.



Offline (Unknown gender) Goombert

Developer
Joined: Jan 2013
Posts: 2,991
View profile
Reply #103 Posted on: June 04, 2014, 06:29:18 AM
haha

QuoteBut unless you have a contact at NVIDIA you will never know for sure......  Graphic card issues is nothing new, some games in history have had issues with NVIDIA, some with AMD  etc.....
I will call them when I get time.
Offline (Unknown gender) Darkstar2

Member
Joined: Jan 2014
Posts: 1,238
View profile
Reply #104 Posted on: June 04, 2014, 08:09:17 AM
Quote from: lonewolff on June 04, 2014, 06:13:24 AM
Yeah man, we made it up  :D

I just took Darkstar's image and changed the colours around a bit.

Jeez we got you good didn't we?

Dark and I have been swapping PM's for a week seeing what the best way to prank you would be  ;D

Careful he'll actually believe you LOL!
Pages: 1 2 3 4 5 6 7 8 9