出于对游戏开发的兴趣,最近想借本书练手。

找到本叫《C++图形与游戏编程基础》的书,该书从头到尾使用DarkGDK库,底层代码全被封装起来了,所以程序看上去很好很强大的样子。反正也没指望这本书能帮我解决DirectX或者OpenGL的学习问题,所以就算只是练练程序逻辑也不错。

于是去官网下载了DarkGDK,蛋疼的问题来了,我配了半天都没能弄出个Hello World。

官方建议搭配的开发平台是Visual Studio 2008,之前机子里装了2010,既然是更高版本应该没大问题才对。另外DarkGDK依赖DirectX 9.0 SDK,所以还要装对应的版本才行。之前装过DirectX June 2010,以为没问题,于是开始安装DarkGDK,有几百MB大。

.................遇到的麻烦很多的.................

1、启动安装界面提示需要VS2008支持,问我是否现在去下载。一开始没细看,于是点了是,安装自动退出了,然后自动打开浏览器到微软的Visual Studio产品下载页(现在已经变成VS2010了)。以为安装好了,一激动到处找,没找到。又点安装包,仔细看了下MessageBox才知道要按“否”才能继续装。

2、装好了后我先检查了系统环境变量,好像没有自动帮我创建起来。于是自己创建了两个(Include 目录和 Lib 目录)。

3、打开VS开始创建项目,修改配置包含了Dark目录文件,然后开始写简单测试代码。报错,找不到ddraw.h。我马上跑去DirectX SDK目录看,果然没有= =。之前听闻DirectX到d3d之后变化比较到,DirectDraw据说是被并入d3d中了,不过毕竟对此了解不多,也不知道直接修改调用文件的代码改到d3d行不行(担心接口函数变了)。找了下负责库调用的代码,结果没找到。

4、到网上求助,结果根据建议下载了DirectX August 2009版本,ddraw.h倒是找到了,不过编译程序继续报错,提示dxerr9.h找不到了(这厮真麻烦...)。查了资料发现是新版本被改成dxerr.h了,我郁闷直接把2009版的DirectX SDK里的dxerr.h改成了dxerr9.h,不再报这个错误了。出现了新错误,无法打开strmbasd.lib文件,我无语,找了一遍DX目录,没有这个文件,我不了解它是哪来的。网上说要自己手动编译什么BaseClass的(DX目录下),我没找到这个文件。担心是DX版本问题,于是根据搜集来的信息下载了DirectX SDK August 2007版本(一下子电脑里出现了3个DX SDK ╮(╯▽╰)╭)。还是没找到,一阵郁闷之后去CSDN直接下载过来用,继续配置包含项。

5、以为都没问题了,再编译,这次没提示找不到文件。但提示:error C2061: 语法错误: 标识符“__RPC__out_xcount_part” ,查资料发现是Dark和WinSDK冲突,要修改目录包含顺序才行。于是把包含WinSDK的语句提前。

6、再次编译的时候出现找不到程序入口点的问题...项目配置里倒是有这项设置,不过配置不来了。这时候想到了官方提供的Dark升级包,下下来解压后在Lib里找到VS9和VS10两个文件,Include也一堆,我把Include中的覆盖了以前版本的,然后把Lib并入以前的文件夹。再次更新项目配置,还是不能解决问题。

7、网上关于DarkGDK的中文资料还真是少啊,事实上英文资料也不多...要不就将就着看了。貌似都没什么人用啊。无奈之下只好求助官方为VS08提供的项目模板文件,我捣鼓了几下没成功,10好像用不起来。-_-|||

8、折腾下来耐心耗去大半,使出绝招准备直接在它给的Demo基础上写,结果运行不起来....报出来的错误还很神奇。。。表示看不懂,也没什么找到什么靠谱的资料。(╯﹏╰)

总结:这丫太蛋疼了...等哥配好的时候菜都凉了,还有啥兴致做游戏哟~~

VS08是懒得装了,CSDN上找到了Dark对VS2010的补丁包,明天再试试,唉不行哥自己封装DX去...

可能有用的资料:

库冲突:http://blog.csdn.net/highyyy/archive/2011/01/16/6144825.aspx

书译者的博客:http://transbot.blog.163.com/blog/static/54213961200992302529265/

一个Dark写的五子棋成品:

http://hi.baidu.com/kingkongwithglasses/blog/item/5a92142cb3480cfd8a13998f.html

VS2010解决Dark问题:http://blog.csdn.net/swc342032437/archive/2011/05/14/6419256.aspx

DarkGDK  VS2010补丁:http://download.csdn.net/source/3277981

