Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C# + Xna] Lag
Forum - C# / VB.NET - [C# + Xna] Lag

Avatar
crybot (Member)
Pro


Messaggi: 115
Iscritto: 13/09/2011

Segnala al moderatore
Postato alle 23:02
Domenica, 18/03/2012
Salve, sto sviluppando un gioco utilizzando Xna, dal punto di vista tecnico tutto bene, ma ho notato che spesso si presenta del LAG piuttosto evidente.
Se per esempio, durante l'esecuzione del gioco, clicco sulla barra del titolo, o cambio finestra per un attimo, il gioco si rallenta esponenzialmente, anche se spesso si rallenta anche non avendo compiuto nessuna delle due azioni precendenti...
Il gioco non deve controllare tantissimi oggetti, al massimo 30-40, ho notato comunque che anche senza oggetti secondari (soltanto con il principale), si rallenta comunque.

Ho fatto qualche ricerca e alla fine sono giunto a questo codice:
Codice sorgente - presumibilmente Plain Text

  1. IsFixedTimeStep = false;


con questo ho risolto il problema, anche se non so come, visto che non ho idea di cosa effettivamente faccia. Ho letto anche pero` che non andrebbe usato questo tipo di soluzione.

qualcuno puo` darmi qualche consiglio o formulare un'ipotesi sul perche` si presenti questo LAG?

Edit:

qui c'e` il link per il download del progetto

*causa problemi mi e` impossibile distribuire il progetto, almeno per ora. per informazioni visitare questo link:
http://www.pierotofy.it/pages/extras/forum/15/1037001-risc ...*

grazie ;)

Ultima modifica effettuata da crybot il 21/03/2012 alle 22:23
PM
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Up
2
Down
V
Segnala al moderatore
Postato alle 10:26
Lunedì, 19/03/2012
Dipende da cosa hai scritto nel codice e dalla gestione delle risorse. La proprietà che hai impostato serve a rendere costante il timestep, ossia il tempo che passa tra una chiamata a Draw/Update e la successiva, se non ricordo male. Di norma questo tempo viene calcolato dinamicamente a seconda del carico richiesto.

Comunque io non ho mai avuto problemi di performance se non gestendo sistemi di particelle con qualcosa come un milione di particelle. I problemi c'erano solo perché non utilizzavo nessuna tecnica di ottimizzazione.

Se usi un ambiente 3D, ricordati di non renderizzare gli oggetti non visti dalla telecamera e che potresti usare un quadtree per ridurre linearmente il livello di dettaglio dei terreni.

di fatto utilizzo un ambiente 2D ed il gioco non richiede assolutamente un carico cosi` elevato da causare questo fastidioso rallentamento... se vuoi allego il progetto al post principale, cosi` vedi cosa c'e` che non va. - crybot - 19/03/12 14:15
ho aggiunto il link del progetto - crybot - 19/03/12 20:45


"Infelici sono quelli che hanno tanto cervello da vedere la loro stupidità."
(Fligende Blatter)

"Dubitare di se stessi è il primo segno d'intelligenza."
(Ugo Ojetti)
PM