Pagina 1 di 1

Come faccio a disegnare una stanza?

Inviato: 02/06/2014, 19:37
da Paperpaint
In realtà le cose che voglio chiedervi sono diverse.
Ho visto un tutorial su come creare una stanza e un object player 3d.
La cosa negativa dei tutorial però, e che non ci sono in italiano, e quelli che sono in inglese non sono fatti bene, perché?
Semplicemente perché man mano che scrivono, non ti spiegano ciò che scrivono!

Quindi,essenzialmente, il codice non si può imparare a memoria, assurdo. E' ovvio che bisogna conoscere un linguaggio intero, per poi arrivare con la propria logica a costruire le proprie regole, ragionando ottieni i risultati(se non siete come me che sono alle prime armi).

ma per esempio:
direction -= (display_mouse_get_x()-(display_get_width()/2))/5;
Io di questa riga ho capito solo che la direzione della telecamera dipende dalla posizione del mouse sull'asse x, il resto non l'ho capito, soprattutto quel /2 e /5.
Questa è solo una parte del codice, mi ci vorrebbe qualcuno ce me lo facesse comprendere, ma sono venuto per altro qui.

come faccio a: fare in modo che il personaggio si muova con wasd e a disegnare una stanza con relative mura? Ovviamente i muri devono bloccare il player, evitando diciamo l'effetto fantasma lol.

Vorrei fare un gioco horror, quindi mi servono tante cose, incominciamo da queste.
Grazie. :)

Re: Come faccio a disegnare una stanza?

Inviato: 02/06/2014, 21:08
da Cash
Paperpaint ha scritto:In realtà le cose che voglio chiedervi sono diverse.
Ho visto un tutorial su come creare una stanza e un object player 3d.
La cosa negativa dei tutorial però, e che non ci sono in italiano, e quelli che sono in inglese non sono fatti bene, perché?
Semplicemente perché man mano che scrivono, non ti spiegano ciò che scrivono!

Quindi,essenzialmente, il codice non si può imparare a memoria, assurdo. E' ovvio che bisogna conoscere un linguaggio intero, per poi arrivare con la propria logica a costruire le proprie regole, ragionando ottieni i risultati(se non siete come me che sono alle prime armi).

ma per esempio:
direction -= (display_mouse_get_x()-(display_get_width()/2))/5;
Io di questa riga ho capito solo che la direzione della telecamera dipende dalla posizione del mouse sull'asse x, il resto non l'ho capito, soprattutto quel /2 e /5.
Questa è solo una parte del codice, mi ci vorrebbe qualcuno ce me lo facesse comprendere, ma sono venuto per altro qui.

come faccio a: fare in modo che il personaggio si muova con wasd e a disegnare una stanza con relative mura? Ovviamente i muri devono bloccare il player, evitando diciamo l'effetto fantasma lol.

Vorrei fare un gioco horror, quindi mi servono tante cose, incominciamo da queste.
Grazie. :)
Quella linea indica di quanto si è spostato il mouse dal centro dello schermo,io la uso per modificare la direzione del giocatore per fare mouselook per un fps. Nessuno spiega niente del 3D perchè sono cose che leggendo il manuale sono immediate,vuoi disegnare un cubo?d3d_draw_block(x1,y1,z1,x2,y2,z2 etc). Una sfera?d3d_draw_elipsoid. Vuoi modificare la prospettiva dal quale si guarda?d3d_set_projection. Per quello che chiedi tu:
Crea un gioco con vista dall'alto dove ti puoi muovere con wasd MA premendo W il personaggio va avanti alla direzione che è rivolto,direzione=90° va su,direzione=0° va a destra etc. Per far diventare tutto 3D devi usare d3d_set_projection e POI disegnare tutto(fatti uno script per non doverti riscrivere ogni volta lo stesso comando,che è lunghetto). Per mouselook:controlli se il mouse si è mosso dal centro dello schermo e se si poi giri il personaggio,internet è pieno di questi esempi. Ricordati che in 3D bisogna occuparsi di molte più cose del 2D,non è impossibile ma se fai fatica con una cosa come quella dell'ultimo topic forse è meglio che fai qualche passo indietro

Re: Come faccio a disegnare una stanza?

