D3D游戏开发1之准备

开始,编译器的正确配置

第一步:

安装DirectX SDK(June 2008)和Microsoft Visual Studio 2005


 

第二步:

设置DirectX和Visual Studio 2005关联:
<1> 打开Visual Studio 2005,将D3D需要的Lib 文件目录在链接器中指定路径。具体步骤是:工具->选项->项目和解决方案->VC++目录,在右边“显示以下内容的目录”中选择“包含文件”,加入directx中的Include目录,我电脑上的该目录为D:/program files/directx9/Include。添加完Include头文件后,再

选择库文件,加入lib文件,我电脑上的该目录为D:/program files/directx9/Lib/x86
<2> 打开sdk的sample里面的一个例子,打开时打开.sln文件,引用几个相关的lib文件,具体步骤是:项目->属性->配置属性->链接器->输入,在附加依赖项里面加入下面几个lib文件:

d3dxof.lib

dxguid.lib

d3dx9d.lib

d3d9.lib

winmm.lib


 

第三步:

设置好后,就可以执行程序了,调试->开始执行(不调试)。


 

注:若出现打不开预编译头文件的错误,就如下设置:项目->属性->配置属性->C/C++->预编译头,右边第一项“创建/使用预编译头”选择“不使用预编译头”

 

 

接着

3D编程概念

可以概括为四个阶段

第一阶段:初学者阶段。
这个阶段主要是熟悉3D图形学的基本原理,和基本api的使用。
特别是对于空间的变换,矩阵的原理要有非常清楚的认识。
能够用简单的资源,做一个简单的demo,基本上就是达到了。
这个阶段比较简单,基本上每个人都可以达到,学习方法也很简单,就是看书,看demo,写代码。
时间周期大概1年。

 

第二阶段:进阶阶段
过了第一个阶段,一般人会走两条路。一种人会选择直接学引擎,开发游戏。另一种人,会选择先学场景管理和高级渲染。
这个视每个人的目标和爱好不同有所不一样。
做好demo后,就会想着怎么让效果更好,于是就学了很多高级渲染,比如阴影,法线贴图,HDR,反射折射等。
做了很多效果后,发现效率低下,于是就写一些场景管理方案。
能够基本实现场景管理和一些高级效果,基本上这个阶段就到达了。
国内大部分3D程序在这个阶段。
这个阶段要难点,自学达到需要一些毅力。如果你在公司里做,有人指导,也有测试资源,那会容易很多。
这个阶段的瓶颈在于没有经历过非常复杂的场景和效果,对于3D认识还是比较孤立的。不过已经打下了良好的基础了。
这个阶段应该也都开始熟悉一款引擎了。
时间周期每个人差别很大,1-2年左右。

第三阶段:3D成熟阶段
当第二阶段学得很好的时候,就会觉得自己像个高手了。有的人开始自己设计开发3D引擎了。
当发现,自己设计的场景管理和渲染都很不错的时候,可是效率还是不尽如人意。
当效果复杂,每帧都需要多遍渲染场景的时候,就发现了,原来还是做了很多重复的事情,以及占用了很多重复的资源和带宽等。
这个时候会静下心来,好好想想场景系统和逻辑该怎么设计才能效率最高,没有重复计算。
了解硬件的资源管理方式,结合自己的需求,解决资源的不当占用和带宽的随意浪费的情况。
深入熟悉硬件,彻底了解显卡流水线的特性,充分利用流水线的特性进行优化,这个时候对dx/opgl api也已经非常熟悉了,甚至一个枚举参数都了解它背后的意义。对于图形的debug,也非常熟练了,一般的渲染问题很快就解决了。
这个时候应该知道根据不同的游戏类型构建不同的场景系统了,即使是设计wow,crysis这种场景也可以,知道该怎么设计材质系统,以及effect 框架了。
这个阶段是最煎熬的阶段,也是最开心的阶段。
成长情况更是差别巨大,环境应该是至关重要。
大部分引擎其实在效率上都没完全达到这个程度。
时间周期1年以上,上不封顶,很多人估计都到不了这个层次。如果人够聪明,基础够好,环境也好,1年就够了。
这个阶段的一个特征,图形已经很简单了,不想再说啥了。

第四阶段:达人阶段
第三和第四阶段也许没有明显分界线。但有点是肯定不同的。
第三个阶段还是花很多时间在学习摸索,到第四个阶段,就是在寻求解决方案了。
更关注创作了。也许他觉得市面上没有让他非常满意的引擎,至少很难找到适合中国国情的引擎。
也许他会带着一帮小弟一起做引擎,也许是做游戏。
这个阶段技术已经不是唯一追求的目的了,还有很多很多其他的方面他会关注。
因为他的目的是让整个社会承认他的价值,明白一点只有技术是不够的。
这个阶段特征我也不是很清楚,无法一概而论,国内我只见过几个人达到或者超越了这个阶段。

 

 

好好向这个四个阶段进发吧!。。。。总有一天成功的。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值