29784人加入学习
(126人评价)
Unity API常用方法和类详细讲解(基于Unity5.6)
价格 免费
承诺服务

执行普通方法:

普通方法执行完,继续向下执行

协程方法:

调用完协程方法后,不会等这个方法执行完就继续向下执行了

 

[展开全文]

MonoBehaviour

Variables 变量

runInEditMode

useGUILayout

CancelInvoke  取消调用 只取消当前脚本的方法

Invoke 调用某个方法

InvokeRepeating 一直调用某个方法

[展开全文]

与组件获得有关

GetComponent 根据类型得到游戏物体的组件 有多个组件时只会返回得到一个

GetComponentInChildren 根据类型得到游戏物体某个组件的子物体 有多个子物体时只会返回一个子物体

GetComponentInParent 根据类型得到游戏物体某个组件的父物体,有多个父物体时只返回一个父物体

GetComponets得到游戏物体上的所有组件

GetComponentsInChildren得到游戏物体组件上所有的子物体

GetComponentsInParent得到游戏物体组件上所有的父物体

 

[展开全文]

GameObject的静态方法

layer 获取游戏所在的层

scene 获取游戏的场景

静态查找方法

CreatePrimitive 创建某个基本体

Find 根据名字进行查找 遍历游戏场景当中的所有物体

FindGameObjectsWithTag 根据标签进行查找(查找游戏当中所有标签名称相同的物体)返回的时数组

FindWithTag 根据标签进行查找(当游戏当中有多个相同tag名时,只返回一个)

1.GameObject go=GameObject.Find("类名");

go.SetActive(false);

2.GameObject[] go=Gameobject.FindGameObjectsWithTag("标签名");

go.SetActive(false);

3.GameObject go=GameObject.FindGameObjectWithTag("标签名");

go.SetActive(false);

公共方法

 

[展开全文]

Destroy  销毁

FindObjectOfType 查找游戏当中所有物体的组件并返回成数组

 

[展开全文]

禁用和启用物体

activeinHierarchy 区分游戏物体是否处于激活状态

activeSelf 是否把游戏物体设置为False

tag 区分不同的游戏物体

Debug.Log(go.activeInHierar)

 

 

[展开全文]

如何给游戏物体通过代码添加组件

  AddComponet<>

GameObject.CreatePrimitive(PrimitiveType.Plane);

GameObject go=GameObject.CreatPrimitive(PrimitiveType.Cube);

go.AddComponent<Rigidbody>();给Cube添加刚体

go.AddComponent<API01EventFunction>();

给Cube添加

[展开全文]

构造方法用于创建空物体

Instantiate   可以实例化各种各样的东西

CreatePrimitive  chuangjian

创建游戏物体的三种方法

1.new GameObeject("cube");

 

2.根据prefab

GameObeject.Instantiate(prefab);可以根据prefab或者另外一个游戏物体克隆

3.

GameObject.CreatePrimitive(PrimitiveType.plane); 创建一个plane

GameObejct.CreatePrimitive(PrimitiveType.plane);  创建一个Cube

[展开全文]

Time.delta Time

控制动画、运动有关的东西

public transform cube;

cube.Transform(Vector3.forward*Time.delateTime);

Time.timeScale=0;经常用于暂停游戏(前提是所有运动的物体都使用了Time.dekateTime控制运动)

 

realTimeSinceStartup

做测试性能

public transform runCount=100000;

 

float time1=time.realtimeSinceStartup

for(int i=0;i<runCount;i++)

{

Method1(1);

}

float time2=time.realtimeSinceStartup

Debug.Log(time2-time1);

3 4 

[展开全文]

Time类中静态变量

Time.dalteTime

使用 Time.deltaTime 可在 y 方向以 n 单位/秒的速度移动 GameObject。将 n 乘以 Time.deltaTime,然后与 y 分量相加。 

当前帧所占用的时间  每一帧所占用的时间在60分之1每秒左右   每一帧的时间间隔

Time.fixedDeltaTime

当前固定帧所占用的时间 

Time.fixedTime

从游戏开始所占用的时间 代表游戏运行的时间

realtimeSInceStartup

Time.time 

从游戏开始所运行的时间

Time.frameCount

代表从游戏开始到现在运行的总帧数

Time.realtimeSinceStartup

从游戏开始到现在游戏所运行的时间 游戏暂停或在后台运行时,时间会一直增加

Time.smoothDeltaTime

 平滑运动

 Time.timeScale

时间的比例 可以让游戏加速或暂停播放

Time.timeSinceLevelLoad

当前场景所加载完成后运行的时间

从场景加载完成时开始计时  以场景的开始为单位

Time.unscaledTime

游戏从开始到现在所运行的时间 不受time.的影响

Time.realtimeSinceStartup

游戏从开始现在占用的时间  不受游戏暂停或后台运行的影响 都会继续计时

[展开全文]

事件函数

 Reset  被附加时和reset时调用

Awake 当整个场景运行时或 物体被实例化时调用

OnEnable 当场景启用时被调用

Disable 对象被禁用时调用

FixedUpdate 每秒固定调用60次(运动的可以放在此函数内)

Update 每一帧调用一次(与运行环境有关)

LateUpdate 

OnTriggerXXX 触发器

OnCollisionXXX 碰撞器

 yield WaitForFixedUpdate

OnMouseXXX

OnDrawGizmos

OnApplicationPause 运行场景时点击暂停按钮是发生

OnApplicationQuit 退出游戏时发生

 

[展开全文]

ankeyDown 按下任何键  返回true

mousePosition

[展开全文]

pingpong(float t ,float lenth)

t和length 之间来回

0到lenth 之间以 之间来回徘徊

重载  设置xx

 

[展开全文]

lerp(float a ,float b ,float t)

t0到1

当a=0 b =10

t=0 返回0

t=1返回10

t =0.5 返回5

 

 

[展开全文]

授课教师

SiKi学院老师

课程特色

图文(1)
下载资料(2)
视频(71)