3D游戏引擎那些事,你知多少?

CSDN学习
CSDN学习官方账号
博客专家认证
2015-07-03 06:26:16
加精
关于3D游戏引擎的那些事,大家知多少呢?就让姜雪伟老师来为您进行详细讲解。
--------------------------------------------------------------------------------------------
姜雪伟:CSDN学院签约讲师、技术总监、IT高级专家顾问
个人简介:硕士研究生,拥有13年IT实战研发经验,先后就职于网龙、久游、趣游等IT公司担任过主程以上职位,参与并主导过款大型3D网络游戏项目研发运营,目前担任IT公司研发部技术总监。个人主要擅长技术领域:3D引擎架构、计算机图形学、客户端架构、服务器端架构设计、GPU编程等技术,个人拥有多项软件著作权。
参与项目:《魔域》MMORPG,《地下城守护者Online》MMORPG、《神仙岭》MMORPG、《全程热舞》3D休闲类移动端手游、《战隋唐》3D横版移动端手游等上线项目。
授课风格:贴近实战,针对性强。
--------------------------------------------------------------------------------------------
注:近期开设了3D游戏引擎实战班http://edu.csdn.net/training/3d-15-1 ),4个月令你战斗力极速飙升!本课程只限周末开班,共15周,每周都有课后练习。

优惠福利:2015年7月15日前报名免费赠送价值2000元的MDCC移动开发者大会门票一张+《DirectX 9.0 3D游戏开发编程基础》一本+程序员电子一年刊。


开始切入正题啦!
---------------------------------------------------------------------------------------------
1、为什么要学习3D引擎?

相信大家在开发游戏的时候,大部分人还是局限于游戏逻辑的开发,对于引擎可能大家既感到又熟悉又陌生,熟悉的是经常听人讲,比如市面上比较流行的3D引擎:虚幻3、CryEngine、Unity等等,陌生是因为自己没有去亲身研究。引擎就好比汽车的发动机,汽车是靠引擎发动机的驱动才能行驶,引擎对于汽车非常重要的。同理我们游戏开发也是一样的,如果游戏没有引擎的支持,各种渲染无法实现,这样的游戏可以想象是远远满足不了玩家的需求。目前掌握3D引擎开发的人越来越少,据统计这个缺口数量是相当大的,在大型的IT公司里面占的比重更少,俗话说“物以稀为贵”。

2、学习3D引擎需要掌握哪些知识?

学习3D引擎首先要掌握的基础知识是C++编程,GPU编程比如CG(Nvidia)语言,HLSL(DirectX)语言,GLSL(OpenGL)语言,这些基本的语法要搞清楚,当然你只要学一种语言就可以了,这样有助于你能看懂别人写的的代码。架构方面需要学习一下设计模式,当然不用把23种设计模式都学好,只需要掌握其常用的比如单件模式,工厂模式等。数据结构这个一定需要的,还有数学方面比如矩阵计算,向量计算,以及一些常用曲线算法等。

3、学习3D引擎对游戏开发有何帮助?

有的人可能认为我能写逻辑就可以了,引擎对我来说可有可无,这种想法是有问题的,首先你写逻辑是在引擎的基础上写,其次如果你对引擎一无所知,非常不利于你去深入的理解逻辑开发,相反如果你对引擎有深入的研究,你调用引擎提供的接口的时候可以很清楚的知道其内部是如何实现的,这样有助于写一些引擎的辅助功能,提升自己的编程能力,我以前在网龙的时候,就有一位逻辑程序员在做功能的时候需要增加一些算法编程,他并没有求助引擎组的同事,而是自己写出来了,这本身就证明了他的编程能力,最后我们将其纳入到研发引擎项目组,薪酬和职位同时得到提升。因为在公司里面会写算法或者会GPU编程的人相对来说非常少,如果你掌握了3D引擎开发技术对于逻辑开发更加有利,对于你技能提升帮助非常大。

4、如何去学习3D引擎?

