¿Qué significa modificar la calidad de la velocidad de fotogramas en el código de unity3d?
1. Desactive la configuración de velocidad de fotogramas en la configuración de calidad y luego podrá modificar la velocidad de fotogramas del juego en el código.
2 Cree un nuevo script UpdateFrame.cs en Unity. y escriba el siguiente Código
usando UnityEngine
usando System.Collections
// resumengt; : Modificar el FPS del juego
// lt;/summarygt;
clase pública UpdateFrame .MonoBehaviour
{
/ Modificar el FPS del juego, puedes Modificar en la ventana de propiedades
public int targetFrameRate = 300;
//Cuando el programa se activa
void Awake()
{
Application.targetFrameRate = targetFrameRate
}
}
3. Combine este código con ShowFPS.js vinculado a cualquier GameObject en la vista jerárquica
Ejecute el juego y podrá ver el FPS actual en la vista del juego
Al mismo tiempo, puedes modificar la variable targetFrameRate para ver los resultados
Código ShowFPS.js
@script
ExecuteInEditMode
¿privado?
: GUIText;
privado?var?updateInterval
=1.0;
privado?var?lastInterval
: double;
//
Hora de finalización del último intervalo
private?frames
= 0;
Fotogramas sobre el intervalo actual
función
Inicio()
{
lastInterval.p>lastInterval
= Time.realtimeSinceStartup;
cuadros
= 0;
}
función
OnDisable ( )
{ p>
si?(gui)
DestruirImmediato
(gui.gameObject);
}
función
Actualizar()
{
#if
!UNITY_FLASH
fotogramas;
var ?timeNow
= Time.realtimeSinceStartup;
if?(timeNow
gt; lastInterval updateInterval) p>
{
si?(!gui)
{
var?go
: GameObject = nuevo?pi
xelOffset
= Vector2(5,55);
}
var?fps
: float?=
fotogramas / (timeNow - lastInterval);
var?float?=
1000.0f/Mathf.Max(fps, 0.00001);
gui. texto
= ms.ToString("f1")
"ms
"
fps.ToString("f2")
"FPS";
fotogramas
= 0
últimointervalo
= tiempoAhora;
}
#endif
}