Inviato: 02/06/2014, 21:17
da Paperpaint
Cash ha scritto:
Paperpaint ha scritto:In realtà le cose che voglio chiedervi sono diverse.
Ho visto un tutorial su come creare una stanza e un object player 3d.
La cosa negativa dei tutorial però, e che non ci sono in italiano, e quelli che sono in inglese non sono fatti bene, perché?
Semplicemente perché man mano che scrivono, non ti spiegano ciò che scrivono!

Quindi,essenzialmente, il codice non si può imparare a memoria, assurdo. E' ovvio che bisogna conoscere un linguaggio intero, per poi arrivare con la propria logica a costruire le proprie regole, ragionando ottieni i risultati(se non siete come me che sono alle prime armi).

ma per esempio:
direction -= (display_mouse_get_x()-(display_get_width()/2))/5;
Io di questa riga ho capito solo che la direzione della telecamera dipende dalla posizione del mouse sull'asse x, il resto non l'ho capito, soprattutto quel /2 e /5.
Questa è solo una parte del codice, mi ci vorrebbe qualcuno ce me lo facesse comprendere, ma sono venuto per altro qui.

come faccio a: fare in modo che il personaggio si muova con wasd e a disegnare una stanza con relative mura? Ovviamente i muri devono bloccare il player, evitando diciamo l'effetto fantasma lol.

Vorrei fare un gioco horror, quindi mi servono tante cose, incominciamo da queste.
Grazie. :)
Quella linea indica di quanto si è spostato il mouse dal centro dello schermo,io la uso per modificare la direzione del giocatore per fare mouselook per un fps. Nessuno spiega niente del 3D perchè sono cose che leggendo il manuale sono immediate,vuoi disegnare un cubo?d3d_draw_block(x1,y1,z1,x2,y2,z2 etc). Una sfera?d3d_draw_elipsoid. Vuoi modificare la prospettiva dal quale si guarda?d3d_set_projection. Per quello che chiedi tu:
Crea un gioco con vista dall'alto dove ti puoi muovere con wasd MA premendo W il personaggio va avanti alla direzione che è rivolto,direzione=90° va su,direzione=0° va a destra etc. Per far diventare tutto 3D devi usare d3d_set_projection e POI disegnare tutto(fatti uno script per non doverti riscrivere ogni volta lo stesso comando,che è lunghetto). Per mouselook:controlli se il mouse si è mosso dal centro dello schermo e se si poi giri il personaggio,internet è pieno di questi esempi. Ricordati che in 3D bisogna occuparsi di molte più cose del 2D,non è impossibile ma se fai fatica con una cosa come quella dell'ultimo topic forse è meglio che fai qualche passo indietro
Ma sbaglio o c'era un plug in per gm che permetteva di modellare la propria mappa?

Re: Come faccio a disegnare una stanza?

Inviato: 03/06/2014, 19:09
da Paperpaint
E comunque mi serve, sapere come creare l'ambiente, non tanto come disegnare un solido.

Re: Come faccio a disegnare una stanza?

Inviato: 03/06/2014, 19:30
da Cash
Paperpaint ha scritto:E comunque mi serve, sapere come creare l'ambiente, non tanto come disegnare un solido.
Nel create event di un oggetto qualunque scrivi:

Codice: Seleziona tutto

d3d_start();
draw_set_color(c_white);
poi nel draw event di qualunque altro oggetto

Codice: Seleziona tutto

d3d_set_projection(blabla)//Per mettere una prospettiva diversa da quella vista dall'alto
d3d_draw_wall(x1,y1,z1,x2,y2,z2,texture,ripetizioneOrizzontaleTexture,ripVerticaleTexture)
Una nota:se non metti draw_set_color(c_white) vedrai tutte le texture nere. Per mettere una texture devi scrivere nel campo texture
sprite_get_texture(sprite,subimage) per sprite
background_get_texture(background per texture) per backgrounds
Inoltre puoi far ripetere una texture solo se è un multiplo di 2,se no ti si fotterà tutto in parole semplici

Re: Come faccio a disegnare una stanza?

Inviato: 03/06/2014, 20:26
da Paperpaint
Cash ha scritto:
Paperpaint ha scritto:E comunque mi serve, sapere come creare l'ambiente, non tanto come disegnare un solido.
Nel create event di un oggetto qualunque scrivi:

Codice: Seleziona tutto

d3d_start();
draw_set_color(c_white);
poi nel draw event di qualunque altro oggetto

Codice: Seleziona tutto

