Unity 中的旋转、targetFrameRate、 vSyncCount、Time

1. 旋转:

  • Unity 中的旋转用eulerAngle 表示,但在内部是以quaternion存储。
  • 欧拉角旋转围绕三个轴进行三次独立旋转,依次是z、x、y。
  • To convert from Euler angles to quaternions, you can use the Quaternion.Euler function.
  • To convert a quaternion to Euler angles, you can use the Quaternion.eulerAngles function.

2. TargetFrameRate、 vSyncCount

Application.targetFrameRate and QualitySettings.vSyncCount 都是用来控制帧的targetFrameRate 控制每秒视图渲染多少帧,vSyncCount控制每帧之间刷新屏幕多少次。 

  • 移动平台忽视 QualitySettings.vSyncCount。仅使用 Application.targetFrameRate 控制帧率。移动平台的最大帧率就是屏幕的刷新率
  • VR平台忽视 QualitySettings.vSyncCount 和 Application.targetFrameRate。VR SDK 控制帧率。
  • 其它平台,如果设置了vSyncCount,就忽视targetFrameRate,帧率通过平台默认帧率除以 vSyncCount. 比如:默认是60 fps,vSyncCount is 2,Unity则每秒刷新30次.
  • Screen.currentSolution 包含当前屏幕的宽高比和屏幕刷新率

3. Time

unity中的time 分为两套,下面是执行逻辑,受Time.scale的影响

Unity 中的旋转、targetFrameRate、 vSyncCount、Time_第1张图片

  • Time.scale 设置为0,即Time.time 不再增加,当update方法还是执行的
  • Time.unscaledTime 在 MonoBehaviour's FixedUpdate调用时,返回Time.fixedUnscaledTime,在同一帧中调用的值是一样
  • Time.realtimeSinceStartup,在同一帧的值是不一样的,定时器不要用这个,因为可能由于帧率的不稳定导致计时不一样

你可能感兴趣的:(unity,unity,游戏引擎)