定义公用的函数方法 //d3dUtility.h ////////////////////////////////////////////////////////// // // File: d3dUtility.h // Author: hsg (c) All Rights Reserved // System: // 功能:提供通用函数 // ////////////////////////////////////////////////////////// #pragma once #ifndef __d3dUtility_H__ #define __d3dUtility_H__ #include <d3dx9.h> #include <d3d9.h> #include <string> #include <mmsystem.h> //定义名称空间d3d namespace d3d { //定义初始化函数InitD3D bool InitD3D(HINSTANCE hInstance, //[in] Application instance. int width,int height, //[in] Backbuffer dimensions. bool windowed, //[in] windowed(true) or full screen(false). D3DDEVTYPE deviceType, //[in] HAL or REF IDirect3DDevice9** device); //[out] The created device. //定义进入消息Loop函数EnterMsgLoop int EnterMsgLoop(bool (*ptr_display)(float timeDelta)); //定义窗体回调函数WndProc LRESULT CALLBACK WndProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam); //定义模板函数Release(T t) template<class T> void Release(T t) { if(t) { t->Release(); t=0; } } //定义模板函数Delete(T t) template<class T> void Delete(T t) { if(t) { delete t; t=0; } } const D3DXCOLOR WHITE( D3DCOLOR_XRGB(255, 255, 255) ); const D3DXCOLOR BLACK( D3DCOLOR_XRGB( 0, 0, 0) ); const D3DXCOLOR RED( D3DCOLOR_XRGB(255, 0, 0) ); const D3DXCOLOR GREEN( D3DCOLOR_XRGB( 0, 255, 0) ); const D3DXCOLOR BLUE( D3DCOLOR_XRGB( 0, 0, 255) ); const D3DXCOLOR YELLOW( D3DCOLOR_XRGB(255, 255, 0) ); const D3DXCOLOR CYAN( D3DCOLOR_XRGB( 0, 255, 255) ); const D3DXCOLOR MAGENTA( D3DCOLOR_XRGB(255, 0, 255) ); } //类和结构 //---------------------------------------------- struct Vertex { Vertex(){} Vertex(float x, float y, float z) { _x = x; _y = y; _z = z; } float _x, _y, _z; static const DWORD FVF= D3DFVF_XYZ; }; //const DWORD VertexXYZ::FVF = D3DFVF_XYZ; //---------------------------------------------- struct ColorVertex { ColorVertex(){} ColorVertex(float x, float y, float z, D3DCOLOR c) { _x = x; _y = y; _z = z; _color = c; } float _x, _y, _z; D3DCOLOR _color; static const DWORD FVF= D3DFVF_XYZ | D3DFVF_DIFFUSE; }; //const DWORD ColorVertex::FVF = D3DFVF_XYZ | D3DFVF_DIFFUSE; #endif //__d3dUtility_H__
学习Direct3D(二)
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Direct3D Frustum裁剪原理
本文原创版权归 百度 laizhishen 所有,如有转载,请按如下方式显式标明3d206d209cca9c54ac34de4
direct3d float c 优化 面试 -
direct3d
DirectX for .Net procedure 1, install DXSDK https://www.microsoft.com/en-us/download/details.aspx?id=6812 2, goto MS tutorial https://msdn.microsoft.c
microsoft .net desktop v9 前端 数据 数据库 编程语言 -
Direct3D 使用质地
关于使用质地1 创建纹理2 纹理寻址模式3 纹理过滤1 创建纹理 D3DXCreat
d3 寻址 寻址方式 3d 多级
















