3D游戏引擎技术架构设计
市面上目前流行最广的游戏引擎,在2D领域是Cocos2d引擎,在3D领域是Unity3D。这二者分别占领2D游戏开发市场和3D游戏开发市场,虽然虚幻4也开始发力,引擎代码开源。但是由于它是C++编写的,对于一些初级用户使用起来比较困难,推广起来有点难度。除了上面提到的引擎还有一些开源的3D引擎,比如最著名的是Ogre图形引擎。这些引擎的开发对于开发者来说要求都比较高。在中国各大IT知名公司比如腾讯,网易,巨人,蜗牛,网龙等等,它们都有公司的自研引擎。引擎是游戏开发的最底层技术,而掌握这些技术的人相对来说非常少。但是并不是说对于初级开发者就没机会了,因为对于开发者来说一直开发逻辑,对于自己的提升是非常不利的。这个不利于主要在于两点:一点是对于引擎的接口内部是如何实现的不清楚;二点是对于引擎的整体架构设计一无所知。久而久之,自己与别人的差距会越来越大,能力与薪资是成正比的。对于开发者如何学习引擎或者说如何架构引擎,笔者在这里就给你一一解密。
说到引擎的底层设计,就不得不提两个流水线:固定流水线和可编程流水线。固定流水线通过字面意思知道:“固定”就是按照固定的步骤进行,比如我们要把美术之作的3D模型绘制到PC端的显示屏上或者移动端的显示屏上。它们之间要经历过一系列的矩阵变换。空间中的3D的点都是三维的,但是三维的点无法实现物体的平移,旋转,缩放这些变换所以程序会将三维的点扩展成四维的点。这样通过4X4矩阵实现上述物体的变换,其固定流水线效果图如下所示:
固定流水线是最基本的,作为开发者来说必须掌握的,可编程流水线是基于固定流水线基础上发展起来的,就是把一些矩阵变换放在GPU中进行。掌握了引擎技术对于开发者编写逻辑帮助也是非常大的。笔者利用固定流水线开发了一款游戏,主要内容都收录在了《手把手教你架构3D游戏引擎》电子工业出版社,在天猫,京东等都有销售。书的内容主要是介绍了固定流水线变换中使用的矩阵变换以及利用该流水线实现了一款游戏引擎,在此引擎的基础上开发了一个Demo。非常适合初级开发者,书的编写语言非常易懂。从底层代码编写到引擎架构设计逐一讲解,本书的编写不同于其他书籍的存理论而是实际项目开发。另外附上笔者的个人网站:www.vr3d-edu.com 欢迎访问。
笔者在业余时间喜欢录制视频和编写书籍,在CSDN在线教育,51CTO学院,泰课学院都有视频课程,讲述的都是实战技术,欢迎大家访问。
最后再给读者推荐一本非常实用的技术书籍《Unity3D实战核心技术详解》电子工业出版社 已在天猫和京东等平台发布,书中的技术可以直接应用到项目开发中。书的编写不同以往而是采用理论与案例相结合的方式。
3D游戏引擎技术架构设计相关推荐
- 转:3D游戏引擎技术剖析
转自 http://blog.csdn.net/jbjwpzyl3611421/article/details/12681047 3D游戏引擎技术剖析 分类: Unity3D2013-10-13 1 ...
- 3D游戏引擎入门课程——概述
目录 写在前面 导图 索引 概述 游戏引擎概述 游戏引擎框架概述 功能游戏 游戏引擎中的设计模式 文档链接 写在前面 本专栏内容均为学堂在线慕课<3D游戏引擎架构设计基础>中的内容.个人将 ...
- 《Unity 3D 游戏开发技术详解与典型案例》——1.1节Unity 3D基础知识概览
本节书摘来自异步社区<Unity 3D 游戏开发技术详解与典型案例>一书中的第1章,第1.1节Unity 3D基础知识概览,作者 吴亚峰 , 于复兴,更多章节内容可以访问云栖社区" ...
- 3D游戏引擎架构设计基础 - 学堂在线慕课习题答案
3D游戏引擎架构设计基础 - 学堂在线慕课习题答案 第一单元 第二单元 上完这门课顺便把课后的习题答案整理出来了 第一单元 问题:关于游戏引擎的正确描述是 答案:设计游戏的独立软件 问题:使用游戏引擎 ...
- 3D游戏引擎设计 实时计算机图形学的应用方法 第2版 pdf 带索引书签目录
3D游戏引擎设计 实时计算机图形学的应用方法 第2版 目录 第1章 概述 1.1 图形硬件和游戏发展史 1.2 本书版本与软件发展史 1.3 章节导读 第2章 图形系统 2.1 基础知识 2.1. ...
- 【直播预告】7月18日3D游戏引擎免费公开课答疑,參与送C币!
喜讯喜讯! 为了酬谢广大学员.CSDN学院特推出iOS和3D游戏引擎开发免费技术答疑公开课,让您度过一个充实的暑假~ 參与本次公开课,即有机会获得50C币! 答疑公开课时间:7月18日 晚7:30-9 ...
- 棒!使用.NET Core构建3D游戏引擎
原文地址:https://mellinoe.wordpress.com/2017/01/18/net-core-game-engine/ 作者:ERIC MELLINO 翻译:杨晓东(Savorboa ...
- 几款游戏引擎技术对比
如果只有客户端的话,可以考虑用gamebryo,技术好一点,用ogre也可以,如果规模不大,用unity3d,如果很有钱,要效果很好的,用unreal3,bigworld是带服务器的,如果能力不够,最 ...
- 从《Doom》到《Dunia》 回顾3D游戏引擎发展历程二
Quake III / id Tech 3 就像AMD与Intel,Nvidia与ATI,10年前,游戏引擎的战争主要集中在Quake III(现在被称为id Tech 3)与Unreal之间. 顾名 ...
- 《Android 3D游戏开发技术宝典——OpenGL ES 2.0》.(吴亚峰).[PDF]ckook
图书作者: 吴亚峰 图书编号: 9787115277701 图书格式: PDF 出 版 社: 人民邮电出版社 出版年份: 2012 图书页数: 700-800 [内容简介] 随着智能手机移动嵌入式平台 ...
最新文章
- python制作动图-用Python制作迷宫GIF
- 神经网络与机器学习 笔记—支持向量机(SVM)(上)
- 全球及中国模块化塑料带行业供需调查及产销形势预测报告2021-2027年版
- 选择文字就能选择复选框
- Java——Arrays类操作数组的工具类
- JEECG V3.0版本 (工作流在线定义+UI快速开发库+代码生成器) 全新架构技术,漂亮的界面+智能代码生成+智能工作流
- 12.04 ubuntu 安装微软雅黑的字体
- Mysql:如何使用limit
- 纯js开发android,js开发app_安卓app开发引擎
- vux页面转换html,Vue 初学者使用 Vux 前端开发框架 - 文章教程
- 十二个“一”---十二位胜似亲人的悲情向团体详解
- CISSP-D7-运营安全
- 北京火车订票电话一览
- 【OpenGL基础】|| GLAD配置
- 桌面图标小箭头去除方法
- 2022采用Uni-app开发的多端圈子社区论坛系统
- web的标准网页设计与php课后,web网页设计尺寸规范
- FPGA-出租车计价器的实现
- 通过注册表方式启动和关闭手写输入法(方法适合各种应用)
- 《卓有成效的管理者》阅读心得