d3d_set_projection(blabla)//Per mettere una prospettiva diversa da quella vista dall'alto
d3d_draw_wall(x1,y1,z1,x2,y2,z2,texture,ripetizioneOrizzontaleTexture,ripVerticaleTexture)
Una nota:se non metti draw_set_color(c_white) vedrai tutte le texture nere. Per mettere una texture devi scrivere nel campo texture
sprite_get_texture(sprite,subimage) per sprite
background_get_texture(background per texture) per backgrounds
Inoltre puoi far ripetere una texture solo se è un multiplo di 2,se no ti si fotterà tutto in parole semplici
E se voglio fare una serie di corridoi, porte etc devo fare sto casino? non si possono posizionare dall'alto o roba simile, non credo sia possibile disegnare un ambiente SCRIVENDO codice, è da spararsi D:

Re: Come faccio a disegnare una stanza?

Inviato: 04/06/2014, 17:41
da Cash
Puoi creare un oggetto per ogni elemento e mettere nel draw event di ognuno di questi il codice per disegnarlo e poi li puoi mettere con l'editor delle room di GM,ma hai solo 2 dimensioni visibili e se vuoi,per esempio, mettere una piattaforma ad altezza 40px,una a 30px,una a 20,una a 10 dovrai piazzarle tutte e modificare il creation code per ogni piattaforma. Oppure ti fai il tuo editor di room che crea un codice che poi piazzi nel creation code della room per fare il livello

Re: Come faccio a disegnare una stanza?

Inviato: 04/06/2014, 18:23
da Jak
Esistono cose chiamate programmi di modellazione.

Re: Come faccio a disegnare una stanza?

Inviato: 05/06/2014, 17:36
da aironenero
Jak ha scritto:Esistono cose chiamate programmi di modellazione.
esistono engines fatti specificatamente per il 3D, esempio: unreal engine, unity engine, cry engine, fox engine ecc...

Re: Come faccio a disegnare una stanza?

Inviato: 06/06/2014, 18:39
da legogo
Mi dite il migliore sia gratis che a pagamento, ho un gioco 3D bellissimo per la testa, epico e complesso, ma se mi riesce, la mia vita sarebbe completa.
se mi riesce ve lo posto, tra minimo 4 anni di duro lavoro

Re: Come faccio a disegnare una stanza?

Inviato: 06/06/2014, 19:22
da mac12
legogo ha scritto:Mi dite il migliore sia gratis che a pagamento, ho un gioco 3D bellissimo per la testa, epico e complesso, ma se mi riesce, la mia vita sarebbe completa.
se mi riesce ve lo posto, tra minimo 4 anni di duro lavoro
prima di tutto impara i fondamenti della programmazione usando game maker, dopo aver fatto 3-4 giochi(a "difficoltà di programmazione" sempre più alta), impara ad usare la dll(per gm) ultimate 3d, in modo da imparare le basi del 3d, e poi passa a Unity.
(consiglio, poi ognuno fa come vuole)

Re: Come faccio a disegnare una stanza?

Inviato: 06/06/2014, 20:10
da aironenero
consiglio mio: impara i fondamenti di un linguaggo OOP, poi passa a unity, impara un po di modellazzione e texturizzazione, poi scatena la fantasia e crea il nuovo best seller (in un futuro moooooooooooooooooooooooooooooolto lontano :asd: )

Re: Come faccio a disegnare una stanza?

Inviato: 07/06/2014, 15:04
da legogo
grazie che non credete in me.... :asd:
comunque, per ora uso game maker per fare il mio primo gioco serio, che è tlmente semplice che di sicuro tutti lo avete fatto.
poi ve lo posto su giochi completi, spero entro 1 o 2 mesi.

Re: Come faccio a disegnare una stanza?

Inviato: 22/06/2014, 12:54
da aironenero
legogo ha scritto:grazie che non credete in me.... :asd:
comunque, per ora uso game maker per fare il mio primo gioco serio, che è tlmente semplice che di sicuro tutti lo avete fatto.
poi ve lo posto su giochi completi, spero entro 1 o 2 mesi.
Qualunque engine è in grado di fare lo stesos lavoro, ma ogni engine è specifico per una certa cosa (ed ha licenze diverse, più o meno convenienti), per esempio Cry engine è nato per gli FPS, Fox engine per i top down 3D (è il motore di Pes 2014), UDK e Unity sono i più generici.