如题所述
1ãå¨Quality(è´¨é)设置éæ帧æ°è®¾å®å ³éï¼ä¹åæè½å¨ä»£ç ä¸ä¿®æ¹æ¸¸æè¿è¡ç帧æ°
2ãå¨Unityä¸æ°å»ºèæ¬UpdateFrame.cs ï¼ç¼åå¦ä¸ä»£ç
using UnityEngine;
using System.Collections;
/// <summary>
/// åè½ï¼ä¿®æ¹æ¸¸æFPS
/// </summary>
public class UpdateFrame : MonoBehaviour
{
//游æçFPSï¼å¯å¨å±æ§çªå£ä¸ä¿®æ¹
public int targetFrameRate = 300;
//å½ç¨åºå¤éæ¶
void Awake ()
{
//ä¿®æ¹å½åçFPS
Application.targetFrameRate = targetFrameRate;
}
}
3ãæ该代ç åShowFPS.jsç»å®å¨å±æ¬¡è§å¾çä»»ä¸GameObjectä¸
è¿è¡æ¸¸æï¼å³å¯ä»¥Gameè§å¾ä¸çå°å½åçFPS
åæ¶å¯ä¿®æ¹targetFrameRateåéæ¥è§çç»æ
ShowFPS.js代ç
@script
ExecuteInEditModeprivate var gui
: GUIText;private var updateInterval
= 1.0;private var lastInterval
: double;
//
Last interval end timeprivate var frames
= 0; //
Frames over current intervalfunction
Start(){
lastInterval
= Time.realtimeSinceStartup;frames
= 0;}
function
OnDisable (){
if (gui)
DestroyImmediate
(gui.gameObject);}
function
Update(){
#if
!UNITY_FLASH++frames;
var timeNow
= Time.realtimeSinceStartup;if (timeNow
> lastInterval + updateInterval){
if (!gui)
{
var go
: GameObject = new GameObject("FPS
Display",
GUIText);go.hideFlags
= HideFlags.HideAndDontSave;go.transform.position
= Vector3(0,0,0);gui
= go.guiText;gui.pixelOffset
= Vector2(5,55);}
var fps
: float =
frames / (timeNow - lastInterval);var ms
: float =
1000.0f / Mathf.Max (fps, 0.00001);gui.text
= ms.ToString("f1")
+ "ms
" +
fps.ToString("f2")
+ "FPS";frames
= 0;lastInterval
= timeNow;}
#endif
}