Dit project heb ik zelf gestart; het was geen schoolopdracht. Daardoor heb ik niet veel mooie en gedetailleerde 3D-modellen kunnen vinden die ik kon gebruiken. Er zijn namelijk maar heel weinig 3D-modellen van de Nederlandse Defensie online te vinden. Daarom heb ik een beetje moeten improviseren om er toch iets van te maken.
Het doel van deze simulatie is om te leren vliegen en de camera van de helikopter te bedienen. De camera heb ik zelf gemaakt, en deze is te besturen met de joystick (zie de eerste foto onder de video). Deze joystick hadden we thuis liggen, en ik vond het een superleuk idee om daar iets mee te doen. Zo kwam ik op het idee om een helikoptersimulatie te maken, aangezien helikopters worden bestuurd met een joystick.
Dit spel is te spelen op een normaal beeldscherm. Er wordt momenteel gewerkt aan een versie waarmee het ook met een VR-bril gespeeld kan worden. Tijdens dit project ben ik tegen verschillende problemen aangelopen, die ik vrijwel allemaal heb kunnen oplossen. Het grootste probleem was dat de joystick niet werkte met de versie waarin ik het project had gemaakt. Dit was erg frustrerend, dus ik heb veel online opgezocht om te achterhalen hoe ik dit kon oplossen. Uiteindelijk bleek dat ik een speciale versie moest downloaden zodat de joystick wél werkte.
Hier een paar mooie voorbeelden van code die ik heb gebruikt voor dit project.
Bij de linker afbeelding heb ik gebruik gemaakt van een coroutine. Dit is erg handig als je een reeks van events wilt afspelen met een bepaalde pauze er tussen. Ik heb het hier toegepast voor het einde. Je pakt een ster op en dan speelt de coroutine af. Het begint met de cinemachine camera aanzetten zodat je een uitzoem-effect krijgt. Daarna speelt hij nog wat effects af waardoor je goed merkt dat het klaar is.
In deze snippet gebruik ik een animator met een trigger om een animatie af te spelen wanneer de speler een object raakt. Dit zorgt ervoor dat je op een visuele manier feedback geeft aan de speler. Ook verhoog ik het aantal munten en verwijder ik het object na de interactie.
Dit project word binnenkort gepubliceerd op github!