1.New->Win32 Application->An empty project потом нажимаю добавить к пректу добовляю C/C++ Source file там пишу текст программы
Код:
#include <d3dx9.h>
namespace d3d
{
bool InitD3D(
HINSTANCE hInstance, // [in] Ýêçåìïëÿð ïðèëîæåíèÿ.
int width, int height, // [in] Ðàçìåðû âòîðè÷íîãî áóôåðà.
bool windowed, // [in] Îêîííûé (true) èëè
// ïîëíîýêðàííûé (false) ðåæèì.
D3DDEVTYPE deviceType, // [in] HAL èëè REF
IDirect3DDevice9** device); // [out] Ñîçäàííîå óñòðîéñòâî.
int EnterMsgLoop(
bool (*ptr_display)(float timeDelta));
LRESULT CALLBACK WndProc(
HWND hwnd,
UINT msg,
WPARAM wParam,
LPARAM lParam);
template<class T> void Release(T t)
{
if(t)
{
t->Release();
t = 0;
}
}
template<class T> void Delete(T t)
{
if(t)
{
delete t;
t = 0;
}
}
}
int d3d::EnterMsgLoop(bool(*ptr_display)(float timeDelta))
{
MSG msg;
::ZeroMemory(&msg, sizeof(MSG));
static float lastTime = (float)timeGetTime();
while(msg.message != WM_QUIT)
{
if(::PeekMessage(&msg, 0, 0, 0, PM_REMOVE))
{
::TranslateMessage(&msg);
::DispatchMessage(&msg);
}
else
{
float currTime = (float)timeGetTime();
float timeDelta = (currTime - lastTime) * 0.001f;
ptr_display(timeDelta); // âûçîâ ôóíêöèè âèçóàëèçàöèè
lastTime = currTime;
}
}
return msg.wParam;
}
текст выдрал с "вашей" книги Intro3DGameProgramming(вы её переводили) Часть 2->1.5
Потом залажу в Project->setting->link добовляю d3d9.lib d3dx9.lib winmm.lib
Build->Compile (OK)
Bulid->Rebuild(Error)
Build->Start debuger->Go(Error)
Использую DX скачивал пример на ОГЛ NeHE lesson1 компилилось отлично.