Week 1: UE5 Game Dev Academy Tutorial

During week 1 of project 3, I followed the Unreal Engine 5 Tutorial for Beginners by Game Dev Academy on YouTube. Since I had no prior experience using UE5, the tutorial introduced me to the software interface, navigation techniques and keyboard shortcuts. It taught me how to import assets, apply materials, create lighting, add a player start location, create Blueprints, create print strings, apply ragdoll physics and more. Upon completing the tutorial, I created a functioning simple level in which the character has to retrieve a keycard to open the door of a spaceship which is on fire. 


The Process: 




Firstly, I created a new level and imported 3D models (created by Game Dev Academy) into the meshes folder within the Content Drawer. Using the FBX import options, I generated missing collisions, combined meshes and selected 'do not create materials'. In the Content Drawer, I double-clicked each 3D model to open the Static Mesh Editor and apply materials. I then used the floor and wall models to create a room design within my level.  




I added a Rect Light to the scene and positioned it on the ceiling to light the room. To make the light look artificial I added a blue tint. I also added red and blue Point Lights under the metal grate floor. To counteract Unreal Engine's Automatic Exposure effect, which replicates the experience of human eyes adjusting to lighting conditions, I added a Post Process Volume with an infinite extent. 




When the player overlaps the collision box surrounding the door model, the position of the door is changed to create the effect of it opening. Once this overlap ends, the position of the door is changed again to create the effect of the door closing. 




To create a smoother animation of the door opening and closing, I added a Timeline Node to my Blueprint. I then added a Float Track and two keyframes with the values of 0 and 200. I changed the Key Interpolation from Linear to Auto to create a gradual curve which then creates a more natural open/close animation.  




The variable 'HasKey?' determines whether or not the player can open the door. If the player doesn't have the keycard, a print string tells the player that the door is locked and they need a keycard to open the door. 



When adding fire to the level, I first created a collision box to contain the fire. When this collision box is overlapped by the player, damage will be dealt to the player. To simulate death, I created a Blueprint which disables player movement, uses ragdoll physics and resets the level. 



A Blueprint that determines whether the player is in or out of the fire triggers the  'FireDamage' Blueprint if the player is making contact with the collision box surrounding the fire. The 'FireDamage' Blueprint then decreases the health of the player every second they are in the fire and triggers the 'Death' Blueprint once they have no health.  


Level Playtest:




Alongside learning about UE5, I also want to learn more about player motivation and game mechanics and understand the principles and psychology behind making games that are fun and engaging. On Friday after class, I got A Theory of Fun by Raph Koster, Level Up by Scott Rogers and The Computer Game Design Course by Jim Thompson, Barnaby Berbank-Green and Nick Cusworth.  



Week 2 Plan:




Comments

Popular posts from this blog

Sem 3 Submission

Semester 2 Submission

Week 7: Creating the Western Prototype in UE5 (Part 1)