> > On the contrary, I think that putting norm and scaled/int in the same sack is > talking apples and oranges... Normalization, like fixed-point integers, > affects the interpretation of the 32bit integer in memory, namely the scale > factor that it should be multiplied. Whereas the only difference between > _SSCALED and _SINT is the final data type (int vs float) -- the value is > exactly the same (modulo rounding errors). > > The pure vs non-pure integer is really a "policy" flag, which means please do > not implicetly convert this to a float at any point of the vertex pipeline. > And I believe that policy flags should be outside enum pipe_format.
While I'm tending to agree with you Jose, the other thing that we haven't discussed yet is that we need to add new pack/unpack interfaces to u_format for all these types anyways to get a integer clean path (no float converts in the pipeline), increasing the size of the u_format_table anyways. With separate types we could overload the float pack/unpack. ones most likely. Thanks for helping on this, I've been quite happy to try both ways in code so far and I'm not really sure which one is a winner yet. Dave. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev