[d3d] 3D e depth
- Homunculus
- Admin
- Messaggi: 6840
- Iscritto il: 25/11/2007, 20:36
- Contatta:
[d3d] 3D e depth
Non riesco a capire come influisca la depth nel 3d di game maker. Ho fatto alcune prove, e ottengo risultati strani. Ho creato uno skybox da usare come sfondo, gli ho dato una depth altissima e ora oggetti che dovrebbero essere fuori dallo skybox sono disegnati all'interno (corretto per altro come effetto). Pero lo stesso ragionamento trai altri oggetti non funziona, sono sempre disegnati secondo la profondita. Sapete dirmi brevemente il funzionamento quindi di depth in 3d?
- maz85
- Admin
- Messaggi: 8287
- Iscritto il: 07/02/2004, 15:57
- Specialità: Nientologo
- Località: Oblio
- Contatta:
Re: 3D e depth
Io ho sempre disegnato senza dare importanza al depth dell'istanza, solo la posizione dell'oggetto determina la sua "profondità" ovvero cosa copre e da cosa è coperto (in base alla cam).
Però se non erro c'è un discorso di priorità nel disegnare gli oggetti per essere visualizzati dalla telecamera.
Sto notando in un progetto 3d che ho dato maggiore depth alla cam (1) mentre gli altri oggetti 3d hanno depth 0.
Domani provo a dare un'occhiata e a variare.
Edit: rettifico la seconda parte, ho provato a modificare depth, no problem di visualizzazione.
Però se non erro c'è un discorso di priorità nel disegnare gli oggetti per essere visualizzati dalla telecamera.
Sto notando in un progetto 3d che ho dato maggiore depth alla cam (1) mentre gli altri oggetti 3d hanno depth 0.
Domani provo a dare un'occhiata e a variare.
Edit: rettifico la seconda parte, ho provato a modificare depth, no problem di visualizzazione.
Votate GmItalia nella classifica!
Ultime dal fronte.... notizie e altro sul sito di GmItalia
°Pagina personale: % di sviluppo giochi e altro°
Ultime dal fronte.... notizie e altro sul sito di GmItalia
°Pagina personale: % di sviluppo giochi e altro°
- Homunculus
- Admin
- Messaggi: 6840
- Iscritto il: 25/11/2007, 20:36
- Contatta:
Re: 3D e depth
Quello che mi ha dato da pensare é proprio lo skybox. Io disegno le pareti a distanza 5 dalla telecamera, quindi un oggetto che si trova a distanza 200 dovrebbe essere chiaramente non visibile. È effettivamente cosi se l'oggetto ha la stessa depth dello skybox, ma aumentando la depth dello skybox l'oggetto pur trovandosi palesemente lontano risulta visibile.
La cosa buffa é che questo comportamento lo ottengo solo tra skybox e altri oggetti, e non tra gli altro oggetti uno con l'altro. Mah... fintanto che funziona...
La cosa buffa é che questo comportamento lo ottengo solo tra skybox e altri oggetti, e non tra gli altro oggetti uno con l'altro. Mah... fintanto che funziona...
Ultima modifica di Homunculus il 29/06/2009, 12:13, modificato 2 volte in totale.
- BaronVsCorsar
- GMI VIP
- Messaggi: 4699
- Iscritto il: 14/02/2004, 12:05
- Specialità: Saccenza
- Uso: GameMaker 8.1
- Località: Ferrara
- Contatta:
Re: 3D e depth
la depth influenza l'ordine di esecuzione dell'evento draw nei vari oggetti (mentre la posizione nel 3D è dato dalle primitive che vengono chiamate, anche se l'ordine fosse sbagliato dovrebbero venire disegnate e/o coperte correttamente).
Il problema che io ho incontrato sono principalmente:
- nel settaggio della telecamera e projection (andrebbe fatto nel draw del primo oggetto)
- nel disegnare in 2D sovraimpresso (proiezione ortoganale classica), andrebbe fatto nell'ultimo oggetto.
Se non hai problemi di dover passare dal "3D" al "2D" durante l'evento draw non ti dovresti accorgere di molto, mentre diventa piuttosto importante se disegni informazioni 2D sovrapposte all'ambiente 3D (per intederci: scheda personaggi, hud, ecc. ecc.).
Il problema che io ho incontrato sono principalmente:
- nel settaggio della telecamera e projection (andrebbe fatto nel draw del primo oggetto)
- nel disegnare in 2D sovraimpresso (proiezione ortoganale classica), andrebbe fatto nell'ultimo oggetto.
Se non hai problemi di dover passare dal "3D" al "2D" durante l'evento draw non ti dovresti accorgere di molto, mentre diventa piuttosto importante se disegni informazioni 2D sovrapposte all'ambiente 3D (per intederci: scheda personaggi, hud, ecc. ecc.).
Schiva questo - http:\\baronvscorsar.altervista.org
by Lego: Vado in un bar e faccio "votiamo che quel tizio la in fondo venga buttato fuori", ma perché?
by Lego: Vado in un bar e faccio "votiamo che quel tizio la in fondo venga buttato fuori", ma perché?
- maz85
- Admin
- Messaggi: 8287
- Iscritto il: 07/02/2004, 15:57
- Specialità: Nientologo
- Località: Oblio
- Contatta:
Re: 3D e depth
Ora che mi ci fai pensare spesso gli oggetti creati dopo non vengono presi in considerazione dalla projection e appaiono "flat" quindi ricordo che ho dovuto agire di depth in qualche progetto.BaronVsCorsar ha scritto::
- nel settaggio della telecamera e projection (andrebbe fatto nel draw del primo oggetto)
- nel disegnare in 2D sovraimpresso (proiezione ortoganale classica), andrebbe fatto nell'ultimo oggetto.
Per gli hud ho sempre usato con successo questo codice, senza problema di ordine o di oggetto:
Codice: Seleziona tutto
d3d_set_projection_ortho(0,0,800,600,0);
d3d_set_hidden(false);
//draw_rectangle(0,280,320,480,0);
d3d_set_hidden(true);
Votate GmItalia nella classifica!
Ultime dal fronte.... notizie e altro sul sito di GmItalia
°Pagina personale: % di sviluppo giochi e altro°
Ultime dal fronte.... notizie e altro sul sito di GmItalia
°Pagina personale: % di sviluppo giochi e altro°
- Homunculus
- Admin
- Messaggi: 6840
- Iscritto il: 25/11/2007, 20:36
- Contatta:
Re: 3D e depth
In effetti maz dopo qualche test sembra che la depth venga prersa in considerazione in particolare quando si ha d3d_set_hidden(false); , cosa che faccio senza volerlo nel mio skybox e che da quindi l'effetto giusto. Immagino che anche nell'hud quindi abbia senso che indipendentemente dalla distanza sia sempre visibile.
- BaronVsCorsar
- GMI VIP
- Messaggi: 4699
- Iscritto il: 14/02/2004, 12:05
- Specialità: Saccenza
- Uso: GameMaker 8.1
- Località: Ferrara
- Contatta:
Re: 3D e depth
se dopo aver settato la projection orto continui a disegnare delle primitive 3D ovviamente ti ritrovi con effetti sbagliati,
ma se continui con altri oggetti che disegnano in 2D è tutto ok.
Non necessariamente si ha un problema passando 2D/3D, dipende da cosa si sta progettando di fare ovviamente.
Anche se settate tutte le projection in ogni oggetto non dovrebbero esserci problemi... ma non ho mai provato.
Meglio pianificare con corretto depth in ogni oggetto
ma se continui con altri oggetti che disegnano in 2D è tutto ok.
Non necessariamente si ha un problema passando 2D/3D, dipende da cosa si sta progettando di fare ovviamente.
Anche se settate tutte le projection in ogni oggetto non dovrebbero esserci problemi... ma non ho mai provato.
Meglio pianificare con corretto depth in ogni oggetto
Schiva questo - http:\\baronvscorsar.altervista.org
by Lego: Vado in un bar e faccio "votiamo che quel tizio la in fondo venga buttato fuori", ma perché?
by Lego: Vado in un bar e faccio "votiamo che quel tizio la in fondo venga buttato fuori", ma perché?
- civic71
- GMI Advanced
- Messaggi: 2210
- Iscritto il: 23/10/2003, 17:31
- Specialità: Risotto con zucchine
- Uso: GM:Studio 1.4 Pro
- Località: Jesolo (venezia)
- Contatta:
Re: 3D e depth
Non uso il 3d di Game maker ma farei delle prove con :Non riesco a capire come influisca la depth nel 3d di game maker.
Codice: Seleziona tutto
depth-=y;
Codice: Seleziona tutto
depth-=distance_to_point(x,y,camera.x,camera.y)
- Homunculus
- Admin
- Messaggi: 6840
- Iscritto il: 25/11/2007, 20:36
- Contatta:
Re: 3D e depth
Grazie civic, in realtà mi sono gia risposto da solo dopo alcune prove. La depth influisce sull'ordine di disegno, quindi in linea di massima influenza solo le trasparenze o cio che viene disegnato con d3d_set_hidden(false); (se si usa la prospettiva).
Chi c’è in linea
Visitano il forum: Nessuno e 26 ospiti