Pregunta

Estoy escribiendo un juego para un teléfono Windows 7 usando XNA 4.0, Visual Studio 2010 Pro y el emulador de teléfono Windows 7 incorporado. Descargué un par de muestras de Gamestate, pero obtengo FPS muy bajo, incluso sin trabajo de gráficos reales. Tetea entre 30, 15, luego 10, generalmente lento.

Mi computadora no es un gritador, pero tengo una computadora portátil Core i5 2.4Ghz y 4 GB de RAM, por lo que debo pensar que puede seguir el ritmo de cualquier hardware en un teléfono.

¿Algunas ideas? ¿Esto es normal? Tal vez mi forma de medir FPS es incorrecta (uso fps=1/gametime.elapsedtime.totalseconds)?

¿Fue útil?

Solución

Para calcular su FPS, puede usar este código:

//time since last FPS update in seconds
    float deltaFPSTime = 0;

    protected override void Update()
    {
        // The time since Update was called last
        float elapsed = (float)ElapsedTime.TotalSeconds;

        float fps = 1 / elapsed;
        deltaFPSTime += elapsed;
        if (deltaFPSTime>1)
        {

            Window.Title = "I am running at  <" + fps.ToString()+"> FPS";
            deltaFPSTime-=1;
        }
        // Let the GameComponents update
        UpdateComponents();
    }

Compruebe si hay más muestras de contadores de FPS allí.

Con este código en su lugar, pruebe si todavía obtiene resultados extraños.

Otros consejos

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top