Dezvoltarea jocurilor 3D cu ShiVa3D Suite Editorul ShiVa

Curios despre dezvoltarea jocurilor 3D? Acum este momentul să înveți! Această serie de tutori din cinci părți va demonstra cum să construiți un joc simplu cu ShiVa3D Suite, un motor de joc 3D și un instrument de creație. În această a doua tranșă, veți învăța cum să utilizați fișierele model ShiVa Editor și Collada.


Folosind editorul ShiVa

În partea a 1 a acestui tutorial, am introdus aplicația tutorial, am discutat diverse concepte ShiVa3D și principalele instrumente din suita ShiVa3D. De asemenea, am explicat fișierele din arhiva de descărcare care însoțește acest tutorial. În partea a doua, vom începe să discutăm cum să dezvoltăm jocul folosind Editorul ShiVa. Vom introduce modulele Editor ShiVa utilizate în dezvoltarea aplicației tutorial. Apoi, vom vorbi despre fișierele modelului Collada reprezentând caracterele principale din aplicație. În cele din urmă, vom discuta pașii inițiale folosiți pentru a crea aplicația, cum ar fi crearea jocului și a scenei, precum și importul modelelor Collada.


Module editor ShiVa

În primul rând, să oferim o prezentare rapidă a diferitelor module din Editorul ShiVa. Am împrumutat majoritatea acestor informații din documentația Ajutor pentru Editorul ShiVa.

Data Explorer este un manager de resurse care oferă acces la diferite elemente ale jocului, inclusiv jocul propriu-zis, scene, AIModeluri, materiale etc. Interfața sa de utilizator prezintă aceste resurse într-o structură de directoare ierarhică.

Editor de jocuri este modulul principal al editorului care permite editorului să editeze resursa jocului. De exemplu, editorul de jocuri editor poate defini scenele și AIModelul asociat jocului.

Vizualizatorul de scene permite dezvoltatorului să vizualizeze scenele din joc și modelele din aceste scene.

Scena Explorer este un modul separat independent de vizualizatorul de scenă. Dezvoltatorul va utiliza în principal exploratorul de scenă pentru a găsi și gestiona resursele într-o scenă.

Editor de atribute este folosit pentru a edita diferite atribute ale unui obiect. Aceste atribute includ traducerea, rotirea și scara obiectului, precum și atributele grupate sub titluri, cum ar fi vizibilitatea, lumina, senzorul, coliziunea etc..

Editorul materialelor este un editor WYSIWYG pentru a crea și edita materiale în joc.

Editor de ambianță este folosit pentru a edita atributele vizuale ale unei scene, cum ar fi culoarea, iluminatul și diferitele efecte vizuale.

Editorul AIModel permite dezvoltatorului să editeze AIModeluri. Cu editorul AIModel, puteți defini variabile, funcții, stări și operatori pentru un AIModel.

Script Editor este folosit pentru a edita scripturile unui AIModel.


Obținerea fișierelor de jocuri necesare

În primul rând, aveți nevoie de următoarele patru fișiere, care fac parte din descărcările care însoțesc tutorialul.

  • duck.dae, duckCM.tga: Fișierele respective reprezintă modelul Collada al rață. Puteți descărca, de asemenea, cele din sursa lor originală. În pagina de pornire a site-ului, faceți clic pe link-ul Model Bank și apoi conectați-vă sau optați pentru accesul anonim, dând clic pe link-ul "Click aici pentru acces anonim". Apoi, mergeți la Secțiunea publică -> COLLADA 1.4.1 Probele de bază -> Duck. Descarcă duck.dae și duckCM.tga. (Pentru informații despre formatul grafic Collada, intrarea Wikipedia aferentă este un bun punct de pornire.)
  • sphere.dae: Acest fișier reprezintă modelul Collada al oului. Puteți să o descărcați de la Model Bank în locația sa inițială, similar cu cele de mai sus, urmând Secțiunea publică -> COLLADA 1.4.1 Basic Samples -> Sphere. (După cum sugerează și numele, aceasta este de fapt o sferă. Vom explica mai târziu cum să ne jucăm cu dimensiunile ei pentru ao face ouă.)
  • marble.jpg: Acest fișier reprezintă imaginea de fundal "skybox". Este o secțiune dintr-un fișier mai mare, 1213316117-7.jpg, descărcat de la http://www.texturewarehouse.com.

