hier der init, eigentlich alles streng nach buch
![:)](wcf/images/smilies/smile.png.pagespeed.ce.cw1CRsMB0z.png)
halt auf "meine" engine angepasst
|
Quellcode
|
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
|
seResult InitScene() {
if(SE_FAILED(seDirect3D::SetFVF(D3DFVF_XYZ | D3DFVF_DIFFUSE)))
return SE_ERROR;
seDirect3D::SetRS(D3DRS_LIGHTING,FALSE);
seDirect3D::SetRS(D3DRS_CULLMODE,D3DCULL_NONE);
seDirect3D::SetRS(D3DRS_DITHERENABLE,TRUE);
float fAspect;
seMatrix mProjection;
fAspect = 1024.0f / 768.0f;
mProjection = tbMatrixProjection(SE_DEG_TO_RAD(90.0f), fAspect, 0.1f, 100.0f);
seDirect3D::GetDevice()->SetTransform(D3DTS_PROJECTION, (D3DMATRIX*)(&mProjection));
//dreieck
g_aVertexArray[0].vPosition = seVector3(0.0f, 1.0f, 0.0f);
g_aVertexArray[1].vPosition = seVector3(1.0f, -1.0f, 0.0f);
g_aVertexArray[2].vPosition = seVector3(-1.0f, -1.0f, 0.0f);
g_aVertexArray[0].dwColor = (DWORD)(seColor(1.0f, 0.0f, 0.0f));
g_aVertexArray[1].dwColor = (DWORD)(seColor(0.0f, 1.0f, 0.0f));
g_aVertexArray[2].dwColor = (DWORD)(seColor(0.0f, 0.0f, 1.0f));
seAddInfoLog("Init Scene");
return SE_OK;
}
|
dann das gerendere
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
mRotation = tbMatrixRotationY(SE_DEG_TO_RAD(90.0f));
mTranslation = tbMatrixTranslation(seVector3(0.0f,0.0f,2.0f));
mWorld = mRotation * mTranslation;
seDirect3D::GetDevice()->SetTransform(D3DTS_WORLD, (D3DMATRIX*)(&mWorld));
seDirect3D::Clear(0,NULL,D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER,D3DCOLOR_XRGB(0,0,63),1.0f,0));
seDirect3D::BeginScene();
seDirect3D::GetDevice()->DrawPrimitiveUP( D3DPT_TRIANGLELIST,
1,
g_aVertexArray,
sizeof(Vertex));
seDirect3D::EndScene();
if(FAILED(seDirect3D::GetDevice()->Present(NULL, NULL, NULL, NULL))) {
seAddErrorLog("Present failed");
return SE_ERROR;
}
|
tja und das present hauts mir um die ohren... ???
kann mir wer helfen? braucht ihr noch mehr code?
=> also für einen bruchteil einer micro milli nano sekunde seh ich das dreieck