DarkGDK的杯具体验相关推荐

  1. 程序员的饭碗和杯具 .

    你有没有这样的经历? 在需求阶段搞得很复杂,需要各种各样的功能,然后系统设计的时候,想用这个设计模式,那个架构,等等,总是想把自己的系统搞得功能强大,灵活性好,可扩展性好等等,有时候为了照顾用户体验加 ...

  2. 杯具,知名游戏的源码丢了;iOS 11 第三个开发者测试版发布

    (点击上方公众号,可快速关注) 参考:开源中国.腾讯.solidot.cnBeta.IT之家等 0.杯具!<冰风谷 II>的源代码丢了! 开发了加强版 <博德之门>和<异 ...

  3. 【linux】ubuntu14.04升级dbus到1.13.8,杯具了,无法进入桌面

    一.问题描述 在ubuntu14.04中安装了Qt5.12,启动QtCreator报错,需要高版本的dbus. 将dbus升级到1.13.8后,杯具了,无法进入桌面 二.尝试解决 1.尝试恢复之前的版 ...

  4. 杯具,丢失了一部分邮件

    异常的倒霉啊,在Ubuntu下突然收不了邮件了,报错exchange服务器拒绝连接,好好的,抽风了-压根没改过东西,我使用的是Evolution软件- 咨询了下IT,说是要设置为POP3方式进行邮件的 ...

  5. 程序员界大杯具:蜗居中的小贝是搞C++ 的 !

    据网友提供的<蜗居>第24集3:30秒截图,有理由相信小贝是搞 C++ 的. 桌子上那本书放大看是<大规模Cpp程序设计>,为无数想为 cpp献身的人士叹惜呀.搞了一辈子C++ ...

  6. Mozart Update 1(杯具额…)

    万恶的德国电信终于发布更新了 手机插电脑,提升先更新ZUNE- 更新完毕,开始更新手机- 一眨眼来到第六步,重启手机 重启后开始安装驱动 驱动安装完成- 开始更新- 再次重启- 重启后,杯具了- 卡在 ...

  7. 杯具的无线鼠标安装记

    杯具的无线鼠标安装记        下午要个手术室安装无线鼠标,进趟手术室要换衣服,裤子,帽子口罩,很是麻烦,所以我在外面把无线鼠标都拆开了,把无线鼠标的发射接收器和USB延长线连接起来了,但是我犯了 ...

  8. 人生就像一张茶几,摆满了各种杯具/洗具/餐具!

    人生是一张茶几,上面摆满了杯具."如果你看到这句话感到一头雾水不知所云,以为是在说锅碗瓢盆的事,那只能用"杯具"和"餐具"形容你2009年的网络生活. ...

  9. [转]人生就像一张茶几,摆满了各种杯具洗具餐具

    人生是一张茶几,上面摆满了杯具.如果你看到这句话感到一头雾水不知所云,以为是在说锅碗瓢盆的事,那只能用"杯具"和"餐具"形容你2009年的网络生活.       ...

  10. 杯具”箴言成网络流行语

    杯具"箴言成网络流行语 最近流行"杯具"说,听到bad news的时候,大家纷纷感慨,踊跃比喻:我的人生真是一个"杯具"啊--于是"杯具&q ...

最新文章

  1. C++中对Mysql的操作函数可以参考以下blog中的内容
  2. 推荐40个优秀的免费CSS工具
  3. UML之一综合设计例题
  4. SAS入门(一)理论篇
  5. mysql获取某个最大的值的一行数据_某一字段分组取最大(小)值所在行的数据
  6. nmap工具进行端口扫描
  7. word行距设置教程
  8. Bypass UAC 提权
  9. 虚拟直播需要哪些设备?如何搭建虚拟直播团队?
  10. Linux下脚本编写局域网扫描工具
  11. SQLStudio下载
  12. JDBC(powernode CD2206)详尽版(内含教学视频、源代码、SQL文件)
  13. 技术项目 - Linux网卡中断使单个CPU过载
  14. 计算机操作系统虚拟内存管理
  15. 网吧计算机无法远程,win7网络711无法加载远程访问解决方法 | 专业网吧维护
  16. java 保存file_java保存文件
  17. html添加用户与删除吗,HTML页面元素的添加与删除
  18. eclipse+gcc STM32开发环境搭建及调试
  19. 小程序毕业设计 基于微信汽车租赁租车小程序毕业设计开题报告功能参考
  20. 【推荐系统】召回离线评估指标Hit Ratio

热门文章

  1. MicroDicom viewer(Dicom格式看图软件)v2.9.2官方版
  2. xp计算机配置项在哪儿,电脑在哪里设置自动关机xp系统
  3. arduino并口屏_Arduino教程 12864绘图功能库的使用(并口通信,仅适用ST7920)
  4. 虚拟仿真实验室 服务器,中国美术学院|虚拟仿真实验教学共享平台
  5. 欧美古风格html网站模板
  6. 传染病模型SIS及相应的matlab代码
  7. android切图双数,UI切图与命名规范
  8. Xutils-Android中数据存储和网络传输的框架
  9. Linux安全模块(LSM)入门及Yama源码分析
  10. hprose php用户手册,07 Hprose 服务器事件