3D游戏入门 | 青训营笔记

99 阅读2分钟

这是我参与「第五届青训营」伴学笔记创作活动的第9天

一.3D实体搭建

位姿态:位置、旋转(Rotation)、缩放(Scale)
关注坐标系(是否为反转坐标系)
绝大部分先缩放、后旋转、最后平移
绘制过程:材质、颜色、纹理

E-C:实体-组合开发方式
(UNITY软件操作)

预制体--相当于模板

二.相机和天空盒

3d空间裁剪成为2d屏幕所能呈现的画面
常见属性:

  • Clear Flgas:清除标记。相机在渲染时会存储颜色和深度信息,信息存储在缓冲区,可以指定清除标记来清除不同的缓冲区信息集合
  • Background:相机背景颜色
  • Culling Mask:剔除遮罩
  • 透视投影(Perspective)与正交(Orthographic)投影
    屏幕当前任何空白部分都显示当前相机的天空盒

一个场景可以有多个相机,呈现不同的视角

三.光照

分类:点光源、平行光、聚光灯、面积光
点光源和平行光源常用,聚光灯和面积光效果不太好,不常用

四.控制与碰撞

帧率60,才可以流畅运行,一般20帧显示明显卡顿,30帧就能感到卡顿了 (1帧能玩,2帧流畅,3帧电竞)

游戏优化-减少运算量:

  • 减少物理运算:减少无意义的碰撞检测
  • 减少逻辑运算
  • 减少渲染运算:在用户不感知到差异的前提下尽可能裁减渲染

刚性组件(RigidBody):
不受外界变化而变化。3D游戏中的刚体遵守游戏的设定规则,而不像现实世界中遵循牛顿定理。

五.

开发游戏不仅要编程能力,还需要一定的审美和3D建模能力,就光照角度来看还需要一定的美术基础。今天看了UNITY的一些操作过程感觉和PS、PR和之学的3D建模的软件操作很像。