UnityAPI之Mathf类
Mathf类是Unity中的数学类,只有静态属性和静态方法,不可被实例化。
1.Deg2Rad:表示从角度到弧度常量 其值为(2*Pi)/360=0.01745329
Red2Deg:表示从弧度到角度
Infinity:表示正无穷大
静态方法:
1.Clamp方法:返回有限范围值
Clamp(float value,float min,float max)
Clamp(int value,int min,int max)
返回min到max中的值当value值小于min时返回min当value大于max时返回max
ClosestPowerOfTwo方法:返回2的某次幂
ClosesPowerOfTwo(int value)
DeltaAngle方法:最小增量角度
DeltaAngle(float current,float target)
InverseLerp方法:计算比例值
Lerp方法:线性插值 比较常用的一个方法
float Lerp(float from,float to,float t)
LerpAngle方法:角度插值
LerpAngle(float a,float b,float t)
最终得到的是a和b的角度差值,并且得到的值在0到180之间,对于a,b参数会先进行规范化,使得角度在0到360之间。
MovToWards方法:选择性插值
MoveToWards(float current,float target,float maxDelta)
参数current为当前值 target为目标值 参数maxDelta为最大约束值
MoveTowardsAngle方法:角度的选择性插值
MoveTowardAngle(float current,float target,float maxDelta)
其中参数current为当前角度,target为结束角度参数maxDelta为最大约束值。此方法作用是返回一个从当前角度current向目标角度target旋转的插值,没帧旋转角度不超过maxDelta度。
PingPong方法:往复运动
PingPong(float t,float length)
此方法用于模仿乒乓球的往复运动。f=Mathf.PingPong(t,1)其中f,t和1均为float类型值
Repeat方法:取模运算
Repeat(float t,float length)
Round方法:浮点数的整形值(四舍五入)
SmoothDamp方法:模拟阻尼运动
SmoothDampAngle方法:阻尼旋转
SmoothStep方法:平滑差值