- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第1章3D游戏编程入门
第1章 3D游戏编程入门
本章介绍一些基本的游戏编程主题,如游戏循环、2D和3D游戏的差别等。最后将介绍一个很小的3D游戏,以帮助您正确地设置编译器和DirectX。如果读者阅读过我的《Windows游戏编程大师技巧》,可以考虑略读本章,并重点关注最后部分的内容;否则,即使您已经是一个中级或高级游戏程序员,也最好仔细阅读本章。本章主要包括下列内容:
( 简介;
( 2D/3D游戏的元素;
( 游戏编程通用指南;
( 使用工具;
( 一个16位窗口游戏范例:Raiders 3D。
1.1 简 介
本书是我写作的2D和3D游戏编程系列的第二卷。第一卷《Windows游戏编程大师技巧》主要介绍了如下内容:
( Windows编程;
( Win32 API;
( DirectX基础;
( 人工智能;
( 基本物理模型;
( 声音和音乐;
( 算法;
( 游戏编程;
( 2D光栅和矢量图形。
本书是前一卷的续写。但是,即使您没有阅读过前一卷,仍可以从本书获得许多与实时3D图形相关的知识,以更好地进行3D编程。因此,本书将主要适合那些阅读过第一卷且对3D游戏编程感兴趣,或者已经是2D程序员且想从软件和算法的角度学习3D技术的读者。
考虑到这一点,本书将重点介绍3D数学和图形学,而对于与游戏编程有关的内容只作简要介绍。我认为您已经了解了这些内容——如果您还不了解这些内容,建议先阅读《Windows游戏编程大师技巧》或其他优秀的游戏编程书籍,并在计算机上进行练习,以熟悉Windows、DirectX和游戏编程。
另一方面,即使您没有阅读过《Windows游戏编程大师技巧》,且不了解游戏编程,仍可以从本书学习到一些知识,因为这是一本有关图形学的书籍。我们将在每章中逐步建立3D引擎,但是为了节省时间,我们将以《Windows游戏编程大师技巧》中开发的基本DirectX引擎为基础。它将有助于处理2D、声音、音乐、输入等。当然,该引擎是一个DirectX 7/8引擎,而DirectX 8.0以上版本所做的修改使2D编程更困难,因为DirectDraw已被集成到Direct3D中。我们将继续使用DirectX 7/8的接口,但在DirectX 9.0 SDK下进行编译。
注意:本书介绍软件和算法,而不是DirectX,因此将在DOS下编写引擎。只是需要适当的高级图形、I/O和声音层,因此DirectX 8.0+是一个合理的选择。如果读者是Linux用户,该引擎移植到SDL也是相当容易的!
因而,如果您阅读过《Windows游戏编程大师技巧》,将很熟悉该引擎及其函数;否则,可将其视为一个黑盒API(当然其中包括源代码),因为本书将逐步在该引擎中加入3D功能。
不用担心,下一章将介绍整个2D引擎及其结构,您将知道每一个函数的功能;我还将提供一些演示程序,帮助您熟悉使用《Windows游戏编程大师技巧》中创建的基本DirectX引擎。
本书将从一种通用的角度来介绍图形系统。本书的代码将以《Windows游戏编程大师技巧》中创建的引擎为基础,该引擎是以标准的线性寻址方式建立一个双缓存图形系统。
要将代码移植到Mac或Linux平台上,只需要几小时或一个周末。本书的目标是以一种通用的角度介绍3D图形学和数学。DirectX所处的Windows平台是当前最流行的计算机操作系统,因此将以它为基础进行介绍。本书的重点是高级的概念。
我编写过大约20个3D引擎,它们都保存在我的硬盘中。但是在编写本书时,我想随着本书的进度编写一个新的3D引擎,因此是为本书编写一个引擎,而不是编写一本关于引擎的书。本书不是讨论3D引擎,而是介绍如何编写3D引擎。因此,我并不清楚最后将得到一个什么样的3D引擎!实际上,我对于将会看到什么感到非常兴奋。我争取编写一个类似于Quake的6DOF(degree of freedom,自由度)引擎,但谁知道结果将如何呢?您将学习创建Quake引擎所需要的所有知识,但我将重点介绍室外引擎或其他内容—谁知道呢。关键是本书将提供一个学习过程,而不是充满了作者注释的典型代码。我想您很清楚我在说什么!
最后,阅读过《Windows游戏编程大师技巧》的读者可能还会注意到,本书中有些地方与该书相同。实际上,我没有办法一点也不重复前一本书中的内容,而直接介绍3D图形学。我不能假定每个人都购买了《Windows游戏编程大师技巧》,也不能强迫他们去购买。总之,本书的前几章包含一些与DirectX、引擎和Windows相关的内容。
1.2 2D/3D游戏的元素
首先回顾一下视频游戏程序与其他程序的区别。视频游戏是一些相当复杂的软件。毫无疑问,它们是最难编写的程序。的确,编写类似于MS Word之类的软件要比编写星星游戏困难,但编写类
您可能关注的文档
- 测评及评优工作的通知.PDF
- 济南大学2012年学生排球赛.doc
- 济南市历城区王舍人实验中学空调线路改造工程.PDF
- 济南市历城区华山实验小学电脑设备及班班多媒体采购B包(.PDF
- 济州休闲4日或5日京津接送机游全程4花酒店或两晚升级5花.PDF
- 济源中移能节能环保科技有限公司.doc
- 浙大校医院卫生技术高级职务评聘条件.doc
- 浙江华媒教育科技有限公司拟收购股权.PDF
- 浙江古越龙山绍兴酒股份有限公司关于修改《公司章程》的公.PDF
- 浙江嘉化能源化工股份有限公司第八届董事会第一次会议决议.PDF
- 2025至2030中国脐橙行业市场发展分析有效策略与实施路径评估报告.docx
- 2025至2030中国绿色激光标记行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国电解铝行业发展趋势分析与未来投资战略咨询研究报告.docx
- 2025至2030中国自动收费行业运营态势与投资前景调查研究报告.docx
- 2025至2030中国半自动弯管机行业经营方向与未来发展策略分析报告.docx
- 2025至2030中国PS游戏机耳机行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国减震器制造行业发展现状及趋势前景预测分析报告.docx
- 2025至2030中国环境监测行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国石膏板行业市场发展趋势分析与未来投资战略咨询研究报告.docx
- 2025至2030中国个人护理用紫外线过滤器行业项目调研及市场前景预测评估报告.docx
最近下载
- 北师大版数学八年级上册-第二章-实数-复习课件(共31张PPT).ppt
- 2025年井盖市场调查报告.docx
- 河南省社旗县双庄饮用天然矿泉水矿产资源开采与生态修复方案 .pdf VIP
- 沥青路面施工及验收规范GB50092-96.doc VIP
- 商务日语(ビジネス文书の基本).pdf VIP
- 粉末冶金材料工艺及设备课程设计指导书.doc VIP
- NT6000-系统软件使用手册.pdf VIP
- 2025年济南市历城区小升初英语考试模拟试题及答案解析 .pdf VIP
- 7 培土工具来帮忙(课件) 人民版劳动教育二年级上册.ppt VIP
- GB50303-2015 建筑电气工程施工质量验收规范.docx VIP
文档评论(0)