Sto creando un gioco XNA e sto ottenendo un risultato inaspettato, un FPS estremamente basso (circa 2-12 fps). Quale programma dovrei usare per testare le prestazioni e rintracciare cosa sta rallentando?FPS estremamente basso, quale applicazione di profiling dovrei utilizzare per trovare problemi di prestazioni?
risposta
OK, permettimi di portare la mia esperienza personale con lo sviluppo di giochi in XNA.
La prima cosa che devi fare è andare in Debug -> Avvia analisi delle prestazioni. In questo modo viene analizzata l'attività della CPU e vengono visualizzati quali thread sono in uso e ciò che sta facendo la maggior parte dell'elaborazione.
È inoltre necessario fattore in un altro paio di cose:
-Si sono probabilmente in esecuzione in modalità di debug, questo significa che alcune delle CPU sarà dedicata a VS e per verificare eccezioni e non quello.
-Il tuo codice potrebbe essere inefficiente. Ti consiglio di provare a limitare la quantità di elenchi, matrici, ADT e oggetti creati durante il runtime, perché ciò rallenta molto. L'ultima volta che ho controllato il Game Loop è stato eseguito 60 volte al secondo, in modo da immaginare quale sarebbe stato lo sforzo di allocare una nuova lista, quindi raccogliere i dati, 60 volte al secondo. Inizia ad aggiungere.
-Non so quanto sei avanzato, ma leggi su threading parallelo o multitasking. Un esempio dovrebbe avere il motore della fisica 1 fotogramma dietro l'aggiornamento grafico.
EDIT: Ho capito che hai trovato il tuo errore ma spero che questo post possa aiutare gli altri.
Il gioco è ancora un po 'lento, e sto controllando qualche bug di prestazioni in più, per riprenderlo velocemente. Questo è un ottimo consiglio! – Cyral
Io uso "Visual Studio 2010 Express per Windows Phone" e non vedo l'opzione "Debug -> Avvia analisi delle prestazioni". È stato aggiunto a una versione più recente o rimosso in qualche momento? – Goose
È disponibile solo in Visual Studio Premium e Visual Studio Ultimate – Cyral
- 1. Applicazione di profiling incorporata
- 2. Quale implementazione di bitset dovrei usare per le massime prestazioni?
- 3. Applicazione java con profiling remoto
- 4. dotTrace: quali impostazioni di profiling dovrei utilizzare per la mia app desktop?
- 5. Test delle prestazioni e profiling
- 6. Applicazione Web in SVG, problemi di prestazioni e redditività
- 7. Esercitazioni di Java Profiling, Ottimizzazione delle prestazioni e Profiling della memoria
- 8. Droggable JS Bootstrap modal - problemi di prestazioni
- 9. Quale strumento dovrei utilizzare per automatizzare la distribuzione della mia applicazione ASP.NET MVC?
- 10. VS2010 prestazioni Profiling Problema (PRF0017: Impossibile avviare il server per ..)
- 11. Problemi di prestazioni SwiftyJSON
- 12. EC2 problemi di prestazioni ELB
- 13. quale di == e =: = dovrei usare?
- 14. Quale doctype dovrei usare per GWT 2.0?
- 15. Quale plug Mercurial dovrei usare per IntelliJ
- 16. Generazione di una firma per Amazon fps
- 17. Problemi di prestazioni usando System.js
- 18. Problemi di prestazioni con SSRS
- 19. Quale algoritmo dovrei usare per una divisione intera di grandi prestazioni?
- 20. Problemi di prestazioni .NET OpenXML
- 21. Quale ORM dovrei usare al posto di Linq su Sql?
- 22. Quale versione di python opencv dovrei usare?
- 23. Quale PreApplicationStartMethod dovrei usare?
- 24. Applicazione Google App Engine Estremamente lenta
- 25. Quale diagramma UML dovrei iniziare?
- 26. Quale stile di ritorno dovrei usare?
- 27. Quale conoscenza di C# dovrei avere?
- 28. Quale valore di errore dovrei usare?
- 29. Problemi di prestazioni di Apache Velocity?
- 30. Quale pacchetto di ricerca full-text dovrei usare per SQLite3?
Controllando ora. – Cyral
Sembra un enum.ToString – Cyral
Grazie, l'ho esaminato e inoltre ho scoperto che il mio metodo di selezione non funzionava e stava disegnando molto fuori schermo, restituito a quasi 30 fps ora (30 fps è normale per il mio craptop) – Cyral