游戏最吸引人的地方,莫过于它为玩家构建了一个全新的世界。——但有没有人想过,这些丰富饱满的世界是怎样建构起来的呢?又是经过怎样的加工最终呈现在玩家的面前呢?

MG大赛加油包还不够满足大家?

今日份的萌新资源,你不容错过!

就让我们来探索一下3D世界的秘密,

深入到游戏引擎的层面,

从数学原理到实际的画面呈现,

3D入门课,就决定是你啦!

讲师介绍

郑毅 技术中心  软件设计专家

一. 3D开发与游戏引擎的基本概念

3D游戏相信大家都玩过,那一个很重要的问题就来了,游戏引擎是怎样在3D游戏的开发中发挥作用呢?其实,游戏引擎包括了很多个方面,它就像是一个工具包,包括一个核心,以及由核心延展出来的众多工具。

越成熟的引擎提供的工具越是丰富,这可是大家以后制作游戏必不可少的“好朋友”呀~有意向参与游戏研发的同学可要认真听啦。

客户端游戏引擎功能众多,包含渲染、模型动画、粒子效果、网络环境模拟、植被系统、交互系统等。通俗来说,在游戏开发过程中,将各类功能模块拼凑一起,二手手游拍卖便组合成了游戏引擎。而游戏渲染则是3D游戏开发中非常重要的一环,虽然渲染可能只占到总代码的30%,但是它能给用户和玩家带来最直观的体验。这是一个颜值当道的时代,一款游戏的卖相往往能迅速吸引到玩家的注意。

3D渲染另一个重要之处,也是开发者容易忽视的地方——大多数开发者认为其他模块与渲染不相关,例如碰撞、物理、声音模块。但这些模块在制作过程中是与真实环境密切联系的,这就需要开发者对于所生活的三维世界有深刻的理解。运用渲染技术来创建丰富的三维模型,从而构筑出虚拟的三维游戏世界。

有一句话说得好,“在进行游戏3D开发赋能的过程中,可以不会3D代码,但是必须掌握3D渲染的基本原理。”

二.关于3D成像的基本原理

3D游戏需要给玩家身临其境的感受,而人在感知世界的过程中,最敏感的感官先是眼睛,之后是耳朵,最后是感知触觉的双手。因此双眼的成像是玩家最直观的感受。3D游戏的成像与人眼的成像原理相似:将人眼看作是一架摄像机在三维空间里移动,模拟人的移动方式,把在不同空间中的画面投影在屏幕上。就如影像投在视网膜被神经感知一般。这一个过程被计算机反复模拟。

游戏的渲染,其实就是在计算机里模拟人眼成像的过程。首先模拟出三维空间,对虚拟的游戏空间进行模型建立。之后用摄像机来模拟人的眼睛,游戏进行的过程中会根据玩家的行为(如战斗、奔跑、飞行等)移动摄像机的位置,模拟玩家在场景可能发生的所有行为,并记录行为之下所看到的图像,最终呈现在屏幕上。

简单来说,就是一个 Model Space→World Space→Camera Space→Clip Space的过程。现在让我们跟着视频,具体了解下这个变换的过程。

三. 3D成像的渲染过程

对于一个游戏而言,渲染部分主要是显卡而非CPU的任务,因为显卡更适合进行这个任务;渲染是一个运算量非常大,但是并行性很好的一个任务,因此会有专门的显卡并行处理这些任务。

我们刚刚讲了3D成像的基本原理,这些原理在显卡架构下实际要如何应用呢?这就不得不提到“渲染管线”的概念了。渲染管线较为复杂,最开始是元素组装。元素组装将游戏元素数据化,提供给显卡处理。另外,游戏3D世界是由无数三角形构建成的,游戏中的模型坐标即为三角形模型坐标系的顶点坐标,之后参与处理的vertex shader便可以将这些坐标进行灵活转化。渲染管线还涉及到很多单元,同学可以从视频中了解到。

简单来说,这就是显卡工作的流水线,刻画出了渲染的整个流程。

讲师金句:

“掌握了今天这些基本的概念和原理,无论是调用引擎接口、实现引擎功能,还是查找游戏的BUG,思路都能变得清晰许多。

只要基本原理在脑海中,那么定位一些问题什么的,都会方便很多。”

