moin wider ein problem
(allg. ist mein problem dass dot nich da ist und schon seit 2 tagen vermisst wird -.-)
ALso will ne simple Textur aufn Squad knallen, daher mal nen paar relevante code snippets:
Vertexformat:
|
C-/C++-Quelltext
|
1
|
DWORD SpriteVertex::_FVF = D3DFVF_XYZ | D3DFVF_DIFFUSE | D3DFVF_TEX1;
|
gefüllte Vertizes:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
_Vertizes[0]._Position.x = 1;
_Vertizes[0]._Position.y = 1;
_Vertizes[0]._Color = D3DCOLOR_ARGB(0, 0, 0, 0);
_Vertizes[0]._Tex.x = 1;
_Vertizes[0]._Tex.y = 0;
_Vertizes[1]._Position.x = 1;
_Vertizes[1]._Position.y = -1;
_Vertizes[1]._Color = D3DCOLOR_ARGB(0, 0, 0, 0);
_Vertizes[1]._Tex.x = 1;
_Vertizes[1]._Tex.y = 1;
_Vertizes[2]._Position.x = -1;
_Vertizes[2]._Position.y = 1;
_Vertizes[2]._Color = D3DCOLOR_ARGB(0, 0, 0, 0);
_Vertizes[2]._Tex.x = 0;
_Vertizes[2]._Tex.y = 0;
_Vertizes[3]._Position.x = -1;
_Vertizes[3]._Position.y = -1;
_Vertizes[3]._Color = D3DCOLOR_ARGB(0, 0, 0, 0);
_Vertizes[3]._Tex.x = 0;
_Vertizes[3]._Tex.y = 1;
|
Rendering:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
|
_Texture->getDevice()->SetStreamSource(0, _Buffer, 0, sizeof(SpriteVertex));
_Texture->getDevice()->SetFVF(SpriteVertex::_FVF);
_Texture->getDevice()->SetTexture(0, _Texture->getTexture());
_Texture->getDevice()->BeginScene();
_Texture->getDevice()->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP, 2, _Vertizes, sizeof(SpriteVertex));
_Texture->getDevice()->EndScene();
|
So. Das Quad selber sehe ich bereits nur ist es entsprechend der Farbe schwarz. Was auch komisch ist, warum der Alpha Kanal keine Auswirkung auf die Farbe hat oder bin ich einfach zu blöd? Matrizen sind keine gesetzt (2D), Renderstates eben der 2D standard, Lightning aus ect.
Naja die Textur wird korrekt geladen, der Vertexbuffer stimmt auch (sonst würde ich das Squad ja nicht sehen!) aber die Textur fehlt eben. Erleuchtet mich, bin langsam schon depresiv, weil ich den verfluchten fehler nicht finde.......
mfg