H. Verbeet wrote:
On 03/07/06, Ivan Gyurdiev <[EMAIL PROTECTED]> wrote:
That's not particularly important.
Well, it breaks color fixups :-)
...color fixups will go in their own function that does this differently
for 8 vs 9
BOOL vshader_input_is_color(
IWineD3DVertexShader* iface,
unsigned int regnum);
Something that has texcoord semantics doesn't necessarily have to
contain texture coordinates, but it should contain something that has
the same semantics.
Now you're talking semantics, and have me totally confused :)
"semantics" is just a word for some kind of handling you apply.
In our case the handling will be a key relationship to the vshader input
table.
Color fixups will be handled differently in any case, and if we can have
a shared point for loading arrays then I think we should take advantage
of that. I really thing more reusability is needed - just because
something works slightly different does not mean it should be completely
rewritten - that's the approach that everyone seems to be taking.
Otherwise, how do you explain striking similarity between
drawStridedSlow, the (disabled) drawSoftwareVS thing, process_vertices
in device.c, fixups in vertexbuffer.... etc [ all of which have to be
changed now to deal with different strided data format ]