萌新资源 | 3D基础——渲染基本原理介绍相关推荐

  1. 萌新linux的基础笔记

    笔记下载 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 命令 vim vim命令 前言 一个萌新写的linux的基础笔记 命令 ls //查看当前目录文件夹与文件 ...

  2. 超强NLP思维导图,知识点全面覆盖:从基础概念到最佳模型,萌新成长必备资源...

    栗子 发自 凹非寺 量子位 报道 | 公众号 QbitAI 一只萌新,想把自己修炼成一个成熟的NLP研究人员,要经过一条怎样的路? 有个名叫Tae-Hwan Jung的韩国小伙伴,做了一份完整的思维导 ...

  3. 少年三国志鸿蒙符碎片在哪里,《少年三国志》最新萌新基础介绍4(名将+兵符)...

    一.名将系统 名将模块到现在也出来一年多的时间了,除了刚出的那段时间,较为弱势以外,后来经过加强,变得相当强势,特别是当前版本,一个好的名将有时可以1v12. 名将的玩法相对其他的道具来说相对简单,只 ...

  4. 什么是渲染?一文看懂,萌新赶紧收藏码住!

    十四五规划提出"加快数字化发展,建设数字中国",数字技术的快速发展,从起初的内容创建到最终的效果呈现,都离不开渲染技术.目前,渲染技术被广泛应用于教育.医疗.影视动画.建筑设计等多 ...

  5. #萌新日志#3.使用pix2pix CycleGAN和3d CycleGAN实现T1和T2加权模态的互转

    #萌新记录某些日子的学习经历.# 前言 以GAN为基础的生成式对抗网络从抽象的角度来说是结合一组图像的风格和另一组图像的内容,或者说实现将初始图像从一个域迁移到目标图像的域. 前段时间我尝试了包括pi ...

  6. 剑网三重置版服务器维护,《剑网三》重制版基础教程,让你从入门萌新步入大佬行列...

    原标题:<剑网三>重制版基础教程,让你从入门萌新步入大佬行列 最近一次看到给萌新的攻略帖似乎也已经是去年的事了,虽然大家对于发帖的小白都格外热情,但似乎重制版之后系统的帖子并不是很多,于是 ...

  7. python新手入门到放弃_python萌新:从零基础入门到放弃

    原标题:python萌新:从零基础入门到放弃 不管是在什么领域,自学者都占绝大多数,你说自学可以吗?可以,没问题的,只需要你具备以下几点最基础的能力: 第一点:天赋.对于python而言其实是非常需要 ...

  8. fcpx调整图层_【FCPX萌新系列】新手常遇到的4个基础调色问题

    什么是10bit?什么是422? 啥是log?啥是cine-d? 颜色还会断层? 什么三原色互补色CMYK? 品红有多红? 品如有多sāo? 刚接触视频就遇到这些是不是瞬间就懵圈了? 萌新们先别急着去 ...

  9. python零基础自学教材-python萌新:从零基础入门到放弃

    原标题:python萌新:从零基础入门到放弃 不管是在什么领域,自学者都占绝大多数,你说自学可以吗?可以,没问题的,只需要你具备以下几点最基础的能力: 第一点:天赋.对于python而言其实是非常需要 ...

最新文章

  1. 每天学一点儿shell:vi和vim命令使用
  2. 超炫酷的枪械3D动图,喜欢的不得了!
  3. python 方向键控制代码_Python控制鼠标键盘代码实例
  4. 吴恩达发布了大型X光数据集,斯坦福AI诊断部分超越人类 | AAAI 2019
  5. python免费课程400节-少儿编程网-Scratch_Python_教程_免费儿童编程学习平台
  6. 捡来的一个大数模版。很好用
  7. Bzoj1103 [POI2007]大都市meg
  8. matlab状态反馈控制器设计,状态反馈控制器设计方案书.doc
  9. 鸿蒙支持ps4手柄吗,PS5硬件兼容性测试:哪些PS4硬件可以在PS5上使用
  10. 复工复产到欧洲,深兰科技环卫产品亮相国际舞台
  11. (译)BPF技巧和窍门:bpf_trace_printk() 和 bpf_printk() 指南
  12. Problem : 闰年闰月
  13. 【解决】Failure to find com.xxx:xxx-target:pom:1.0-SNAPSHOT in https://xxxx/snapshot was cached in the
  14. 用Wireshark看见TLS握手过程
  15. 基于多机器学习模型的破产预测
  16. 解决gerrit merge conflict
  17. 手机安装pem_使用HTTP网址分发并安装iOS程序
  18. Python中的Decimal
  19. Excel - VBA -复制单元格值粘贴
  20. 区块链架构--fabric基本介绍

热门文章

  1. 计算机科学导论第二章,计算机科学导论第二章.doc
  2. misc高阶 攻防世界_攻防世界 Misc 进阶题(一)
  3. 什么是对象的消息_这一次,我们用最详细的方式解析Android消息机制的源码
  4. 阿云搭建php博客,阿云的应聘故事
  5. windows 配置C++环境
  6. mysql ---- innodb-2-索引
  7. leetcode-71-简化路径
  8. [MySQL] 为什么要给表加上主键
  9. 【CHARINDEX】先按STATIC_VALUE排序 在按R_RECORD_CREATE_DATE排序
  10. 再次学习mysql优化