Inhoud
- Wat vooraf ging
- Inleiding
- Fasen in het bouwen van een level
- Quixel Megascans
- Project Level Creation – Intro
Wat vooraf ging
- U bent vertrouwd met de werkomgeving van Unreal Engine.
- U kunt actors plaatsen in een level.
Inleiding
U bent reeds vertrouwd met de werkomgeving van Unreal Engine. Maar voor we echt aan het programmeren gaan wil ik eerst nog even stilstaan bij de fasen voor het bouwen van een level.
We gaan ook reeds kennismaken met het voorbeeldproject Sun temple dat we doorheen de handleidingen vaak als referentie gebruiken.
Situering van deze handleiding binnen Unreal Engine
Fasen in het bouwen van een level
Tijden het bouwen van een level worden vier fasen doorlopen.
0. Concept
Een fase die ik eigenlijk niet meetel, omdat ze niet echt in Unreal Engine plaatstvindt, is de allereerste fase, noem het fase 0 of de concept fase.
Tijdens het concept wordt datgene dat men wilt eerst op papier geschetst. Dus voor u begint te bouwen in Unreal Engine gaat u het best eerst aan het schetsen. Het concept geeft u een idee van wat u wenst te bouwen.
1. Prototyping (Whiteboxing) pass
Gebruikmakend van basis geometrie (BSP) wordt “quick and dirty” de lay-out van het level vastgelegd in heel eenvoudige vormen, eventueel voorzien van een kleurcode (om gemakkelijker het onderscheid te maken tussen een muur, vloer,…). Maar… dit moet reeds speelbaar zijn omdat het ook gebruikt wordt om de basis gameplay uit te testen, of de lay-out bruikbaar is en of alles “werkt” (bv. de deur moet breed genoeg zijn om uw karakter door te laten). De collision (de plekken waar de actors en de karakters kunnen botsen, overlappen) wordt reeds vastgelegd.
De basisfunctionaliteiten worden reeds geprogrammeerd (basic scripting). In deze fase zorgt het programmeren dat de dingen werken, ze hoeven nog niet optimaal te werken (bv. de deur moet open gaan, ze moet nog niet op een perfect getimede manier open gaan).
2. Meshing pass
De eenvoudige geometrie wordt vervangen door static meshes. Er worden assets, materialen en eenvoudige belichting toegevoegd. De level wordt ingekleed, gedecoreerd. U krijgt nu reeds een beeld van hoe uw level er zal uitzien (en niet enkel hoe hij opgebouwd is (prototyping)) zonder uzelf te verliezen in details.
Deze inkleding, decoratie mag echter de gameplay, collision,… vastgelegd tijdens het prototypen, niet meer wijzigen. Er mag dus niets worden toegevoegd enkel vervangen (bv. de muur die er geplaatst is tijdens het prototyping blijft er staan, hij krijgt alleen een “behang”. De ruimte die voorzien was voor een raam krijgt nu effectief het raam geplaatst (binnen de reeds voorziene ruimte).
Deze static meshes, assets, materialen,… die in het level worden gebracht hebben vaak eigen specifieke functionaliteiten die dienen geprogrammeerd te worden.
3. Lighting pass
Meer specifieke lichten worden geplaatst of worden verder verfijnd (kleur, sterkte, …), de materialen worden verder verfijnd. Er worden particles toegevoegd (bv. de openhaard krijgt een brandend vuurtje). Het gaat hem niet langer meer om de lay-out (prototyping) of het beeld (meshing) maar om het gevoel dat het level moet uitstralen. Wanneer meerderen personen aan een level werken is dit de fase waarin de “artist” zijn intrede doet.
Net zoals bij de meshing fase mag de gameplay, collision,…, vastgelegd tijdens het prototypen, niet meer worden wijzigen.
De programmeercode wordt verder verfijnd.
4. Polish pass
De afwerking. Reflecties, audio, speciale effecten, details (zoals beschilderingen op de muren, vlekken,… de zogenaamde decals),… worden toegevoegd.
Uiteraard mag ook in deze fase niets meer gewijzigd worden aan de gameplay, collision,… vastgelegd tijdens het prototypen.
De programmeercode dient nu bugvrij te zijn en geoptimaliseerd, eventuele AI (artificiële intelligentie) wordt toegevoegd.
Onderstaande video’s tonent de 4 fasen in het aanmaken van een level, maar eerst wordt nog eens een herhaling gegeven over het gebruik van de editor en het plaatsen van actors.
U kunt dit project zelf downloaden en installeren.
- Start Epic Games Launcher op.
- Ga naar Learn.
- Zoek naar Sun Temple en klik het aan.
- U kunt dit project Free downloaden.
- Eens gedownload kunt u een nieuw Sun Temple-project maken door te klikken op Create Project.
Quixel Megascans
Quixel Megascans, een gigantische bibliotheek aan textures en 3D objecten, is eveneens van de firma Epic en is gratis voor gebruik in Unreal Engine. Het is dan ook een ideale bron voor het bouwen van levels.
Doorheen de handleidingen gaan we, aan de hand van een aantal video’s, bekijken hoe u deze Quixel Megascans kunt gebruiken voor het bouwen van een level. Onderstaande video geeft u een overzicht van de mogelijkheden van Quixel Megascans en hoe u Quixel Megascans kunt integreren, via Quixel Bridge, in Unreal Engine. Ook wordt getoond hoe u Quixel Megascans eventueel kunt optimaliseren/personaliseren via Quixel Mixer.
Project Level Creation – Intro
Doorheen de komende handleidingen gaan we een eenvoudige interactieve level bouwen. Hieronder kunt u een intro bekijken van wat we gaan bouwen. We gaan, om het eenvoudig te houden, enkel werken met Starter Content.
Onderstaande video heeft u een idee van wat we gaan bouwen.
Behandelde Basiscompetenties uit de module ICT Programmeren – Specifieke ontwikkelomgeving: eenvoudige functionaliteiten
- IC BC017 – kan ICT veilig en duurzaam gebruiken
- IC BC023 – kan ICT aanwenden om problemen op te lossen
- IC BC250 – kan bij het programmeren in functie van een specifieke ontwikkelomgeving, een juiste logica volgen
- IC BC344 – kan oplossingen voor eenvoudige probleemstellingen bedenken