我对DX11的理解和简化框架与快速游戏制作(续5)
来源:互联网 发布:什么是一级域名 编辑:程序博客网 时间:2024/06/02 13:04
先来测试下是否成功建立了DX11的设备和显示缓冲。
先创建个新的项目。把项目的目录选项的包含目录添加上面提到的一些文件的位置。
添加个“main.ccp”文件到当前项目。
#pragma once
#include "DX.h"
#include "DXView.h"
Device device;DXView gdevice;
long WINAPI WndProc( HWND hWnd, UINT uMsg, WPARAM wParam,LPARAM lParam)
{
gdevice.HandleMsg(uMsg,wParam,lParam);
if(uMsg== WM_CREATE)
{
device.Create();
gdevice.Create(device,hWnd,4);
gdevice.frameRate=60;
return 0;
}
if(uMsg== WM_CLOSE)
{
device.Dispose();
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hWnd,uMsg,wParam,lParam);
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
HWND hwnd;
WNDCLASS wc= {
CS_HREDRAW | CS_VREDRAW,WndProc,0,0, hInstance,0,LoadCursor(0, IDC_ARROW ),0,0,NAME};
RegisterClass( &wc );
hwnd = CreateWindowEx(0,NAME,TITLE,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT, CW_USEDEFAULT, 880, 600, NULL, NULL, hInstance, NULL );
ShowWindow( hwnd, nCmdShow );
UpdateWindow( hwnd );
MSG msg = {0};
while( WM_QUIT != msg.message )
{
if( PeekMessage( &msg, NULL, 0, 0, PM_REMOVE ) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}
else gdevice.Render();
}
return msg.wParam;
}
添加个“DXView.h”文件到当前项目。
struct DXView:SpliteDevice
{
DXView(){}
void Draw() { Clear(Red); }
运行后你会得到个红色的背景,3D的元素后面会提到。并逐渐丰富DXView的内容。
可以看到,把大量重复输入和内容的动作完全压缩在预置类中,每个分类又和轻巧和高效。可以极大的提高程序的可读性和稳定性,任何一个部件出问题 VC会把指针自动跳转到出错的类中,避免了在一堆相近的指针中反复翻查出错的部分。
}
- 我对DX11的理解和简化框架与快速游戏制作(续5)
- 我对DX11的理解和简化框架与快速游戏制作(续)
- 我对DX11的理解和简化框架与快速游戏制作(续1)
- 我对DX11的理解和简化框架与快速游戏制作(续2)
- 我对DX11的理解和简化框架与快速游戏制作(续3)
- 我对DX11的理解和简化框架与快速游戏制作(续4)
- 我对DX11的理解和简化框架与快速游戏制作(续6)
- 我对DX11的理解和简化框架与快速游戏制作(续7)
- 我对DX11的理解和简化框架与快速游戏制作
- 支持DX11游戏对硬件的要求
- 我对分布式计算框架的理解与设计
- 我对SNS游戏的初步理解
- 我对3d游戏的理解..
- 我对快速排序的理解。
- 探讨3d游戏的制作和我对quake2--java2版本的研究
- 我对O3W框架的理解
- 浅谈我对框架的理解
- 浅谈我对框架的理解
- tilecache
- 专辑:[罗时飞]持续集成及技术交流
- 嵌入式启动过程
- 在Linux中Oracle安装成功后,首次启动使用时,会出现的一些问题总结和解决办法
- ORA-12162: TNS:net service name is incorrectly specified
- 我对DX11的理解和简化框架与快速游戏制作(续5)
- 电脑桌面
- 关于地址总线-寻址空间-IO内存-IO端口理解(s3c2440例)
- 在Linux下安装配置Oracle 11g R2详细过程
- VIM自动缩进
- 网络字节序与主机字节序-科卓培训移动网络开发系列
- 反射
- 机制设计,拍卖(Mechanism Design, Auction)- 资源 - 专家,会议,课程等
- iPhone播放声音文件的例子