资源简介
DirectX D3D 编程最好的学习实例
代码片段和文件信息
#include
//窗口类的名字
LPCWSTR m_applicationName;
//应用程序实例句柄
HINSTANCE m_hinstance;
//窗口句柄
HWND m_hwnd;
//用来判断是否按ESC键按下ESC键,则退出程序
bool bexit = false;
//初始化窗口类,创建应用程序窗口
void InitializeWindows(int& screenWidth int& screenHeight);
//调用初始化窗口函数,以及其它的接口类的初始化函数
bool Initialize();
//处理消息循环
void Run();
//关闭窗口
void ShutdownWindows();
//这两个函数是窗口的回调函数
static LRESULT CALLBACK MessageHandler(HWND UINT WPARAM LPARAM);
LRESULT CALLBACK WndProc(HWND UINT WPARAM LPARAM);
//判断是否全屏,全屏和窗口模式窗口使用不同的创建窗口参数
const bool FULL_SCREEN = false;
//应用程序入口main函数
int WINAPI WinMain(HINSTANCE hInstance HINSTANCE hPrevInstance PSTR pScmdline int iCmdshow)
{
Initialize();
Run();
ShutdownWindows();
return 0;
}
//调用窗口初始化函数和其它一些类的初始化函数
//本例子中,只调用初始化窗口函数
bool Initialize()
{
int screenWidth = 0 screenHeight = 0;
// 初始化窗口
InitializeWindows(screenWidth screenHeight);
return true;
}
void InitializeWindows(int& screenWidth int& screenHeight)
{
WNDCLASSEX wc;
DEVMODE dmScreenSettings;
int posX posY;
// 得到应用程序实例句柄
m_hinstance = GetModuleHandle(NULL);
// 应用程序名字
m_applicationName = L“Engine“;
// 设置窗口类参数.
wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;
wc.lpfnWndProc = WndProc; //指定回调函数
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = m_hinstance;
wc.hIcon = LoadIcon(NULL IDI_WINLOGO);
wc.hIconSm = wc.hIcon;
wc.hCursor = LoadCursor(NULL IDC_ARROW);
wc.hbrBackground = (HBRUSH)GetStockobject(BLACK_BRUSH); //默认黑色窗口黑色背景
wc.lpszMenuName = NULL;
wc.lpszClassName = m_applicationName;
wc.cbSize = sizeof(WNDCLASSEX);
// 注册窗口类
RegisterClassEx(&wc);
// 得到windows桌面分辨率
screenWidth = GetSystemMetrics(SM_CXSCREEN);
screenHeight = GetSystemMetrics(SM_CYSCREEN);
// 根据是否全屏设置不同的分辨率.
if(FULL_SCREEN)
{
//全屏模式下,设置窗口大小为windows桌面分辨率.
memset(&dmScreenSettings 0 sizeof(dmScreenSettings));
dmScreenSettings.dmSize = sizeof(dmScreenSettings);
dmScreenSettings.dmPelsWidth = (unsigned long)screenWidth;
dmScreenSettings.dmPelsHeight = (unsigned long)screenHeight;
dmScreenSettings.dmBitsPerPel = 32;
dmScreenSettings.dmFields = DM_BITSPERPEL | DM_PELSWIDTH | DM_PELSHEIGHT;
// 临时设置显示设备为全屏模式,注意:应用程序退出时候,将恢复系统默认设置。
ChangeDisplaySettings(&dmScreenSettings CDS_FULLSCREEN);
// 设置窗口的左上角位置为(00).
posX = posY = 0;
}
else
{
// 窗口模式:800*600.
screenWidth = 800;
screenHeight = 600;
// 窗口位置左上角坐标位置posx,posy
posX = (GetSystemMetrics(SM_CXSCREEN) - screenWidth) / 2;
posY = (GetSystemMetrics(SM_CYSCREEN) - screenHeight) / 2;
}
// 全屏和窗口使用不同的参数.
if( FULL_SCREEN)
{
m_hwnd = CreateWindowEx(WS_EX_APPWINDOW m_applicationName m_applicationName
WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_POPUP
posX posY screenWidth screenHeight NULL NULL m_hinstance NULL);
}
else
{
m_hwnd = CreateWindowEx(WS_EX_APPWINDOW m_applicationN
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 31232 2013-03-31 21:47 D3D\Debug\myTutorialD3D11.exe
文件 358484 2013-03-31 21:47 D3D\Debug\myTutorialD3D11.ilk
文件 445440 2013-03-31 21:47 D3D\Debug\myTutorialD3D11.pdb
文件 38400 2013-03-31 21:50 D3D\Debug\myTutorialD3D11_2.exe
文件 374208 2013-03-31 21:50 D3D\Debug\myTutorialD3D11_2.ilk
文件 470016 2013-03-31 21:50 D3D\Debug\myTutorialD3D11_2.pdb
文件 32112640 2013-12-05 12:32 D3D\ipch\mytutoriald3d11_9-318d8c42\mytutoriald3d11_9-2d624f1b.ipch
文件 602 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\cl.command.1.tlog
文件 12422 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\CL.read.1.tlog
文件 264 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\CL.write.1.tlog
文件 2 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\li
文件 2 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\li
文件 2 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\li
文件 2 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\li
文件 2 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\li
文件 2 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\li
文件 1402 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\li
文件 2800 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\li
文件 638 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\li
文件 31512 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\main.obj
文件 408 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\mt.command.1.tlog
文件 370 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\mt.read.1.tlog
文件 302 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\mt.write.1.tlog
文件 406 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\myTutorialD3D11.exe.em
文件 472 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\myTutorialD3D11.exe.em
文件 381 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\myTutorialD3D11.exe.intermediate.manifest
文件 40 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\myTutorialD3D11.lastbuildstate
文件 3066 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\myTutorialD3D11.log
文件 220 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\myTutorialD3D11_manifest.rc
文件 560 2013-03-31 21:47 D3D\myTutorialD3D11\Debug\rc.command.1.tlog
............此处省略707个文件信息
- 上一篇:阅览室图书管理软件V8.60破解版
- 下一篇:东北大学linux教学资料
相关资源
- 粒子系统画的心形线
- Microsoft DirectX 8.0
- 20101028 DirectX(粒子系统改)
- DirectX 材质 模型 工具汉化版
- Directx 3D游戏 遥控飞机
- Dark GDK
- 运用DirectX9绘制太阳系
- Introduction to 3D Game Programming with Direc
- Directx12 游戏开发
- directx 10 龙书 中文版
- DirectX3D太阳系
- DirectX.9.0SDK中文版帮助文档
- 屏幕融合软件源码
- Microsoft DirectX SDK (June 2010)
- DelphiX 2000.07.17 For D7 (DirectX)
- DirectX 太阳系
- directX8.0 SDK
- DirectX.Capture ffdshow摄像头录制视频拍照
- 《DirectX特效游戏程序设计》中文版全
- Directx9 SDK
- [未整理]Direct X 11 3D 游戏开发编程基础
- DirectX版半条命MDL文件查看器
- DirectX 9.0 中文版传说中的龙书
- 实现三维图形绘制
- DirectX 龙书源码
- 太阳地球月亮旋转公转自转
- 基于Directx的VC视频捕获源代码.rar
- D3D11_SpecularMap
- directx写的阴影源码
- directx 3D 坦克大战 源码
评论
共有 条评论