3D游戏开发|青训营笔记

114 阅读2分钟

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

本堂课重点内容

本次课程简单介绍了如何利用Unity(或其他3D游戏引擎)快速搭建电子游戏原型,参加Game Jam活动。

本次课程分为3D实体搭建,相机、光照、天空盒,控制和碰撞,玩法逻辑与UI几个方面。

简言之:一名程序员,如何在没有美术的前提下,制作一个游戏Demo,让别人亲身体验以了解游戏机制。

详细知识点介绍

3D实体

3D游戏是由一个个具有形状的实体组成的。每个实体在空间中存在于特定的位置,有特定的姿态(旋转角度)。

  1. 位置Position
  2. 旋转Rotation
  3. 缩放Scale

在Unity中的绝大多数情况,是先缩放,后旋转,最后平移。

对3D实体的绘制:

  1. 材质
  2. 颜色
  3. 纹理

将游戏对象保存在工程中,在需要时创建出来,这就是预制体。 预制体存储着一个游戏对象,包括游戏对象的所有组件以及其下的所有子游戏对象。

相机、光照、天空盒

对于相机来说有以下属性:

  1. clear flag
  2. 背景颜色
  3. culling mask
  4. 投影(透视、正交)

对于光照来说:

  1. 类型:点光源、平行光、聚光灯、面积光
  2. 颜色
  3. 强度
  4. 阴影类型

对于天空盒来说:

  1. 相机的清除标志设置为“天空盒”
  2. 窗口-渲染-照明设置
  3. 环境-天空盒材质

控制与碰撞

对于1帧来说有如下时序:

image.png

标签和图层管理器:

  1. 菜单栏中执行 Edit > Project Settings > Tags and Layers命令
  2. 打开Tags左侧的三角形展开按钮。单击标签下方的+符号并输入标签名称
  3. 单击Layers旁边的三角形展开按钮,一次输入图层名称

玩法逻辑与UI

主要分为实例化预制体|UI实体|场景周期控制三个方面。