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

Vector3.Cross(a,b)叉乘

Vector3.Project(vector,onNormal)Vector在onNormal方向上的投影

Vector3.Reflect(inDirection(入射防线),inNormal(法线))

Vector3.Slerp(a,b,t)与lerp一样也是在ab之间差值,不同的是 向量被视为方向而不是空间中的点。返回矢量的方向用角度插值,其大小在从和到的大小之间插值。

[展开全文]

Vector2.Equals(向量1,向量2)判断向量12是否相同

Vector2.Normalize()将向量单位化,即把向量变成一个单位向量

Vector2.Angle(1,2)取得1和2之间的夹角

Vector2.ClampMagnitude()和之前的Clamp大同小异,不过这次是针对向量

Vector2.Distance(vector2a,vector2 b)取得ab向量之间的距离

vector2.Lerp(a,b,t)

Vector2.Unlamped(a,b,t)t的值可以大于1

Vector2.Max/Min(a,b)

Vector2.MoveTowards(a,b,t)由a到b移动,t为移动距离

Vector2.Dot(a,b)点乘

 

[展开全文]

Vector2类

down(0,-1)

left(-1,0)

one(1,1)

right (1,0)

up(0,1)

zero(0,0)

Vector2.normalized 取得该方向的基向量

Vector2.magnitude 得到向量的长度

Vector2.sqrtMagnitude 得到长度的平方(没开根号的时候)

[展开全文]

Input.GetTouch()手机触摸

可以用easyTouch插件

 

Input.Anykey是一个bool值随意按哪个键或者按鼠标键都会改为true,类型和GetKey相同,也有down和up

Input.MousePosition 鼠标光标的位置

 

[展开全文]

Input.GetAxis("")返回值由0渐变到1

Input.GetAxisRaw("")返回值没有渐变,按下立刻变成1与-1

 

[展开全文]

在Manual中的Creating Gameplay中的Input ConventionalGameInput里可以找到对应键名

Input.GetMouseButton()括号中012,0左键1右键2中键

GetButton和mouse的一样,也有down和up

 

[展开全文]

Input.Getxxx

GetKey("键名,如up"/KeyCode.UpArrow)

GetKeyDown(同上)

GetKeyUp(同上)

Down是按下的那一帧返回true,Up是抬起,与GetKey不同的是Down和Up只有按下和抬起那一帧是true,getkey在按下后抬起前都是true

[展开全文]

Input类

在Edit projectsetting中可以设置

Input.imelsSelected()可以判断输入法

 

[展开全文]

Mathf.PingPong(t,length)返回值0-length之间的一个值

t是运动速度

[展开全文]

Mathf.LerpAngles()保证差值还是在360之内

Mathf.,MoveTowards(current,target,maxDelta)和lerp的功能相似,不过是匀速运动,并且值不会超过目标值

maxDelta如果设置为正则是向目标移动,负数则是原理目标

 

[展开全文]

Mathf.Lerp(a,b,t)在a和b之间t的位置插入数并返回这个数,t是一个比例

[展开全文]

Mathf.DeltaAngle(ange1,angle2)求两个角度的最小夹角,角度大于360会自动求余

Mathf.Exp(float power)e的power次方

Mathf.Floor(float f)向下取整,clamp是向上取整

Lerp()插值运算

Mathf.Max()自动取得最大值

Mathf.Movetowards(min,max,change)

Mathf.Pow(f,p)f的p次方

Mathf.Sqrt取得平方根

Mathf.ClosetPowerOfTwo(f)取得离f最近的2的次方,比如f=7就会返回8

[展开全文]

Mathf中的常用方法

Mathf.Abs()取绝对值

Mathf.Ceil()向上取整(10.2取到11,返回float类型)

Mathf.CeilToInt()与上相同,不过返回的是int类型

Mathf.Clamp(float value,float min,float max)如果value小于min则返回min,大于max则返回max,大于min小于max则返回value本身,即把一个值限制在范围之内

Mathf.Clamp01(float value)即min为0max为

一般情况下,比如在被点燃的情况下

[展开全文]

Mathf

Mathf.Rad2Deg()弧度转换成度数

Mathf.Deg2Rad()

Mathf.Epslion()代表无限小的一个小数

Mathf.Infinity()代表无限大的数,Infinite前可加Negative表示负无穷

Mathf.Pi()圆周率

[展开全文]

如果想用Onmousexxx()必须要在附加该脚本的游戏物体身上添加collider

如果碰撞器为Trigger则保证Edit pysics中设为true

OnMouseDown()鼠标 按下

OnMouseUp()鼠标抬起

OnMouseDrag()按下没有抬起,即拖拽

OnMouseEnter()鼠标移到物体上时触发

OnMouseOver()鼠标呆在物体上时

OnMouseExit()鼠标从物体身上移开

OnMouseUpAsButton()可以用来检测单击某物体

[展开全文]

关闭协程的时候要和开启时相一致

()内如果是方法名,关闭时也要用方法名

如果是ienumerator,关闭时也要用ienumerator

两个必须相互对应

[展开全文]

协程暂停

yield return new WaitForSeconds()

[展开全文]

协程方法Coroutines

方法遇到协程方法时,两个方法一起执行,与普通方法不同,普通方法会等待这个普通方法执行完后继续向下进行

协程自身可以暂停

返回值:IEnumerator

返回参数: yield return

调用:在方法内使用StartCoroutine(协程名());

[展开全文]

IsInvoking("")可以用来判断括号内方法是否正在被调用

Invoke()会把括号内的方法加进队列里,并执行后面的等待时间,这时间内IsInvoking会显示为true

InvokeRepeating(方法,4,2)4s后调用第一次,之后每间隔2s调用一次

[展开全文]

isActiveAndEnabeld

禁用脚本禁用的是update方法

[展开全文]

授课教师

SiKi学院老师

课程特色

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