Interesting find: AMD HD 4xxx Cards and icon shader problems

Discussion in 'Support!' started by zweistein000, June 11, 2014.

  1. zweistein000

    zweistein000 Post Master General

    Messages:
    1,362
    Likes Received:
    727
    I know I was told this issue will probably never be fixed, but earlier today I found out that my Card is indeed capable of rendering/drawing/what-ever-you-call-it of the shader, but only in orbital layer. I found out that for me orbital units display health bars, progress bars as well as weapon reload bars. I find this strange because if in fact my card was incapable of showing these because of outdated drivers that aren't supported, then why do these appear on orbital layer? Additionally what shader files do I have do took at to try fixing this? I may not be a computer guru, but I can still try looking at a file and screwing about with values. Maybe I'll fix it, probably I'll end up accidentally detonating someone's secret stash of nuclear weapons, but still if Uber can't afford to dedicate man hours to fixing this, then I'd be willing to play around with it.
  2. wondible

    wondible Post Master General

    Messages:
    3,315
    Likes Received:
    2,089
    (Assuming you've checked all your icon, range, and terrestrial settings)

    The icon coloring and sizing are in the particle_icon shaders. The .vs calls out to isIconOccluded in particle_common.vs, which actually sounds like a promising place to look.
  3. zweistein000

    zweistein000 Post Master General

    Messages:
    1,362
    Likes Received:
    727
    So me and @SXX Were testing this (he was brains and I was the brawn) and we managed to "fix" the following:
    "N" above north pole arrow
    south pole
    Numbers on starting spots
    Ping.

    We will continue working on this when he gets back form lunch.

    Also we managed to confirm that the problem is indeed on the OpenGL Drivers. How we fixed those will be left to SXX.
  4. SXX

    SXX Post Master General

    Messages:
    6,896
    Likes Received:
    1,812
    So basically about what was done:
    1. First I captured GL trace using APITrace on my Win7 laptop.
    2. Then I asked @zweistein000 to replay it.
    3. We find out that he still missing icons, so I just make sure this is actual GL problem which isn't related to Coherent at all.
    4. We know that all icons handled by GPU particle so problem somewhere there.
    Now when I know it's not GL problem related to GPU I find out what effects work for him and which isn't. As result he have projectiles effects and path lines working, while icons don't work.

    After number of tests I find out that "particle_transparent" work properly while "particle_transparent_screensize_nohdr" (used by North and South symbols, ping, start position ID) not working. In this case fix is easy, those particles might just be set to use "particle_transparent" instead of "particle_transparent_screensize_nohdr" which might cause some issues, but anyway.

    Unfortunately mex and units icons use "particle_transparent_nohdr" which have different techniques called "icon" and "status" which have their own shaders (particle_icon, particle_status_icon).

    My first guess was that "isIconOccluded" not working properly, but it's not that. Continue my little research for now :)
    Fr33Lancer, wondible and zweistein000 like this.
  5. bgolus

    bgolus Uber Alumni

    Messages:
    1,481
    Likes Received:
    2,299
    My current working belief is it's nothing to do with the actual shaders. Which ones are and aren't working are simply the luck of the draw ... order.
    The data that the particle system uses to get data (position, color, etc.) is essentially a giant texture, or rather lots of giant textures, that data is then read out of. There's a bug we know about already that may or may not be caused by something we're doing that's "bad" which some drivers handle and others do not which causes texture data to get out of sync with what slot it's supposed to go into. This would mean some set of particles might get a unit texture, or the UI, or some other random texture and try to use that to get their positions, which will result in very unintuitive results.

    The fact that people are able to see any strategic icons at all, even though they're all the same shader, is why I think this is the problem. Also the fact if you turn off metal spot icons in the options you lose some of the strategic icons you were getting tells me it's an every-other type problem.
    SXX likes this.
  6. perecil

    perecil Active Member

    Messages:
    108
    Likes Received:
    53
  7. SXX

    SXX Post Master General

    Messages:
    6,896
    Likes Received:
    1,812
    Thanks for sharing your thoughts. As far as I understand many particle effects are rendered properly.

    So I just want to ask do you see any hack that can be used as workaround for this issue? I understand that at moment icons use own shaders designed to work with them best, but might be there is easy way to render them differently? Any advice? :oops:

    And yeah I don't mean include it in builds, but at least guys who affected will able to play. At least it's was my original idea when I start to dig into this problem. :)
    zweistein000 likes this.

Share This Page