# 官方文档

使用手册 (opens new window)
脚本API (opens new window)

# 基础术语

# 游戏对象/节点 (GameObject)

场景中的基础对象,可以表示角色、道具、风景、摄像机、路径点等

# 组件 (component)

游戏对象的功能。一个游戏对象可以包含多个组件。Unity 有许多内置组件

# 对象的轴心(Pivot)

指旋转轴、坐标基准点,默认在对象的几何中心

# 精灵(Sprite)

场景中的图片对象

# 帧率(Framerate)

指每秒更新多少次 (FPS, Frames Per Second)。FPS = 50 , 即每 20ms 秒更新一次


# 变换组件(Transform )

变换组件确定每个对象在场景中的 Position、Rotation 和 Scale 属性的值
每个游戏对象都有一个变换组件

# 图片渲染组件(Sprite Renderer )

图片渲染器组件,用于显示一个Sprite

# 基础用法

# 在2D画面中,调整显示顺序

  • 1 修改 Order In Layer ( 推荐 )
  • 2 修改 Z 坐标

# 对象的轴心的调整

  • 1 选中一个图片素材
  • 2 在 Inspector 窗口中,点 Sprite Editor ,打开一个图形编辑器

# 基础方法

# 获取时间间隔

//获取上一次Update() 到现在的时间间隔
Time.deltaTime() 

# 匀速移动

float step = 0.8f * Time.deltaTime

# 设定帧率

Application.targetFrameRate = 50

# 调整对象位置

this.transform.Translate(0, 0.05f , 0)<br>
//this.transform 即当前游戏对象的 transform组件<br>
//Translate() 调整相对位移

# 获取当前对象/节点下的组件

SpriteRenderer renderer = this.gameObject.GetComponent< SpriteRenderer >();
SpriteRenderer renderer = this.GetComponent< SpriteRenderer >();
SpriteRenderer renderer = GetComponent< SpriteRenderer >();

# 获取当前对象/节点下其他的组件

//可以根据路径或对象名称获取
GameObject obj = GameObject.Find("/path/of/target");
SpriteRenderer comp = obj.GetComponent< SpriteRenderer >();

# 父子对象的操作

//父对象
GameObject  parent = this.transform.parent.gameObject;

//修改父对象
GameObject obj1 = GameObject.Find("佩奇");
GameObject obj2 = GameObject.Find("bilibili_0");
obj1.transform.SetParent(obj2.transform);
//挂在主场景下
obj1.transform.SetParent(null);

# 3D 向量和点

transform.position = new Vector3(0, 1.0f, 0);
transform.eulerAngles = new Vector3(0, 0, 90f);
//Euler Angle 称为欧拉角,就是用直观的角度来表示旋转

# 本地坐标/相对坐标

transform.localPosition = new Vector3( 0, 1.0f, 0);
transform.localEulerAngles = new Vector3( 0, 1.0f, 0);

transform.Translate(0, 0.02f, 0, Space.Self);//默认
transform.Translate(0, 0.02f, 0, Space.World);