Irrlicht 1.7 实时3D引擎初学者教材 会教你掌握使用Irrlicht创建2D或者3D游戏应用的所有有用的东西。从正确安装开始,一步一步部署。
从安装开始,这本书将带领你走一遍基本模板应用,使用网格(mesh),创建遮罩(overlays)以及用户界面(UI)。然后就是数据类型(data type)、节点(node)、场景(scene)、摄像机(camera)、光照(light)以及粒子系统(particle system)。接着你将学会一些更高级的概念,比如处理数据(data)、文件(file)以及着色器(shader)。然后通过最后的阶段——部署——在附录中。
这本书是一本按部就班的教程,让初学者从一个简单的高度开始学Irrlicht,然后逐渐从简洁明了的代码例子、一定量的游戏demo中学会更高级的东西。
这本书包含了什么
第一章:安装Irrlicht。展示了如何获取并且跨平台安装Irrlicht,如Windows、Macos以及Linux。
第二章:创建一个基础模板应用。解释了如何使用不同的集成开发环境(IDE)部署和创建一个基础的Irrlicht应用,如Microsoft Visual Studio、Xcode、Code::Blocks等等。
第三章:载入网格。展示了如何将3D网格添加到我们的应用中,用上材质,并且使其有动画。
第四章:遮罩以及用户界面。探索Irrlicht的2D能力,创建图形化用户界面(GUI),载入以及渲染2D图片。
第五章:理解数据类型。提供了C++模板的入门,还有一些数学概念,比如说向量(vector)。
第六章:场景管理。介绍如何使用CopperCube这个Irrlicht可视的3D场景编辑器。它能使用于免费以及商业用途。
第七章:使用节点——Irrlicht引擎的基础对象。解释了Irrlicht中的节点是什么,如何让动画器(animator)做一些基础动画。
第八章:摄像机管理。展示了如何使用摄像机场景节点,也涉及了一点点创建简单地形来让摄像机走一遍。
第九章:点亮场景。介绍了光照概念、材质、阴影,以及使用CopperCube、IrrEdit。
第十章:使用粒子系统创建炫丽的效果。教你如何使用可视编辑器或者代码实现粒子系统。
第十一章:处理数据和文件。解释了如何保存和载入游戏相关的数据文件,比如玩家存档。
第十二章:在Irrlicht中使用着色器。介绍了图形渲染管道的工作原理以及着色器的实际使用。
附录:部署出一个Irrlicht应用。解释了打包一个跨平台Irrlicht应用的步骤以及依赖关系。包含Windows平台、Mac平台和Linux。
阅读本书需要的东西
你需要有C/C++的实践和理解,一个能跑样例代码的编译器。你的电脑需要一块能跑3D游戏的显卡(DirectX和OpenGL)。我们会以在不同的平台部署安装Irrlicht开始,所以你并不需要事先安装好Irrlicht引擎。
本书的阅读对象
如果你有一定的C++技能,并且对学习如何用Irrlicht 2D/3D应用非常感兴趣,那么这本书就是为你而写的!实际上,阅读本书之前并不需要你对有Irrlicht任何的了解。
约定
本书里,你会看到一些经常出现的标题。
为了给出清晰明了的如何完成一个过程或者任务的指令,我们使用:
是时候行动了 —— 标题
- 步骤1。
- 步骤2。
- 步骤3。
这些指令经常需要一些额外的解释,所以它们经常还会跟着:
喵~刚刚发生了什么?
这个标题将会解释你刚刚完成的指令或者任务都干了些什么事。
你也会看见其他一些学习目标在书中:
快回答快回答 —— 标题
这里会有一些简短的选择题,帮你测试下自己到底回了没。
来一个吧,伙计 —— 标题
这给你一个挑战练习,以及一些让你实验自己刚才所学的内容的点子。
你还能看到一些与平常文字风格不同的文字。这里有几个例子以及它们的含义。
行内代码将如引号里所示:“我们载入我们的网格文件,并放在一个 IMesh
对象中”。
如果是代码块的话:
if(node)
{
node->setMaterialFlag(EMF_LIGHTING, false);
node->setMaterialTexture(0, driver->getTexture("sydney.bmp"));
}
新的东西和重要的词将会加粗。你在屏幕上的菜单或者对话框中看到的字,在本书中将这么写:“点击 Add Images 来添加图片”。
Note: 警告或者重要的注意事项将在这个引用框中。
Tip: 提示以及小技巧在这个引用框中。
读者反馈
我们非常欢迎读者对我们的书进行反馈。让我们知道你对这书是怎么想的——喜欢哪些地方以及不喜欢哪些地方。读者反馈对于我们来说非常重要。
如果给我们发送一般的反馈,只需要简单的发送一封邮件到 feedback@packtpub.com,然后在邮件标题中提及本书的名字即可。
如果你需要或者想要我们出版一本书,在 www.packtpub.com 给我们以 SUGGEST A TITLE 为标题给我们留言,或者发送邮件到 suggest@packtpub.com。
如果你有一个非常擅长的主题,并且也对写作或者贡献一本书非常感兴趣,请参考我们的作者向导:www.packtpub.com/authors。
用户支持
现在你是一本 Packt书 骄傲的主人了!我们将为你提供了一系列的东西来帮助你获得你买本书的最大价值。
下载本书的样例代码
你可以下载你通过官网账号买的所有 Packt书 中的样例代码。如果你是在别处买的书,你也可以访问 http://www.packtpub.com/support 来注册一个账号。
勘误表
即使我们非常小心地勘误我们的内容,错误总是避免不了的。如果你找到了我们书中的错误,有可能是文章中的,也有可能是代码中的,我们会非常高兴你报告了我们。这么做的话,你拯救了阅读本书的其它读者们!如果你找到任何错误,请访问 http://www.packtpub.com/support ,选择你的书,点击 errata submission form 连接,然后进入详情界面。一旦你的勘误被验证了,你的提交将会被接受,并且上传到我们的网站,或者被加到任何已经存在的勘误表中。所有的已存在勘误表都可以在 http://packtpub.com/support 中被找到。
问题
你可以联系我们——questions@packtpub.com。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。