Blender, basi per creare videogame, guida per grafici e pythonisti
Ultima modifica per la pagina: 18:24, 15 gen 2011.
Premessa
Con questo tutorial vi insegnerò le basi minime per usare blender, vi insegnerò come si aggiungono gli oggetti, come si editano, come si aggiungono materiali e le texture agli ogetti, come si modificano le luci, come si fa un test di rendering, come si preprara una scena minima per un videogioco 3D e come si progamma visualmente una sfera che si sposta e saltella con le freccie della tastiera.
Gli strumenti necessari
Una qualsiasi distro opensource
Scaricate blender 2.56 http://www.blender.org/download/get-256-beta/
attualmente in beta ma già fortemente stabile, dalla versione 2.57 sarà in RC.
Decomprimetelo e avviate l'eseguibile di blender
Vi ritroverete con l'interfaccia aperta, non fatevi spaventare da tutti quei bottoni, non serviranno per questo tutorial.
Guida minima all'interfaccia
La cosa essenziale che serve conoscere è come navigare nella 3d window ed interagire con gli oggetti al suo interno.
È importante sapere che blender è windows sensitive, cioè a seconda di dove si trova il cursore del mouse, funzioni e shortcut cambiano.
Il Tasto Centrale del Mouse
è importante per la navigazione nella 3D Window infatti:
- Con Tasto Centrale del Mouse
premuto, muovendo il mouse ruoterà tutta la 3D window attorno ad un fulcro o un oggetto.
- Con Shift + Tasto Centrale Mouse
premuti, attiverete il padding, cioè traslare la 3D window.
- Con Ctrl +
premuti e muovendo il mouse avanti o indietro attiverete lo zoom
- (funziona anche con la rotellina del mouse)
Il Tasto Destro del Mouse
serve per selezionare gli oggetti, o in caso si effettua un'operazione come ruotare o traslare un oggetto, ripremendolo annullerete l'operazione in corso
(funziona anche con Esc = annulla operazione =
)
Il Tasto Sinistro Mouse
serve per confermare le operazioni.
(equivale premendo il tasto Invio = conferma operazione=
)
Note per manipolare gli oggetti nello spazio g = grab (trasla) , r = ruota , s = scala una volta avviata l'esecuzione di uno dei manipolatori, premendo x si limita l'operazione al solo asse x, premendo y si limita l'operazione al solo asse y, premendo z si limita l'operazione al solo asse z esempio: se premete il tasto r per ruotare un oggetto, e subito dopo premete x , questo ruoterà solo attorno all'asse x
Fase 1: Prepariamo la scena, aggiungiamo e modifichiamo alcuni ogetti
Puliamo la scena
Selezionate l'oggetto quadrato che vedete nella 3DWindow con il
e premete dalla tastiera Canc
Per visionare dall'alto la scena tastierino numerico 7, visione frontale tasto numerico 1, visione laterale tasto numerico 3, switch vista prospettiva/vista ortografica tasto numerico 5.
Ripristinate il cursore 3d (cerchietto rosso e bianco) alla posizione x0 y0 z0 in caso lo abbiate spostato premendo i tasti shift + c
Creiamo un piano
Creiamo un piano con dei muri di protezione per non far cadere la sfera più avanti quando saranno aggiunte dinamica e movimento
Aggiungete ora un oggetto primitiva piano premendo shift + a → mesh → plane
Premete il tasto S
e scalate la primitiva plane appena creata più o meno quanto la griglia e premente
o
invio per confermare.
Con il piano selezionato entrate nella modalità Edit Mode premendo TAB
Noterete ora che agli angoli del piano ci sono dei punti arancioni di cui uno è bianco.Premete il tasto a (seleziona/deseleziona tutto) per deselezionare i punti.
Ora che è tutto deselezionato tenendo premuto Shift andate con il mouse vicino i punti e con
riselezionate uno ad uno tutti i 4 punti.
Premete il tasto e per estrudere il piano, alzatelo di qualche cm e premete
Passate dalla modalità Vertex Select Mode alla modalità Face Select mode selezionate con il mouse la faccia superiore e premete Canc → faces per cancellarla.
Premete TAB per uscire da Edit Mode
Creiamo una sfera
Centralizzate il cursore 3d (shift + c)
Create un secondo oggetto, questa volta una sfera
shift+a → mesh → UV spere.
Posizionate il mouse sulla freccia blu (asse Z) premete
e trascinate la sfera verso l'alto in modo che non intersechi più con il piano.
Smussiamo la sfera, dal pannello laterale a sinistra, Object Tools → Shading→ Smooth.
Test veloce di Rendering premete F12
Esc per ritornare alla visuale precendente.
Salvate con Ctrl + s
Fase 2: Game Engine e scena ottimizzata per OpenGL GLSL
Intro
Il Game engine è un motore dotato di tools che gestiscono la programmazione visuale e di tools manipolabili tramite api con Scripting in Python; Fisica degli oggetti: gravità , rigid body, soft body (gomma molle etc); Animazione Manuale e Parametrica; Gestione degli eventi di mouse , tastiere, joystick; Gestione delle scene a livelli, per dare la possibilità di creare intro, livelli gioco, livelli huds, etc. Inoltre gestisce audio 3D, eventi di collisione tra gli oggetti etc..
Note sulla gestione della Visuale Camera
Selezionate la camera con il
Tastierino numerico 0 entrate nella visuale camera prospettiva (è possibile selezionare la camera anche adesso cliccando con ilsul bordo della camera). Tasto g (grab) per traslare la camera in una posizione più comoda con il mouse (Esc o Invio per annullare o confermare) Premere una sola volta tasto r (rotate) per ruotare sull'asse della camera, due volte r per ruotare su tutti gli assi con il mouse (
per confermare,
per annullare)
Prepariamo la scena OpenGL con lo shading realtime GLSL
In alto al centro premente sul menu Blender Render ed impostate la modalità Blender Game
Velocemente dalla render Properties(icona macchina fotografica) sul pannello Shading selezionate GLSL, per attivare la modalità shading avanzato nella 3d window.
Dal menu appena sotto la 3D window impostate
la modalità Textured
È ora di modificare i materiali degli ogetti.
Assegniamo un colore al piano
Selezioniamo l'oggetto piano.
Nella Properties Window, cliccate sull'icona
(material properties)
se non trovate l'icona material è perchè è nascosta, cliccate sulle icone con il
e strascinatele a sinistra
Clicchiamo new material e poi scegliete un colore a voi consono cliccando sul colore bianco nel pannello diffuse
Assegniamo Una Texture alla Sfera
Selezioniamo l'oggetto sfera, aggiungiamo un materiale, e clicchiamo su texture properties
Clicchiamo su new texture
e da Type: clouds selezioniamoimage or movie.
Dal pannello
su new → selezioniamo → UV test grid → OK.
(abbiamo creato un'immagine)
adesso assegniamola alla sfera, affianco al tasto new noterete un tastino più piccolo con una icona immagine sopra, cliccateci e selezionate “untitled” (o il nome scelto in caso gliene avete dato uno alla texture)
selezioniamo da UV Grid a Color Grid perché colorato è più bello! :D
Adesso Modifichiamo la luce!
Selezionate la luce che si trova nella scena, noterete che nella Window Properties al posto dei materiali, trovate la luce (iconcina gialla), ciccateci e cambiate la sorgente di luce da Point a Spot e voilà un bel faretto puntato sulla vostra sferetta.
Siccome vi trovate in modalità Game , vi serve l'ombra Buffer Shadow, selezionatela dal pannello shadow.
Abbiamo finito con preparazione della scena in openGL
Ctrl+ s per salvare
Game Engine parte due: Settare la dinamica agli oggetti, e programmazione visuale con la Window Logic Editor,
Attiviamo con il tasto p sulla 3DWindow la modalità gioco!
Noterete che non cambia molto per ora.
Premete il Tasto Esc per uscire dalla modalità Gioco.
Settiamo la dinamica agli oggetti.
Selezioniamo la sfera
alziamola con il
sulla freccia blu (asse z) di qualche centimetro distante dal piano in modo da poter notare una caduta.
Premete p di nuovo e noterete che non succede nulla.
Esc ed uscite dalla modalità gicoo.
Dalla Window Properties a sinistra, selezionate l'ultima icona
Physics
Dal pannello Physics , Physics T: cambiamo da
Static a Dynamic
Attiviamo la modalità Gioco premendo il tasto p
Voilà la nostra sfera adesso ha proprietà fisiche.
Usciamo dalla modalità gioco con Esc.
La Logic Editor Window e la Programmazione Visuale
Logic Editor è un potente strumento di programmazione visuale, non serve scrivere quasi nulla per la programmazione di base. Non fatevi spaventare da tutte quelle finestre il sistema è molto semplice.
Allargate window inferiore (in questo caso è laTimeline Window) e dall'icona orologio in basso a estrema impostate la Logic Editor Window
nota
(zoom e padding funzionano anche sulla logic editor window con il)
Aggiungiamo i movimenti alla sfera
Aggiungiamo il movimento in avanti
Con la Sfera selezionata: nella Logic Window a spere
agiungiamo un sensore {
“add Sensor” → keyboard e nella sezione Key premiamo sul vuoto ed assegniamo il tasto Freccia Su
}
aggiungiamo un controller {
add controller → “AND”
}
ed infine aggiungiamo un attuatore {
add actuator → motion, e nella sezione loc ad x assegniamo 0.10 come valore
}
adesso tenendo premuto
sul puntino del sensore trasciniamolo ed agganciamolo al cerchietto del controller, facciamo la stessa cosa dal puntino del controller al cerchietto dell'attuatore.
Premete p e testate.
Premete Freccia su se avete fatto tutto giusto la palletta si sposta :D
Esc e continuate ripetendo le operazioni per ogni nuovo movimento da aggiungere.
Aggiungiamo Muovere Indietro alla sfera
Aggiungiamo un sensore keyboard assegnando "freccia giù", un controller "add" attuatore motion assegnando a loc il valore negativo x -0.10
Aggiungiamo Girare a Destra alla sfera:
Aggiungiamo nuovi sensore, controller, attuatore.
Assegna “freccia destra” al sensore keyboard
assegna all'attuatore motion il valorerot z 5 gradi
Aggungiamo Girare a Sinistra alla sfera:
Aggiungiamo nuovi sensore, controller, attuatore.
Assegna “freccia sinistra” al sensore keyboard
assegna all'attuatore motion il valorerot z -5 gradi (valore negativo)
Aggiungiamo il Salto alla sfera:
Aggiungiamo nuovi sensore, controller, attuatore.
Assegna “barra spaziatrice” alsensore keyboard
assegna all'attuatore motion il valore Loc z 0.10
in questo caso avrete un effetto Pulse perchè l'ogetto è soggetto a dinamica.
Premete p e testate.
Il vostro primo giochetto con blender è completo YUPPY :D
Trucchi ed anticipazioni:
Aggingere il VBO, Vertex Buffer Object
dal menu file → user preference → system → opengl: VBOs
Questa opzione, se avete schde video avanzate che supportano questa modalità, è utile per velocizzare le scene nei giochi.
Per i pythonisti:
noterete che nella sezione “add controller” del Logic Editor esiste un “add script”.
Questa modalità bypassa gli attuatori visuali, ed attiva la modalità scripting.
Gli script si creano attivando una Window Text editor → new o caricando un file..
la Text Window è avanzata, infatti supporta la colorazione e la formattazione python,
in più sono disponibili dei template python dal menu “Text”
Per visualizzare le api di blender menu help in alto → pyhton api reference.
E per finire, la ciliegina sulla torta....
Ora siete esperti di Blender... bhe quasi... xD
Buon divertimento!
--Amonpaike 19:24, 12 gen 2011 (UTC)
Questa pagina è stata letta 4.555 volte.


























