![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Сообственно как его сделать в DirectXе?
Если сделать так Код:
procedure CreateQuad(); var hRes:HRESULT; // svVortexList : array [0..iVertsNum] of sVertex; svVortexList : array of sVertex; pBuf:Pointer; begin setlength(svVortexList,iVertsNum); // Грань 1 svVortexList[0].x:=-0.5; svVortexList[0].y:=-0.5; svVortexList[0].z:=-0.5; svVortexList[0].Color:=D3DCOLOR_XRGB(0,0,255); svVortexList[1].x:=-0.5; svVortexList[1].y:=0.5; svVortexList[1].z:=-0.5; svVortexList[1].Color:=D3DCOLOR_XRGB(0,0,255); svVortexList[2].x:=0.5; svVortexList[2].y:=-0.5; svVortexList[2].z:=-0.5; svVortexList[2].Color:=D3DCOLOR_XRGB(0,0,255); svVortexList[3].x:=0.5; svVortexList[3].y:=0.5; svVortexList[3].z:=-0.5; svVortexList[3].Color:=D3DCOLOR_XRGB(0,0,255); // Грань 2 ... hRes := pD3DDevice.CreateVertexBuffer(sizeof(sVertex) * iVertsNum, 0 , D3DFVF_XYZ or D3DFVF_DIFFUSE, D3DPOOL_DEFAULT, &vBuffer, nil); if (FAILED(hRes)) then exit; hRes := vBuffer.Lock(0, sizeof(sVertex) * iVertsNum, pBuf, 0); if (FAILED(hRes))then exit; move(svVortexList, pBuf^, sizeof(sVertex) * iVertsNum); vBuffer.Unlock(); end; то перестает рисовать обьект (кубик). Соотвественно Код:
type sVertex=record x, y, z:Single; color:DWORD; end; var ... const iVertsNum=24; iIdxNum=35; iPointsNum=12; |