본문 바로가기
Lib/DirectX

Direct3D 초기화를 위한 예제 준비 (헤더)

by KingCat 2011. 11. 9.
// 메인 Direct3DX 헤더 포함
#include <d3dx9.h>

namespace d3d
{
	// 메인 애플리케이션 윈도우를 초기화하고, Direct3D 초기화 코드를 구현하는 메서드
	// 성공적으로 리턴될 경우 IDirect3DDevice9 인터페이스를 가르키는 포인터를 리턴.
	bool InitD3D(
		HINSTANCE hInstance,
		int width, int height,
		bool windowed,
		D3DDEVTYPE deviceType,
		IDirect3DDevice9** device);

	// 애플리케이션 메세지 루프를 포장.
	// 디스플레이 함수가 될 함수의 포인터를 받는다.
	// 디스플레이 함수는 드로잉 코드가 구현되어있다.
	int EnterMsgLoop(
		bool (*ptr_display)(float timeDelta));

	// 메인 애플리케이션 윈도우를 위한 윈도우 프로시저 선언.
	LRESULT CALLBACK WndProc(
		HWND hwnd,
		UINT msg,
		WPARAM wParam,
		LPARAM lParam);

	// COM 인터페이스를 해제하고 null로 지정하는 템플릿 함수
	template<class T> void Releasse(T t)
	{
		if(t)
		{
			t->Release();
			t=0;
		}
	}

	// 저장고의 객체를 제거하고 포인터를 null로 지정하는 템플릿 함수
	template<class T> void Delete(T t)
	{
		if(t)
		{
			delete t;
			t=0;
		}
	}
}

'Lib > DirectX' 카테고리의 다른 글

DirectX 내부에서의 텍스쳐 합성  (0) 2013.12.11
회전하는 입방체 만들기  (0) 2011.11.09
Triangle 그리기  (0) 2011.11.09
DirectX 기본 코드 구조.  (0) 2011.11.09
Direct3D 초기화를 위한 예제 준비 (구현)  (0) 2011.11.09