Quindi volevo convertire il mio gioco per PC per funzionare su Xbox 360. Funzionava dannatamente bene sul PC, con un Intel Core 2 Quad @ 2.40Ghz e un Radeon 4850 512MB.PC XNA Game convertito in Xbox 360 - Enormi problemi di prestazioni
L'ho portato su Xbox e, a prima vista, c'era qualche problema con l'invarianza e l'ereditarietà per quanto riguarda l'importazione di liste, quindi ho semplicemente usato il metodo LINQ chiamato .Cast <>().
Se questo metodo è prende un grosso in testa, me lo faccia sapere, perché io non posso schierare analisi delle prestazioni sulla 360 per qualche motivo, molto probabilmente perché gioca sulla 360.
Poi un altro problema è venuto, ed è era un bel System.OutOfMemoryException. Le mie textures skybox erano 4096x4096, quindi la loro rimozione rimosse per metà quell'errore. Strano però, erano solo 3MB x 6, quindi non dovrebbe usare quella parte dei 512 MB disponibili.
Quindi, quando tutti questi problemi sono stati risolti, è stato introdotto un bel frame per 2 secondi. Quindi si blocca dopo 1 minuto di gioco, un "codice 4" qualunque cosa significhi.
Suona come un powerpoint. Ecco alcune immagini di analisi delle prestazioni dal gameplay del PC. Non sono male.
CPU: http://i.imgur.com/JYx7Z.png RAM: http://i.imgur.com/C29KN.png E 72% = 150 MB attenzione.
Spero che qualcuno qui abbia qualche esperienza in merito a questo problema. Francamente sono tutto orecchie.
Grazie mille, dopo molte ricerche ho trovato una risposta simile alla tua e quando ho eseguito il mio profilo CLR ho scoperto che stavo allocando circa 60 MB per frame ... non va bene. È perché aggiungo tutti gli oggetti collidabili nel mio gioco a un elenco, quindi li inserisco in un Collision Thread ogni frame. Potrei farne una lista statica, dove è solo un riferimento, che probabilmente farò, ma poi ho la possibilità di un collision lag. Ma immagino sia l'unica opzione. –