Sto realizzando un gioco 2D in XNA. Quando si utilizzano componenti di gioco estraibili, quale è meglio per le prestazioni?Come evitare di disegnare componenti XNA quando è fuori dallo schermo?
1. Quando un componente non si trova sullo schermo, rimuoverlo dall'elenco dei componenti e quando viene aggiunto sullo schermo.
2. Quando i suoi fuori campo Dont Run sua funzione draw (utilizzando un "sveglio" bool campo e un if intorno tutto in funzione di disegno)
sto usando il metodo 2 in questo momento ed è funziona bene. La sua comoda manina il mazzo di componenti non cambierà (se rimuoverò e riaggiungerli lo farà, e avrò bisogno di più codice per gestirlo) In realtà mi è appena venuto in mente che se non è nella lista dei componenti aggiornamento e ho bisogno di qualcos'altro per tenere traccia di se è sullo schermo o no ..
Anche io non ho la versione di fantasia di Visual Studio con il profiler, quindi sto solo chiedendo qui cosa pensa la gente dalla loro esperienza
Non è necessario un profiler costoso per determinare quale sia più veloce in un test "Cronometro" è abbastanza buono per quello. Il profiler aiuterà a spiegare * perché * uno è più veloce dell'altro (vale a dire, quali parti di questo algoritmo sono lente, cosa consuma più memoria, devo preoccuparmi di ottimizzare questa sezione, ecc.). – Servy
Vorrei credere che la scelta 2 sarebbe più veloce. – Cyral
Quanti 'DrawableGameComponent's usi? Se ne stai usando molte, probabilmente lo stai usando male. –