Image of character from Team Fortress 2 saying “I fear no man” labelled Opengl Programmers “But that thing…” Tranparency “It scares me.”

  • @[email protected]
    link
    fedilink
    3610 months ago

    You can use an O(n) radix sort on the Z-values because IEEE-754 floats share the integer property that leftmost bits always have higher values than rightward ones.

    • Kevin
      link
      English
      2610 months ago

      Oh that just made it click in my head why they would do it as sign, exponent, mantissa and not sign, mantissa, exponent. I mean yes I’ve been taught it’s for sorting purposes, but this really helped it fit better. Thanks!

    • 257mOP
      link
      fedilink
      1010 months ago

      Thanks man, I’ll look into it when I have the time. This should work on all IEEE compliant systems right?

      • @[email protected]
        link
        fedilink
        310 months ago

        Yes, but… “leftmost” in this case means MSB-sidemost, so little-endian systems will start sorting from the MSB only after loading the full value in a register; if you try sorting directly from memory in binary chunks smaller than the float size, first locate where the MSB is stored.

  • @[email protected]
    link
    fedilink
    1610 months ago

    I made a pact with myself in 2005 or so that I would never sort triangles by hand ever again. Since then I have been using higher level APIs and I have not regretted it.