Orario: 25-05-2013, 3:37 Benvenuto ospite! (Log inRegistrati)


Rispondi 
L'Hard Disk della 360, caricamenti...
Autore Messaggio
KappeiJin
Ghoulsa e Ghosta

Messaggi: 887
Registrato: Jan 2011
Offline Offline
#1 L'Hard Disk della 360, caricamenti...
0
Altro inghippino... Che non credo abbia molte soluzioni, comunque spiego:
tempo fa, ho scelto di mantenere tutte le texture del fondale livello in formato png e di caricarle SENZA la content pipeline. Questo per due motivi:

- Gli artefatti della compressione DXT sono vergognosamente inapplicabili
- Lo spazio su disco viene tenuto a bada (molto utile per le texture grosse, che spesso hanno il vantaggio di sostiuire iterazioni infinite tra texture piccole)

Ok, il problema è il caricamento, in quanto un'immagine caricata in memoria senza pipeline ci mette veramente l'impossibile.

Per rimediare al difetto, avevo scritto una bella funzione che scartava dai caricamenti tutti quei file i cui asset erano già stati associati a oggetti precedenti, quindi se un elemento del fondale era associato ad un asset e quell'asset era già stato caricato in precedenza, il nuovo elemento non veniva caricato, ma gli veniva passato l'asset di riferimento copiandolo dal suo gemello precedente.

Su pc questa funzione mi ha ridotto del 70% buono i caricamenti.

Su 360 continua ad avere un caricamento infinito...

Innanzitutto vorrei sapere se la 360 ha un accesso al disco rigido più lento in generale rispetto a un pc (un pc medio di uno o due anni fa)... e poi, se proprio non ci sono modi per velocizzare il caricamento, datemi un consiglio su come addolcire la procedura, per esempio mettendo una barra di progressione... Come ultima spiaggia metterò una scenetta animata stile Neo Geo CD (ricordate?) Sorriso

