Dark GDK 初体验

之前为了这个Dark GDK发过文了,VisualStudio 2010下面配置有点麻烦,最后还是放弃这纠结的配置,去下载VC 2008了。

VC2008下面配置还是很方便的,只要下载DirectX SDK 2007 (August) 然后安装译者博客上的方法配置一下就可以使用向导创建了项目了,编译运行也不会有任何问题,这跟之前那次配置出现各种状况真是大相径庭。唯一要注意的只有一点:DirectX版本有所限制,不能使用比前面提到的这个版本更高的版本,否则会出现一些无法找到库文件的状况。

 

Dark GDK应该定义为一个库,包装了底层操作,为上层开发提供了一套清爽的API。这个库建立在C++语言和DirectX以及windows API基础上,自身并没有提供任何跟游戏引擎有关的支持。

昨天玩了一下午,拿本《C++图形与游戏编程基础》差不多过了一遍,效率问题没有研究过,不过方便确实很方便。做起游戏来速度可能不如使用商业游戏引擎(排除看使用手册的时间的话),不过肯定要比从WinMain或者MFC DialogBase开始建游戏方便很多。而且对于充分利用了多线程技术和DirectX库的DarkGDK项目来说,图形效率上是自然是要比GDI编程高出不少的。

 

这本书是因为只是基础教材,所以都是拿2D编程举例的,自己对3D的知识也的确不是很多,所以做的一些实验基本上也都限定在2D的范围内。2D的游戏做起来其实还是有一个相当清晰的思路,图层显示、用户控制、碰撞检测、声音、定位、区域划分、AI...基本上就这些问题,涉及到一点点简单的算法。我以前用MFC做过几个小游戏练习,即便有了MFC庞大的支持库还是觉得十分的麻烦,况且MFC的开发流程对没了解过它的人一时也不容易适应。而用DirectX SDK开发的时候,又要被那些抽象的接口函数折腾...如果你想快速开发一个游戏,那么注意力基本上会放在游戏逻辑和动画上,如果不断的要处理硬件问题会让人感到非常苦闷。有时候我们自己都会产生把这些底层API封装到一个抽象层上的想法。

 

DarkGDK等于是帮你在硬件驱动和原始API层上铺了一层,让你可以直接从游戏逻辑层开始工作。这当然会降低灵活度(有些功能可能没有相应的API供应,又得从底层写起,这会破坏项目的概念完整性,如果有这方面需求自己最后还是再做一层封装),而且可能连效率都会降低(要看库实现的好不好了)。当然了,对于一些常见的需求可能还是可以满足的。

 

有些问题没能得到很好的解决,比如一些基本的绘图操作,比如画圆、画点,测试的时候没有报错,也没有生效。这可能是对显卡的支持原因,好在游戏一般都用图片为基本元素,不太用这些基本操作。兼容性问题是暴露出来了...

 

另外还有一份英文的文档,写的清晰简洁,特别值得一提的是这个库的API命名我很喜欢,可读性很高。DarkGDK网上能找到的中文资料很少,有什么问题基本上要查找英文资料了,好像还是有个社区在支持这个项目的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值