学习3D引擎需要一个由浅入深的过程,首先你要知道最基本的一些3D知识,比如固定流水线,可编程流水线,3D模型,骨骼动画这些知识,然后再利用DirctX或者OpenGL这些图形库做一些基本的Demo,知道程序运行的原理,再尝试自己封装一些算法,一些常用函数,写点功能简单的3D引擎,利用这个引擎做一些小的游戏。最后再研究一下GPU编程比如CG语言的语法,在此基础上学习一些游戏开发中常用的算法比如PSSM实时阴影算法,Bloom算法,四叉树,八叉树算法等,需要大家做一个系统的学习,CSDN学院就提供了一个系统学习3D引擎开发的课程,大家有兴趣可以学习一下。

5、掌握3D引擎技术是否可以进入国内外知名IT公司?

目前各大游戏公司比如网易,腾讯,EA等国内外大型IT公司,都非常缺3D引擎或者图形学引擎开发人员,开出了非常诱人的薪水和待遇,从中可以看出目前游戏市场对于这类人才需求还是非常紧缺的。这正是一个学习3D引擎开发的好机会,俗话说,“机不可失,时不我待”。

6、学习3D引擎是否有助于你向更高的职位发展?

目前随着IT业的高速发展, 特别是硬件地方发展,对于游戏品质的提高也是必须的,而游戏品质就需要3D引擎的技术支持,可见3D引擎的重要性,如果你掌握了这些核心技术,就等于掌握了游戏产品开发的核心技术,这必将得到公司的重用,你的职位也会随着你技术的提升而提升。

看完以上内容,是不是收益匪浅啊!赶紧来为姜雪伟老师点个赞吧!
...全文
6400 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
aerfcvgy 2015-10-27
  • 打赏
  • 举报
回复
这样的科普文有助于我找到方向,很好啊
xusir98 2015-07-14
  • 打赏
  • 举报
回复
JamesAtCD 2015-07-10
  • 打赏
  • 举报
回复
想学,但是没钱。
hhwwkk2015 2015-07-10
  • 打赏
  • 举报
回复
听专家讲座。
  • 打赏
  • 举报
回复
路过
antiMagic123 2015-07-09
  • 打赏
  • 举报
回复
xusir98 2015-07-05
  • 打赏
  • 举报
回复
豬哥 2015-07-04
  • 打赏
  • 举报
回复
up
引用 1 楼 line_us 的回复:
支持专家讲座。
引用 2 楼 dingtieruanjian 的回复:
不错 顶一个 关注中 6004346
line_us 2015-07-03
  • 打赏
  • 举报