Paolo Cattaneo
[Immagine: sblgtk.png] Raven Travel Studios (pls follow us ^^)
"Ogni buon lavoro software nasce da un problema personale di uno sviluppatore."
(Questo messaggio è stato modificato l'ultima volta il: 17-06-2012 17:18 da KappeiJin.)
08-02-2012 15:09
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
-=Magic=-
Senior Member

Messaggi: 330
Registrato: Jul 2011
Offline Offline
#2 RE: L'Hard Disk della 360, caricamenti...
0
Allora.. i tempi di caricamento su xbox dipendono da molti fattori. in generale sono lenti.
(tieni presente che non c'è un modo per fare defrag... quindi nel tempo sarà sempre peggio)

se ti posso dare un consiglio, usa questo: http://spritesheetpacker.codeplex.com/

in modo da ridurre il nuomero di caricamenti. (se hai 100 oggetti, fai prima a fare un solo caricaemnto piuttosto che 100).

inoltre, se non usi il pipeline... tieni presente che quando la carichi.. eusi Texture2D.FromStream... vengono fatte le normali elaborazioni sull'immagine (esempio: premoltiplicazione dell'alpha channel) che normalmente vengono fatte in pipeline in fase di compilazione.

questo fa riferimento a WP7, ma vale in generale:
http://jakepoz.com/jake_poznanski__speeding_up_xna.html

Sito Web | Magic Racing GP 2 - Xbox 360
10-02-2012 11:14
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
kuma
Senior Member

Messaggi: 373
Registrato: Jun 2011
Offline Offline
#3 RE: L'Hard Disk della 360, caricamenti...
0
si, è molto lento. io ho risolto facendo dei micro caricamenti su thread diversi

Fabio Menta
facebook
10-02-2012 11:26
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
KappeiJin
Ghoulsa e Ghosta

Messaggi: 887
Registrato: Jan 2011
Offline Offline
#4 RE: L'Hard Disk della 360, caricamenti...
0
Riuppo perchè leggendo questo thread:
http://forums.create.msdn.com/forums/p/7...30835.aspx

Ho provato a trasferire il gioco su MU.
Ci mette tipo il 70% in meno... il livello 2 (un puttanaio di grafica) da quasi due minuti a 25 secondi netti...

Però non ho capito bene come mai la MU è più veloce dell'HD...

Paolo Cattaneo
[Immagine: sblgtk.png] Raven Travel Studios (pls follow us ^^)
"Ogni buon lavoro software nasce da un problema personale di uno sviluppatore."
17-06-2012 16:47
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
dany_dev
Posting Freak

Messaggi: 3,990
Registrato: Sep 2010
Offline Offline
#5 RE: L'Hard Disk della 360, caricamenti...
0
(10-02-2012 11:26)kuma ha scritto:  si, è molto lento. io ho risolto facendo dei micro caricamenti su thread diversi

Io non ho mai sviluppato per xbox, ma questo come potrebbe aiutare la lettura da hard disk?...il collo di bottiglia è l'hard disk immagino, non la cpu. Mentre quello che dice Magic ha perfettamente senso.
(Questo messaggio è stato modificato l'ultima volta il: 17-06-2012 17:00 da dany_dev.)
17-06-2012 16:59
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
kuma
Senior Member

Messaggi: 373
Registrato: Jun 2011
Offline Offline
#6 R: L'Hard Disk della 360, caricamenti...
0
Ti spiego, quando inizio la partita invece di caricare tutto tipo player più tutti nemici, con 25 Sprite a testa era molto lento.

Quindi carico solo il player e il primo nemico e quando mi serve qualcos'altro non ancora caricato lo faccio in un thread separato.



Inviato dal mio Liquid MT con Tapatalk 2

Fabio Menta
facebook
(Questo messaggio è stato modificato l'ultima volta il: 17-06-2012 17:09 da kuma.)
17-06-2012 17:09
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
KappeiJin
Ghoulsa e Ghosta

Messaggi: 887
Registrato: Jan 2011
Offline Offline
#7 RE: R: L'Hard Disk della 360, caricamenti...
0
(17-06-2012 17:09)kuma ha scritto:  Ti spiego, quando inizio la partita invece di caricare tutto tipo player più tutti nemici, con 25 Sprite a testa era molto lento.

Quindi carico solo il player e il primo nemico e quando mi serve qualcos'altro non ancora caricato lo faccio in un thread separato.



Inviato dal mio Liquid MT con Tapatalk 2

Cioè carichi mente il player gioca!?!? Ma non ti inchioda il framerate? Sorriso

Paolo Cattaneo
[Immagine: sblgtk.png] Raven Travel Studios (pls follow us ^^)
"Ogni buon lavoro software nasce da un problema personale di uno sviluppatore."
17-06-2012 17:10
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
dany_dev
Posting Freak

Messaggi: 3,990
Registrato: Sep 2010
Offline Offline
#8 RE: R: L'Hard Disk della 360, caricamenti...
0
(17-06-2012 17:09)kuma ha scritto:  Ti spiego, quando inizio la partita invece di caricare tutto tipo player più tutti nemici, con 25 Sprite a testa era molto lento.

Quindi carico solo il player e il primo nemico e quando mi serve qualcos'altro non ancora caricato lo faccio in un thread separato.



Inviato dal mio Liquid MT con Tapatalk 2

ah ok, praticamente un lazy loading "anticipato manualmente", ma è abbastanza palloso da implementare qualcosa che carica qualcosa che ti servirà....e se lo fai semplicemente quando devi accedervi (ossia il classico lazy loading), rischi che il caricamento avviene troppo tardi.....
(Questo messaggio è stato modificato l'ultima volta il: 17-06-2012 17:21 da dany_dev.)
17-06-2012 17:20
Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
kuma
Senior Member

Messaggi: 373
Registrato: Jun 2011
Offline Offline
#9 R: L'Hard Disk della 360, caricamenti...
0
Esatto! E no, mi gira tutto e sempre A 60 fps perché per l'appunto lo faccio su un'altra thread Smile

Inviato dal mio Liquid MT con Tapatalk 2

Fabio Menta
facebook
(Questo messaggio è stato modificato l'ultima volta il: 17-06-2012 17:22 da kuma.)
17-06-2012 17:22
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
-=Magic=-
Senior Member

Messaggi: 330
Registrato: Jul 2011
Offline Offline
#10 RE: L'Hard Disk della 360, caricamenti...
0
su MRGP2 uso 3 thread per il caricamento, ma è una soluzione "parziale" poichè l'elaborazione viene fatta usando il grapichdevice che ha un accesso sequenziale. se elabora un'immagine non può farne un'altra.. il guadagno non è così rilevante.

mentre si guadagna un botto usando lo spritepacker.

nota:
i caricamente sono + lenti se usi ccgame, rispetto a quelli che poi si avranno scaricando il gioco dal marketplace.

Sito Web | Magic Racing GP 2 - Xbox 360
17-06-2012 22:10
Visita il sito web di questo utente Trova tutti i messaggi di questo utente Cita questo messaggio nella tua risposta
Rispondi 


Vai al forum: