Inhoud
- Inleiding
- Flying Template
- Physics
- Videotutorial – Jet Plane
- Videotutorial – Propeller Plane
- Videotutorial – Helicopter
- In Game
Inleiding
Deze handleiding is een inleiding in, een aanzet tot, het ontwerpen van een Flight Simulator.
Flying Template
Unreal Engine komt met een eenvoudige Flying Template.
- Open een nieuw project op basis van de Flying Template.
- In de Content Browser, onder FlyingBP – Blueprints vindt u Flying Pawn.
- Dubbelklik om te openen.
Onderstaande besturing is reeds geprogrammeerd.
Onderstaande code, de besturing (snelheid en rotatie) gaan we wat nader bekijken.
- De Tick-event wordt iedere frame uitgevoerd maar de framerate is afhankelijk van de hardware en dus niet constant. De Delta Seconds is als “de tijd tussen de frames” en deze is wel constant. Omdat de verplaatsing van ons “vliegtuigje” onafhankelijk moet verlopen van de hardware die de framerate bepaalt (anders zou het vliegtuigje op de ene pc harder vliegen dan op de andere) werken we met Delta Seconds.
- De huidige snelheid, bepaald door de variabele Current Forward speed wordt vermenigvuldigt met de Delta Seconds.
- Make Vector levert met de X-as de voorwaartse beweging die via AddActorLocalOffset wordt toegevoegd aan Delta Location en dus ons vliegtuigje voortuit laat vliegen.
- Get World Delta Seconds, ongeacht de framerate, wordt vermenigvuldigt met de variabelen Current Pitch Speed, Current Yaw Speed en Current Roll speed en vormt een nieuwe rotatie Make Rotator die wordt gebruikt voor de Delta Rotation van AddActorLocalRotation.
Onderstaande video bouwt verder op deze Flying Template.
Physics
Propeller
U hebt 3 componenten nodig:
- Een basis (Base) die als vast anker/draaipunt fungeert.
- Een propeller die Physics simuleert. Het is belangrijk dat het draaipunt Propeller Pivot samenvalt met de Center of Mass van de propeller.
- Een Physics Constraint ankerpunt dat zich ergens tussen de basis en de propeller bevindt (of samenvalt).
- De Base, een Cube die geschaald is.
- Voor de propeller heb ik een Cylinder gekozen, u kunt natuurlijk ook een “echte” propeller maken in bv. Blender. Vergeet niet Simulate Physics aan te vinken.
- Physic Constraint met de Base als Component 1 en de Propeller als Component 2.
- Vink Disable Collision aan zodat er geen Collison is tussen de Base en de Board.
Voor de Physics Constraint willen we een vrije draaiende beweging.
- U doet dit door onder Angular Limits de Swing 2 Motion (op en neer) op Free te zetten en de Swing 1 Motion (heen en weer) en de Twist Motion op locked te plaatsen.
- Voor de Angular Motor kiest u de Angular Drive Mode Twist and Swing, zet de Target Velocity op Swing en geef de gewenste Strength.
Onderstaande programmeercode zet de Center of Mass in het middelpunt van de propeller en toont hoe u een waarde, de Target Velocity kunt wijzigen.
Videotutorial – Jet Plane
Videotutorial – Propeller Plane
Videotutorial – Helicopter
In Game
Onderstaande video bespreekt het Flight Model van Start Citizen.
Onderstaand document is de basis voor het Flight Model van Star Citizen.