Creați jocul și scenă

Porniți editorul ShiVa. Din meniul barei de sus, selectați Principal -> Proiecte -> Adăugați. Introduceți o cale a dosarului pentru a stoca jocul. (Am ales D: \ temp \ Duck.)

Figura 10. Crearea Proiectului

Apăsați Închidere. În Data Explorer, ar trebui să vedeți acum un dosar de nivel superior numit Duck. Selectați folderul Jocuri și, din meniul cu butonul din dreapta, selectați Creare -> Joc. Denumiți și jocul Duck.

Figura 11. Crearea jocului

Jocul trebuie să fie vizibil în Data Explorer când selectați folderul Jocuri, după cum se arată mai jos.

Figura 12. Jocul în Data Explorer

În Data Explorer, derulați în jos pentru a selecta directorul Scene. Din meniul cu butonul din dreapta, selectați Creare -> Scene. Denumiți-o MyScene.

Figura 13. Crearea scenei

Ar trebui să vedeți scena nou creată în Data Explorer când este selectat directorul Scene, după cum se arată mai jos.

Figura 14. Scena în Data Explorer

Import și configurarea modelelor

Acum vom importa modelele pentru rață și ouă. Pentru comoditate, am plasat toate cele trei fișiere, duck.dae, sphere.dae și duckCM.tga, în același director, D: \ temp \ collada_models. În mediul dvs., dacă plasați aceste fișiere într-o altă locație, asigurați-vă că înlocuiți corespunzător instrucțiunile de mai jos.

În Data Explorer, selectați Import -> Model, după cum se arată mai jos.

Figura 15. Importarea unui model

În caseta de dialog Fișier pentru a importa câmpul de text, alegeți calea completă la duck.dae. Nu modificați nimic în dialog. Apăsați Import (vezi mai jos).

Figura 16. Importarea modelului pentru rață

După ce importul este finalizat, ar trebui să vedeți mesajul Import succesat, după cum se arată mai jos. Apăsați OK pentru a renunța la dialog.

Figura 17. Importați dialogul complet

Repetați importul pentru ou, sphere.dae. Dialogul pentru importul sphere.dae este prezentat mai jos.

Figura 18. Importul modelului pentru ou

Acum, ar trebui să vedeți rața și sfera din lista de modele atunci când folderul Modele este selectat în Data Explorer. Acest lucru este prezentat mai jos.

Figura 19. Modele în Data Explorer

Apoi, vom plasa aceste modele în scenă. Aduceți Editorul de jocuri și aplicația Data Explorer. În Data Explorer, faceți dublu clic pe Duck în dosarul Jocuri. Jocul va fi încărcat în Editorul de jocuri. În Editorul de jocuri, selectați fila Scene. În Data Explorer, selectați directorul Scene și trageți și plasați MyScene în fila Scene din Editorul jocurilor (vedeți mai jos).

Figura 20. Scena în joc

Aduceți scenografia Scenă și Data Explorer una lângă alta. În Data Explorer, selectați directorul Scene și faceți dublu clic pe MyScene. În Data Explorer, selectați folderul Modele. Glisați și fixați rața din dosarul Modele în Vizualizatorul de scene. În mod similar, trageți și plasați sfera din dosarul Modele în Vizualizatorul de scene.

Acum, MyScene are ambele modele în ea. Cu toate acestea, trebuie să ajustăm locația și dimensiunea acestor modele. De asemenea, vom adăuga senzori de coliziune la rață și ouă. Aduceți editorul atributelor și exploratorul scenariilor unul lângă altul. În Data Explorer, faceți dublu clic pe MyScene. În fila Explorare scenă, Obiecte trebuie să vedeți DefaultCamera, rață și sferă. Selectați DefaultCamera din Exploratorul scenelor. În secțiunea Atribute comune din editorul de atribute, setați valorile traducerii la 6, 7 și 5 pentru axele X, Y și Z, respectiv. (Vezi mai jos.)

