[Mesa-dev] D3D1x Revert

Luca Barbieri luca at luca-barbieri.com
Thu Sep 23 03:56:11 PDT 2010


Regarding the tpf.h file, the only thing which is similar to Microsoft
files are the enum names.

In particular, we use the same names for the opcodes as those used by
Microsoft (even though the identifiers have a different prefix).

However, the "dlls/wined3d/shader_sm1.c" file in Wine contains an
opcode list for D3D9/SM1 shaders, and uses exactly the same practice
of using the Microsoft opcode names with a different namespace.

The reason of doing this is that it makes things much clearer, since
anyone which is an expert in HLSL shaders or driver development will
be able to immediately understand what the code is doing, which would
not be the case if we invented random opcode names.

The rest of file is written very differently: in particular, Microsoft
uses (trivial) accessor macros, while we define unions of structs with
bitfields.
In addition to avoiding copyright concerns, I believe my approach
looks and works better (for instance, IDE autocompletion will give you
suggestions).


More information about the mesa-dev mailing list