FVF wechseln
-
Hey,
es geht um DirectX9. Vor dem Rendern muss man ja mit device->SetFVF() das Vertex Format setzen. Beim Erstellen eines VertexBuffers muss man ebenfalls eins angeben.
Wenn ich meinen VertexBuffer jetzt mit allenmöglichen Daten fülle, also z.B. Position, Normale, Diffuse Color, Textur 1+2
Kann ich dann beim Rendern das FVF z.B. einfach auf Position + Diffuse Color stellen und die anderen Daten werden ignoriert?
Dankeschön
-
Beim Erstellen eines VertexBuffers muss man ebenfalls eins angeben.
du musst das FVF beim vertex buffer nicht unbedingt angeben.
Kann ich dann beim Rendern das FVF z.B. einfach auf Position + Diffuse Color stellen und die anderen Daten werden ignoriert?
da wär ich vorsichtig. das geht evtl. in einem bestimmten rahmen, aber wenn du z.b. da vertices mit normalvektoren und texturkoordinaten drin hast und du gibst nur XYZ und TEX1 an, dann wird der den normalvektor als texcoords interpretieren.
was genau versprichtst du dir davon?
-
Ich hab mir überlegt, dass der VertexBuffer ja ein FVF für die enthaltenen Daten hat und somit kann man ja solche Sachen wie Normale als Texturkoordinate verhindern, weil man ja weiß, wie und wo die Sachen drinstehen....
Aber wenn ichs mir jetzt recht überlege... keine Ahnung wieso ich darauf kam *g* Hat mich einfach interessiert...
Danke!
-
mit einer vertex declaration ließe sich das hinbekommen

-
Was ist das?
-