回复
支持专家讲座。
随着智能手机移动嵌入式平台硬件性能的不断提升,3D游戏应用也逐渐普及开来。《Android 3D游戏开发技术宝典:OpenGL ES 2.0》结合作者多年从3D游戏应用开发的宝贵经验,全面介绍了与Android平台相关的必知必会的基础知识及大型完整3D案例,讲解上由浅入深,循序渐进,起点低、终点高,既适合初学者学习,也适合有一定基础的读者进一步提升之用。另外,由于OpenGL ES 2.0的着色语言通用于各种移动嵌入式平台,因此,《Android 3D游戏开发技术宝典:OpenGL ES 2.0》中与着色器开发相关的60%左右的内容还可供iPhone、Windows Mobile、MeeGoo等平台的开发人员参考。 全书共22章,其中第1章与第2章为Android平台相关的一些基础知识;第3章~第10章介绍了基于OpenGL ES 2.0进行3D应用开发的一些必知必会的基本知识;第11章~第15章介绍了一些高级特效的实现方法;第16章~第17章介绍了3D游戏开发中相关的一些物理、碰撞检测知识以及常用的3D物理引擎JBullet;第19章介绍了3种人机交互的高级技术;第20章~第22章给出了3个完整的大型3D游戏案例,总代码量接近6万行。同时为了便于读者的学习,《Android 3D游戏开发技术宝典:OpenGL ES 2.0》附赠的光盘中包含了书中所有案例的完整源代码,同时给出了最后3个完整大型3D游戏案例的讲解视频,最大限度地帮助读者快速掌握相应的开发技术。 《Android 3D游戏开发技术宝典:OpenGL ES 2.0》适合Android程序员、游戏开发者及Android爱好者学习,也可以作为相关培训学校和大专院校相关专业的教学用书。
本书为unity的入门书籍,而且是中文版本的,非常适合刚刚接触unity的同学参考学习。 Unity3D Unity3D 是一个让你轻松创作的多平台的游戏开发工具,是一个全面整合的专业游戏引擎。 =============================================================================== 特色 综合编辑 通过 Unity 简单的游戏制作者界面,你可以完成任何工作。这些为你节省了大量的时间。 图形动力 Unity 对 DirectX 和 OpenGL 拥有高度优化的图形渲染管道。 资源导入 Unity 支持所有主要文件格式,并能和大部分相关应用程序协同工作。 一键部署 Unity 可以让你的作品在多平台呈现。 Wii 的发布 Unity 让业界最流行的游戏平台软件更容易开发。 iPhone 发布 Unity 让革命性的游戏开发降临革命性的设备。 着色器 Unity 的着色器系统整合了易用性、灵活性和高性能。 地形 低端硬件亦可流畅运行广阔茂盛的植被景观。 联网 从单人游戏到全实时多人游戏。 物理特效 Unity 内置的 NVIDIA®PhysX® 物理引擎带给你生活的互动。 音频和视频 实时三维图形混合音频流、视频流。 脚本 Unity 支持 3 种脚本语言: JavaScript , C# , Boo 。 Unity 资源服务器 Unity 资源服务器是一个附加的包括版本控制的产品。 光影 Unity 提供了具有柔和阴影与烘焙 lightmaps 的高度完善的光影渲染系统。 文档 Unity 为你提供逐步的指导、文档和实例方案。 =============================================================================== Unity 3 代表了一个质的飞跃 —— 内置的光照贴图( lightmapping ) 、遮挡剔除( occlusion culling )和调试器。编辑器经过彻底革新,让你可以获得卓越的性能体验。不可思议、无法 阻挡的产品已经看到了曙光。 =============================================================================== Unity 是一款跨平台的游戏开发工具,从一开始就被设计成易于使用的产品。作为一个 完全集成的专业级应用, Unity 还包含了价值数百万美元的功能强大的游戏引擎。 Unity 3 作为一个游戏开发工具,它的设计主旨就是让你能够创建令人惊讶的游戏。如 果你之前尝试过 Unity ,请查看 Unity 3 都做了哪些更新。如果你是第一次尝试,那就好好看 看吧,看 Unity 都能为你带来什么。 Unity 作为一种开发环境,可让你脱离传统的游戏开发方式,以一种更简单的方式专注 于你的游戏开发。开发网络游戏、移动游戏、单机游戏, Unity 都能完全胜任。 =============================================================================== 重大更新 统一的编辑器 随着 Unity 3 一个编辑器就可以支持所有平台,多平台开发时代已经来临。你想开发 iPhone 、网络和 Xbox 360 游戏吗?没问题。你所要做的,只是在编辑器中选择使用哪一个 平台来预览你的游戏作品。 =============================================================================== 延迟渲染 在 Unity 3 中最突出的就是先进的延迟照明系统。现在,只需要一点微不足道的性能损 耗,你就可以在你的场景中创建几百个点光源。由于延迟灯光使用了 G 缓冲器,因此我们 对它们进行了开放,使得你可以重新利用它们来获取大量的其他高端图像效果,而没有额外 的性能损失。 =============================================================================== Beast 光照贴图 Unity 3 带来了行业最顶级的光照贴图技术: Beast 。 Beast 被使用在《镜之边缘 》 ( Mirror's Edge )和《杀戮地带 2 》 ( Killzone 2 )中,通常每个 Beast 授权主题都会花费你 10 万美元以 上,但集成到我们的 Unity 3 中却是完全免费的。使用 Beast 光照贴图可呈现物体的即时动 态光影互动效果,当物体接近时, Unity 会无缝的调整光线,使你观察到阴影和凹凸细节。 =============================================================================== 镜头特效 我们提升了 Unity 3 在游戏中的后效表现。你可以在《杀戮地带》和其他游戏中大量看 到 Unity 的专业后效表现。我们提供了光羽、高品质景深、内部镜头反射、轮廓线和深度感 知颜色校正,以及更多。 略。。。

1,160

社区成员

发帖
与我相关
我的任务
社区描述
在CSDN学院遇到的问题反馈及对学院的改进建议等。
社区管理员
  • 软件培训社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