1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
tbResult CGame::Render(float fTime)
{
SVertex aVertex[4];
// Puffer leeren und Szene beginnen
tbDirect3D& D3D = tbDirect3D::Instance();
D3D->Clear(0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, tbColor(0.0f, 0.0f, 0.0f), 1.0f, 0);
D3D->BeginScene();
// ------------------------------------------------------------------
// Vertexformat und Titelbildtextur setzen, Z-Buffer aus
D3D.SetFVF(SVertex::dwFVF);
D3D.SetTexture(0, m_pField);
D3D.SetRS(D3DRS_ZENABLE, D3DZB_FALSE);
// Die vier Vertizes des Titelbilds erstellen (Rechteck)
// Links unten
aVertex[0].vPosition = tbVector3(0.0f, D3D.GetScreenSize().y, 0.5f);
aVertex[0].fRHW = 1.0f;
aVertex[0].Color = tbColor(1.0f, 0.8f, 0.8f);
aVertex[0].vTex0 = tbVector2(0.0f, 1.0f);
// Links oben
aVertex[1].vPosition = tbVector3(0.0f, 0.0f, 0.0f);
aVertex[1].fRHW = 1.0f;
aVertex[1].Color = tbColor(0.8f, 1.0f, 0.8f);
aVertex[1].vTex0 = tbVector2(0.0f, 0.0f);
// Rechts unten
aVertex[2].vPosition = tbVector3(D3D.GetScreenSize().x, D3D.GetScreenSize().y, 0.5f);
aVertex[2].fRHW = 1.0f;
aVertex[2].Color = tbColor(0.8f, 0.8f, 1.0f);
aVertex[2].vTex0 = tbVector2(1.0f, 1.0f);
// Rechts oben
aVertex[3].vPosition = tbVector3(D3D.GetScreenSize().x, 0.0f, 0.5f);
aVertex[3].fRHW = 1.0f;
aVertex[3].Color = tbColor(1.0f, 1.0f, 0.8f);
aVertex[3].vTex0 = tbVector2(1.0f, 0.0f);
// Als Dreiecksfolge zeichnen
D3D->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP, 2, aVertex, sizeof(SVertex));
// ------------------------------------------------------------------
//Spieler1
SVertex bVertex[3];
bVertex[0].vPosition = tbVector3(-3.0f,-3.0f,0.0f);
bVertex[1].vPosition = tbVector3(-2.0f,-2.0f,0.0f);
bVertex[2].vPosition = tbVector3(-3.0f,-1.0f,0.0f);
bVertex[3].vPosition = tbVector3(-1.0f,-3.0f,0.0f);
if(GetAsyncKeyState(VK_F1))D3D->DrawPrimitiveUP(D3DPT_LINELIST,2,bVertex,sizeof(SVertex));
// ------------------------------------------------------------------
// Szene beenden
D3D->EndScene();
return TB_OK;
}
|