Figura 21. Atributele camerei

Acum, selectați rața din Exploratorul scenelor. În secțiunea Atribute comune din Editorul de atribute, setați valorile Traducere la 2, 3 și 2 pentru axele X, Y și Z, respectiv. De asemenea, setați valorile Scale la 0.01, 0.01 și 0.01 pentru toate cele trei axe, după cum se arată mai jos.

Figura 22. Atribute pentru Duck

Apoi, în Exploratorul de Scene, selectați rață și din meniul clic dreapta, Atribuiri -> Senzor -> Adăugați un senzor de sferă așa cum se arată mai jos.

Figura 23. Adăugarea senzorului la rață

În Exploratorul scenelor, selectați secțiunea Atribute senzor. Definiți valorile de offset pentru a fi 0, 55, 0 și Size = 75. Aceasta este prezentată mai jos.

Figura 24. Configurarea senzorului pentru rață

Selectați sfera din Exploratorul de scene. În secțiunea Atribute comune din Editorul de atribute, setați valorile Traducere la 0, 3 și 0 pentru axele X, Y și Z, respectiv. De asemenea, setați valorile Scale la 0,4, 0,4 și 0,5 după cum se arată mai jos. (Vom micșora puțin scara z, pentru a da o formă de ouă modelului sferic.)

Figura 25. Atribute pentru ou

Acum, în Exploratorul de scene, selectați sfera și din meniul cu clic dreapta, Atribuiri -> Senzor -> Adăugați un senzor de sferă. În Exploratorul scenelor, selectați secțiunea Atribute senzor. Definiți valorile de offset pentru a fi 0, 0, 0 și Size = 1.1.

Figura 26. Configurarea senzorului pentru ou

Editați materialele pentru rață și ou

Acum vom edita materialele pentru rață și ouă. Aduceți editorul de materiale și Exploratorul de date sus una lângă alta și selectați folderul Materiale din Data Explorer. Faceți dublu clic pe materialul cu numele fișierului duck_blinn3, după cum se arată mai jos.

Figura 27. Material Editor pentru rață

În secțiunea de Editare Material, Iluminare, bifați Receive Lighting Static, Per Vertex. Sub Shadowing, verificați umbrele statice. Reglați culoarea Ambient astfel încât să devină alb pur. Acest lucru este prezentat mai jos.

Figura 28. Lumina pentru rață

În iluminare, ajustați și difuzul pentru a fi complet negru și setați Shininess la 0.22.

Figura 29. Reglaje ulterioare de iluminare pentru rață

În secțiunea Efecte avansate, setați intensitatea: 120.

Figura 30. Efecte avansate pentru rață

În mod similar, editați materialul numit sphere_lambert1 în Editorul de materiale. În secțiunea Iluminare, bifați Receive Lighting Static, Per Vertex. Sub Shadowing, verificați umbrele statice. Reglați culoarea Ambient astfel încât să devină alb pur.

Figura 31. Lumina pentru ou

Reglați difuzul pentru a fi complet negru și asigurați-vă că setați Shininess la 0.5, după cum se arată mai jos.

Figura 32. Reglaje ulterioare de iluminare pentru ou

În final, în secțiunea Advanced Effects, setați intensitatea la 120.


Observații finale pentru partea 2

În partea a doua, am început să descriem cum să dezvolți jocul folosind Editorul ShiVa. Am introdus modulele ShiVa Editor folosite în dezvoltarea aplicației tutorial. Apoi, am vorbit despre fișierele modelului Collada reprezentând caracterele principale din aplicație. Am discutat, de asemenea, câțiva pași inițiați pentru a crea aplicația, cum ar fi crearea jocului și a scenei, precum și importul modelelor Collada. În partea a 3-a, vom arăta cum să editați scena aplicației noastre. De asemenea, vom începe să introduceți codul pentru modelele AIM ale jocului. În special, vom introduce codul pentru DuckAI.

Cod