Estoy creando un juego XNA y estoy obteniendo un resultado inesperado, FPS extremadamente bajo (aproximadamente 2-12 fps). ¿Qué programa debo usar para probar el rendimiento y rastrear qué lo está ralentizando?FPS extremadamente bajo, ¿qué aplicación de perfiles debo usar para encontrar problemas de rendimiento?
Respuesta
Bien, permítanme traer mi experiencia personal con el desarrollo de juegos en XNA.
La primera cosa que hay que hacer es entrar en Depurar -> Análisis de rendimiento de inicio. Esto perfila su actividad de CPU y permite ver qué subprocesos están en uso y qué hace el mayor procesamiento.
también hay que tener en cuenta un par de cosas más:
-Usted está probablemente funcionando en modo de depuración, esto significa que algunos de su CPU se está dedicando a VS y para comprobar si hay excepciones y lo que no.
-Tu código puede ser ineficaz. Recomiendo tratar de limitar la cantidad de listas, matrices, ADT y objetos creados durante el tiempo de ejecución, porque eso lo ralentiza mucho. La última vez que revisé el Game Loop corrí 60 veces por segundo, así que imagínense lo difícil que sería asignar una nueva lista, luego recogerla basura, 60 veces por segundo. Comienza a sumar.
-No sé qué tan avanzado que eres, pero leer sobre el roscado paralelo o multitarea. Un ejemplo sería tener su motor de física 1 fotogramas detrás de su actualización de gráficos.
EDIT: me di cuenta de que has encontrado el error, pero espero que este post puede ayudar a los demás.
el juego sigue siendo un poco lento, y comprobaremos algunos errores de rendimiento más, para volver a acelerarlo. Este es un gran consejo! – Cyral
Uso "Visual Studio 2010 Express para Windows Phone" y no veo la opción "Depurar -> Iniciar análisis de rendimiento". ¿Se agregó esto en una versión más nueva o se eliminó en algún momento? – Goose
Su único disponible en Visual Studio Premium y Visual Studio Ultimate – Cyral
- 1. Herramientas para encontrar problemas de rendimiento de solr
- 2. ¿Qué código de operación de código PHP debo usar para mejorar el rendimiento?
- 3. Perfiles de rendimiento en Linux
- 4. ¿Qué aplicación debo usar con netsh.exe?
- 5. dotTrace: ¿qué configuración de perfil debo usar para mi aplicación de escritorio?
- 6. Ant 1.8.0 de bajo rendimiento
- 7. Costo de rendimiento de creación de perfiles de una aplicación web en producción
- 8. ¿Qué controlador mongo para nodo debo usar?
- 9. Pruebas de rendimiento frente a perfiles
- 10. ¿Qué debo instalar para usar OraOLEDB
- 11. ¿Dónde puedo encontrar un generador de perfiles para aplicaciones C# para usar en Visual Studio 2008?
- 12. ¿Qué DB debo usar?
- 13. ¿Qué jarra de muelle debo usar?
- 14. ¿Qué enfoque debo usar para el script de C#?
- 15. Herramienta de generación de perfiles de rendimiento Buena F #
- 16. Problemas de rendimiento de Postgres
- 17. Problemas de rendimiento de WPF InitializeComponent
- 18. (¿Por qué) debo usar ofuscación?
- 19. ¿Qué algoritmo de indexación espacial debo usar?
- 20. Cassandra bajo rendimiento?
- 21. Asistencia Visual de bajo rendimiento
- 22. ¿Qué tipo de colección debo usar para obtener el mejor rendimiento?
- 23. UITableView cornerRadius con problemas de rendimiento de borde en iOS
- 24. ¿Qué almacenamiento debo usar para un plugin de outlook?
- 25. Problemas de rendimiento con JDBC
- 26. Perfiles de Flex: ¿qué está haciendo [enterFrameEvent]?
- 27. OAuth/OpenID: ¿qué debo usar?
- 28. OpenGL preguntas de rendimiento de bajo nivel
- 29. ¿Qué aspecto y sensación de Swing debo usar para una aplicación de escritorio Java?
- 30. Aplicación web en SVG, problemas de rendimiento y viabilidad
Echa un vistazo ahora. – Cyral
parece ser un enum.ToString – Cyral
Gracias, miré en él y además descubrí que mi método de sacrificio no estaba trabajando y estaba dibujando mucho fuera de la pantalla, restred a casi 30 fps ahora (30 fps es normal para mi craptop) – Cyral