OK,从今天开始

      开头都是废话,就不占太多位置了,今天开始正式学习Direct3D并且记录学习过程。说是学习Direct3D,其实是从C++开始学起,以前有过的那些C开发知识也许能帮到自己,也许会害了自己(让人不能踏踏实实的学),且拭目以待吧。

1.Direct3D的实现原理
    Direct3D与显卡的交互通过一层叫做称为硬件抽象层(HAL,Hardware Abstraction Layer)的指令集,HAL由显卡制造商实现,由Direct3D调用。不同显卡实现的不同HAL表明了该显卡是否支持Direct3D中的某个功能,或者Direct3D的某个版本。故市场的显卡有所谓的支持DirectX9、支持DirectX10之说。
    部分Direct3D功能如果HAL中没有实现(或者说显卡不支持),Direct3D将使用软件模拟的方式来实现。但是某些高级特性如果HAL中没有实现,程序在调用Direct3D时将会出错。因此一个稳健的程序需要在使用这些功能前检查一下设备是否支持。

2.C++知识
    使用Direct3D进行开发时,创建的项目根据需要,应该在附加依赖项中加入Direct3D程序需要用到的d3dxof.lib、dxguid.lib、d3dx9d.lib、d3d9.lib等相关库。但是找的几本入门教程中貌似都没有提及这一点。也许他们认为所有去学习Direct3D开发的都已经是 C++ 的熟手,但是这是他们一厢情愿的想法。至少我就是个例外。
    对 Widows 下 C++ 的程序入口是 WinMain 很理解。但是打开第一次示例程序,却为它使用 wWinMain 做程序入口而百思不解。Google 一下才找到让我满意的答案:如果字符集使用Unicode。那么程序的入口就是 wWinMain 了。看来基础不行就是一种悲哀。

3.数学知识
     向量、左手坐标系、向量计算、向量矩阵....没脸没皮点,我自认为自己数学方面的悟性还是不错的。不过需要理解记忆的概念似乎还是多了点。等我全部弄熟了再去学习Direct3D,怕我自己又要犯耐性不好的毛病了。放一放吧,都说一颗红心两手准备,咱这次来个一个目的、三路并进。数学、C++、Direct3D一起学习。对了,还要算上每天写日记,神呀,可怜可怜我这将近170斤的胖子吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值