Benieuwd naar 3D-game-ontwikkeling? Nu is het tijd om te leren! Deze vijfdelige tutorialserie laat zien hoe je een eenvoudig spel kunt bouwen met ShiVa3D Suite, een platformonafhankelijke 3D-game-engine en een authoringtool. In dit tweede deel leert u hoe u de ShiVa-editor en Collada-modelbestanden gebruikt.
In deel 1 van deze tutorial hebben we de tutorial applicatie geïntroduceerd, verschillende ShiVa3D concepten besproken en de belangrijkste tools in de ShiVa3D suite. We hebben ook de bestanden uitgelegd in het downloadarchief bij deze zelfstudie. In deel 2 zullen we bespreken hoe we het spel kunnen ontwikkelen met de ShiVa-editor. We zullen de ShiVa Editor-modules introduceren die worden gebruikt bij het ontwikkelen van de zelfstudietoepassing. Vervolgens zullen we het hebben over de Collada-modelbestanden die de hoofdpersonen in de toepassing vertegenwoordigen. Ten slotte bespreken we enkele eerste stappen die zijn gebruikt om de toepassing te maken, zoals het maken van het spel en de scène en het importeren van de Collada-modellen.
Laten we eerst een korte introductie geven van de verschillende modules in de ShiVa-editor. We hebben het grootste deel van deze informatie geleend van de hulpdocumentatie van ShiVa Editor.
Gegevensverkenner is een resource manager die toegang biedt tot verschillende elementen van het spel, inclusief het spel zelf, scènes, AIModels, materialen etc. De gebruikersinterface presenteert die bronnen in een hiërarchische mappenstructuur.
Game-editor is de hoofdmodule van de uitgever die de ontwikkelaar de bron van het spel laat bewerken. Met gameditorontwikkelaar kan bijvoorbeeld de scènes en het AIModel worden gedefinieerd dat aan het spel is gekoppeld.
Scene Viewer stelt de ontwikkelaar in staat om de scènes in het spel en de modellen in die scènes te visualiseren.
Scene Explorer is een afzonderlijke module die onafhankelijk is van de sceneviewer. De ontwikkelaar gebruikt voornamelijk de scènebezoeker om bronnen in een scène te vinden en te beheren.
Attributeneditor wordt gebruikt om verschillende attributen van een object te bewerken. Deze kenmerken omvatten de vertaling, rotatie en schaal van het object, evenals attributen gegroepeerd onder koppen zoals zichtbaarheid, licht, sensor, botsing enz..
Materiaal-editor is een WYSIWYG-editor voor het maken en bewerken van materialen in het spel.
Sfeereditor wordt gebruikt om visuele attributen van een scène zoals kleur, belichting en verschillende visuele effecten te bewerken.
AIModel-editor laat de ontwikkelaar AIModels bewerken. Met de AIModel-editor kunt u variabelen, functies, toestanden en handlers definiëren voor een AIModel.
Scripteditor wordt gebruikt om scripts van een AIModel te bewerken.
Ten eerste hebt u de volgende vier bestanden nodig, die deel uitmaken van de downloads die bij de zelfstudie horen.
Start de ShiVa-editor. Selecteer in het menu bovenaan de balk Hoofd -> Projecten -> Toevoegen. Voer een mappad in om je game op te slaan. (We kozen voor D: \ temp \ Duck.)
Druk op Sluiten. In Gegevensverkenner ziet u nu een map op het hoogste niveau met de naam Eend. Selecteer de map Games en selecteer Create -> Game in het snelmenu. Noem het spel Duck ook.
De game moet zichtbaar zijn in Gegevensverkenner wanneer u de map Games selecteert, zoals hieronder wordt weergegeven.
Schuif in Gegevensverkenner omlaag om de map Scènes te selecteren. Selecteer Create -> Scene in het snelmenu. Noem het MyScene.
U moet de nieuw gemaakte scène in de Gegevensverkenner zien wanneer de map Scènes is geselecteerd, zoals hieronder wordt weergegeven.
We importeren nu de modellen voor de eend en het ei. Voor het gemak hebben we alle drie de bestanden duck.dae, sphere.dae en duckCM.tga in dezelfde map D: \ temp \ collada_models geplaatst. Als u in uw omgeving die bestanden op een andere locatie plaatst, moet u de onderstaande instructies dienovereenkomstig vervangen.
Selecteer in Gegevensverkenner Importeren -> Model, zoals hieronder weergegeven.
Kies in het dialoogvenster Bestand om tekst te importeren het volledige pad naar duck.dae. Verander niets in het dialoogvenster. Druk op Importeren (zie hieronder).
Nadat het importeren is voltooid, ziet u het bericht Bezig met importeren geslaagd, zoals hieronder wordt weergegeven. Druk op OK om het dialoogvenster te sluiten.
Herhaal de invoer voor het ei, sphere.dae. Het dialoogvenster voor het importeren van sphere.dae wordt hieronder weergegeven.
Nu zou u de eend en de bol moeten zien in de lijst met modellen wanneer de map Modellen is geselecteerd in Gegevensverkenner. Dit wordt hieronder getoond.
Vervolgens plaatsen we die modellen in onze scène. Open de Game Editor en de Gegevensverkenner. Dubbelklik in de Gegevensverkenner op Eend onder de map Games. Het spel wordt geladen in de Game-editor. Selecteer het tabblad Scènes in de speleditor. Selecteer in de Gegevensverkenner de map Scènes en sleep MyScene naar het tabblad Scènes in de speleditor (zie hieronder).
Breng de Scene Viewer en Gegevensverkenner zij aan zij. Selecteer in de Gegevensverkenner de map Scènes en dubbelklik op MyScene. Selecteer de map Modellen in de Gegevensverkenner. Sleep de eend uit de map Modellen naar de Scene Viewer. Versleep de bol van de map Modellen naar de Scene Viewer.
Nu heeft MyScene beide modellen erin. We moeten echter de locatie en grootte van die modellen aanpassen. Ook zullen we botsingssensoren toevoegen aan de eend en het ei. Breng de Attributes Editor en Scene Explorer naast elkaar. Dubbelklik in Gegevensverkenner op MyScene. In de Scene Explorer, Objects-tab zou je DefaultCamera, duck en sphere moeten zien. Selecteer DefaultCamera in Scene Explorer. Stel in het gedeelte Gemeenschappelijke kenmerken van de editor Attributen de vertaalwaarden in op respectievelijk 6, 7 en 5 voor de X-, Y- en Z-as. (Zie hieronder.)
Selecteer nu de eend in de Scene Explorer. Stel in het gedeelte Gemeenschappelijke kenmerken van de editor Attributen de vertaalwaarden in op respectievelijk 2, 3 en 2 voor de X-, Y- en Z-as. Stel ook Schaalwaarden in op 0,01, 0,01 en 0,01 voor alle drie de assen, zoals hieronder weergegeven.
Selecteer vervolgens in de Scene Explorer de duck en klik met de rechtermuisknop op het menu, Attributes -> Sensor -> Voeg een bolsensor toe zoals hieronder getoond.
Selecteer in de Scene Explorer het gedeelte Sensoreigenschappen. Definieer de offsetwaarden als 0, 55, 0 en Size = 75. Dit wordt hieronder weergegeven.
Selecteer de bol in de Scene Explorer. Stel in het gedeelte Gemeenschappelijke kenmerken van de editor Attributen de vertaalwaarden in op respectievelijk 0, 3 en 0 voor de X-, Y- en Z-as. Stel ook Schaalwaarden in op 0,4, 0,4 en 0,5, zoals hieronder weergegeven. (We verdraaien de z-schaal een beetje, om een eivorm aan het bolvormige model te geven.)
Selecteer nu in de Scene Explorer de sfeer en in het menu met de rechtermuisknop, Attributes -> Sensor -> Voeg een sfeersensor toe. Selecteer in de Scene Explorer het gedeelte Sensoreigenschappen. Definieer de offsetwaarden als 0, 0, 0 en Size = 1.1.
We gaan nu de materialen voor de eend en het ei bewerken. Breng de Materiaaleditor en Gegevensverkenner zij aan zij en selecteer de map Materialen in de Gegevensverkenner. Dubbelklik op het materiaal met de bestandsnaam duck_blinn3, zoals hieronder getoond.
Controleer Statische belichting, per vertex in de sectie Materiaaleditor, Verlichting. Controleer onder Schaduw Cast-statische schaduwen casten. Pas Ambient-kleur aan zodat deze puur wit wordt. Dit wordt hieronder getoond.
Pas bij verlichting ook Diffuse volledig zwart aan en stel Shininess in op 0,22.
Stel in het gedeelte Geavanceerde effecten Intensiteit: 120 in.
Bewerk op dezelfde manier het materiaal met de naam sphere_lambert1 in de Materials Editor. Controleer in de sectie Verlichting Statische verlichting ontvangen, per vertex. Controleer onder Schaduw Cast-statische schaduwen casten. Pas Ambient-kleur aan zodat deze puur wit wordt.
Pas Diffuse aan om helemaal zwart te zijn en zorg ervoor dat Shininess op 0.5 staat, zoals hieronder getoond.
Stel tot slot in de sectie Geavanceerde effecten de Intensiteit in op 120.
In deel 2 zijn we begonnen met het beschrijven van hoe het spel te ontwikkelen met ShiVa Editor. We hebben de ShiVa Editor-modules geïntroduceerd die worden gebruikt bij het ontwikkelen van de zelfstudietoepassing. Vervolgens hebben we gesproken over de Collada-modelbestanden die de hoofdpersonen in de toepassing vertegenwoordigen. We hebben ook enkele eerste stappen besproken om de toepassing te maken, zoals het maken van het spel en de scène en het importeren van de Collada-modellen. In deel 3 zullen we laten zien hoe we de scène van onze applicatie kunnen bewerken. We beginnen ook met het invoeren van de code voor de AIModels van het spel. In het bijzonder zullen we de code voor de DuckAI invoeren.