Week 1
This is my second attempt at an obstacle course:
The main method I used to make this level is activating physics simulation for my objects
Note:
What is an actor in Unreal Engine?
Is a fundamental building block used to create interactive elements within a game or application. Actors are objects within the game world that can be placed, manipulated, and interacted with. characters, objects, lights, cameras, triggers, and more.
Here is an example of commonly used type of actor:
Static mesh which represent static objects in the game world, such as buildings, rocks, trees, and other environmental elements.

Static meshes
What is a component in Unreal Engine?
Is a modular piece of functionality that can be attached to actors to add specific behaviors, features, or functionality to them. Components are reusable and can be shared across multiple actors, allowing for efficient development and organization of game logic.
Here are two common types of components:
Collision component defines the collision shape and behavior of an actor, allowing it to interact with other actors in the game world.

The first cube will hit the second cube and cause it to move.

The mass of the first cube pushed the 2nd cube when it hit it.
Week 2:
This week’s lecture was all about texturing. I learned how it works in Unreal Engine 5. Knowing how I texture, I can now render significantly more realistic scenes. This is the process of doing so:
The texture maps I used all come from “Poly Haven”.

This is what the node editor looked like at first glance.

These are the essential node groups for a basic martial.

After the matrial was finsihed and saved, navigate to the matrial folder. Drag the material icon of choice to the desired static mesh in your scene.

This is my first attempt at a texture.

My second attempt. Both the first and second were created using first party texture maps which were limited.

I imported this Denim jeans texture I got from Poly Haven by dragging its file into the material file in Unreal.

I used its image as both color and normal map. And this is what it looked like.

If you right click on the material icon, a menu appears. One option on the menu is to create an instance. This duplicates the material. However, before doing so, in the node editor you should do the same action to any adjustable node of your choice so you can change the material of the duplicate without having to change the material of the original mesh.

This is my first attempt at making an instance material.

This is my node set up for the Denim jeans material.
For my final project, I aim to combine multiple image mapping textures with a multiply node to form unique textures for my scene that can allow me to have control over multiple factors in the texture such as how dirty it is, how light passes through it and which one of the multiple image textures is dominant or co-dominant over the other or others.
Here are some more martials I created in Unreal Engine, I used texture maps from Poly Haven:
Week 3:
In this week I learned how to make a landscape in Unreal Engine 5.
To make such a large model, I used features that go as the following:
-Sculpting tools
-Texture painting
-Geometric brushes for a model within the landscape
-Foliage
I will demonstrate how I used them now:
There are 2 ways to make a landscape, 1-manually by sculpting it from a flat plane or automatically by importing a height map.
This is the manual way:

Upon opening Unreal, I switched from select mode to landscape mode.

This is the landscape hud.

These are the sculpting tools.

The basic sculpt extrudes any surface as if it were clay.

The smooth tool softens the harder edge giving a soon to be mountain a more natural look.

The flatten tool helped me create planes on my mountain which was were I planned to position my cabin.

The ramp tool gives you two points to freely move and place. Once placed, they form a bridge in between each other.

The erosion tool makes a ramp shaped object more vertically flat.

The hydro tool does the same as the erosion tool but for flat surfaces.

This was the landscape I made using the tools.
This is the height map method:

I selected the import map option.

This is the height map for the normals, I used.

After clicking import, this is what the landscape looked like.

I added a temporary material in the landscape’s own material menu.

I added a lake and an ocean using the “all classes” menu Unreal provides.

When making the matreal I was going to iuse for the landscape, I imported a “Landscape Layer blend node” in my editor which allowed me to create my own outputs which act as layers for my texture.

The texture samples each provided a specific texture.

I applied my texture to the landscape. However, it was plane blank.

I switched to paint mode, and added “weight blended layer” to each material. This would allow me to paint using each material upon selecting it in specific areas.

I painted the island and this is what I came up with.

I added a landscape coordinate node so my tiles would not be repeated on my island.

This is how my texture node map looked like at the end.

Geometry brush mesh adjusts itself when it is scaled to properly fit the UV map without stretching it.

Foliage is a paintbrush that colors any area with a specific static mesh. I can control the density to add multiple trees with distance from each other or add condescended amounts of grass.

After re-applying the techniques I learned, I came up with this scene of a graveyard like cabin which was made using geometry brushes.
This was my second attempt at a cabin in a landscape:
Week 4:
I learned of the different types of lighting in Unreal Engine 5 and how I could use them to my best advantage.
These are the different types of lights and their use:
1-Directional lights: A source that emits light in a specific direction uniformly across the entire scene, simulating the light coming from a distant source such as the sun. It provides consistent lighting across the entire scene without any attenuation over distance, making it suitable for simulating daylight or moonlight.
2-Spot light: A source that emits light in a specific direction within a cone-shaped area, simulating a focused beam of light. Unlike directional lights which emit light uniformly in a particular direction, spot lights have a defined origin point and a cone-shaped beam that extends outwards, with control over parameters such as cone angle, attenuation, intensity, and color.
3-Point light: A source that emits light uniformly in all directions from a specific point in space, creating an omnidirectional lighting effect. Unlike directional lights, which emit light in a specific direction, and spot lights, which emit light within a cone-shaped area, point lights radiate light outward in all directions from a single point.
4-Rect light: A source that emits light from a rectangular-shaped area. This light type is designed to provide a large, uniform distribution of light, similar to fluorescent or LED panels in real life. Rect Lights are particularly useful for illuminating large indoor spaces or architectural scenes where soft, even lighting is desired.
5-Lumin light: A global illumination system introduced in Unreal Engine 5. Lumen is designed to provide dynamic, realistic lighting in real-time without the need for pre-computation or baking.
Note: there are 2 types of illumination in Unreal Engine “Brute force” which offers quality and “Final gather” which offers performance.
Using my newfound knowledge on lighting in Unreal Engine 5, I constructed a scene with the unique different types of lights that I mentioned above. This is my result:
This scene is based on Len Kamenski’s “Dragon Seed Saga” Iron Man run.
Week 5:
In today’s lecture I learned the following and their function: sequencer, cameras and post processing in Unreal Engine 5.
My goal was to set up a short scene of my project. In this case I picked last week’s work. (First images above these texts).
Sequencer: used to make cut scenes and cinematic in Unreal Engine using a timeline like Adobe Premier Pro. It can also animate characters, cameras, properties and many more using key-frames. To start key-framing add a level sequence from the cinematic menu. Then save it on your hard-drive.
Unreal Engine also provides me with different kinds of cameras to create a full cut scene within my sequence.
The process of creating a sequence:

I created a new file “sequence” in my content browser.

In the cinematic window, I added my level sequence which was going to allow me to create my scene using a timeline.

I added the level sequence to my newly created file.

The timeline appeared in my window.

I added a cine camera to my scene for it to be how I track my scene within the sequence.

There are 2 methods to use the camera. Either manually as if it is any other object with the gizmo tool or “Pilot” mode where the view port acts as your camera.

To exit pilot mode, click on the following eject button shown in the image above.

I clicked on track to add option for my camera which the sequence was going to use.

I selected which camera I wanted. In my case I only had one.

This was my timeline so far.

To add a key-frame-able property, I added a transform track to my camera.

To add any key-frames, with the transform button selected, click enter anywhere desirable on the timeline.

I can also set the camera to fixate on only one object when it is moving.
This was my first test run’s final product:
Blueprints: allows me to render my scene in real time.

I added a new empty blueprint class.

I added a trigger box.

I opened the level blueprints to access the trigger box’s node editor.

This was my final node set up.
A trigger box is an intractable object which allows the player to “trigger” all kinds of things. In my case I set it to real time render.
Post processing volume: an area you can add which acts as a sub world with its own features that does not effect those same features within the actual scene. I can also key-frame its attributes so my scene changes certain features midway through my sequence.

I added the post-processing volume.

I picked what I wanted it to do.

This is the volume’s location.

When the player reaches its perimeter, they are able to see its temporary features.
For this scene’s final result,
-I will have them move into a post processing volume cube.
-I will animate my camera’s movements within the scene.
Week 6:
Blueprints:

I created a new level blueprint

This opened a node editor tab.

A string is a word that appears when a player is with in the world. I used the following nodes to make a string that appears and stays upon pressing play.

I can add a delay node to make the engine wait for a specific amount of time until it prints my string on the screen.

This node endlessly spams my string upon pressing play.

The following images demonstrates a variable costume node

I wanted to add a trigger box so that when getting close to it, a light would project from it.

I created a new blueprint for my trigger box

The node editor the blueprint opened

An instance edible variable grants the node to control any feature of the trigger box upon getting close to it.

I made the trigger box’s edited instance a yellow light.

This is what it looked like at all times. Now to make it so that it only lights when it is approached.

I added my costume variable nodes.

This is the node set up.

When I am far.

When I get close.

To further test my skills, I applied the same process on a different aspect of an object which was physics.
The objective: Create a simple single layer water material as shown in the
next slide.
The objective: attempt to customize it further, with parameters to
-create 2 other unique water materials.
– A parameter to change the color of the water.
– A parameter to change the speed of the waves.
– Explore Scattering Coefficient
This is my process:

I created a new material for my water and set the shading model to single layer water.

This was my node set up with the function of the nodes that I was not native to. (speed refers to wave speed)

This is how my water martial looked like.

I wanted to make another water matral that was diffrent to the one I just made. Repeating the steps would have wasted time. Hence I used paramters to change the color of my water so later on I can create a material instance e and be able to adjust these values individually.

Creating the martial instance for my second water…

This was my new water texture. It is meant to be swamp water.

This is the instance I made for my water with the adjustable color parameters.

This is how my material instance looked like.

I also added parameters to my wave speed (so I can adjust them if I were to make a material instance) and deduced that darker colors slow down the waves where as lighter ones make them go faster.

I picked blue to be the color that light passes through since it is the color it takes from the sky’s reflection.

This is how my water looked like now. It was brighter because light was being scattered in it. For comparison, the image below is how it looked like at first.

This is how my water martial initially looked like.
Week 7 bonus work:
Create a simple toon shader post processing material.
-Refer to the next slide on how to achieve this!
– Remember to set the material domain and blendable
location in the details panel of your material!
-Remember to set your post processing volume to infinite
extend unbound to apply to the entire scene!

I created a new martial and changed its blending mode to translucent to obtain the emmisive color node attribute. I also, changed its martial domain to “Post Process” so that way it would be compatible with post processing volumes.

This node’s attributes could be accessed in its native details panel.

I added my post processing volume and enabled “Infinite Extend (Unbound) so the volume would affect the whole scene with he material I was going to assign to it.

I assigned my toon material to my post processing volume.

This was my toon material’s node set up.

This is how my toon material looked and was lit like on a sphere, native dirt material and my recently created water material.
Week 8:
Particle systems
The Niagara Particle System: is a powerful visual effects system within Unreal Engine that allows developers to create complex and dynamic particle effects. It offers a node-based interface for designing particle behavior and interactions, enabling developers to create a wide range of effects such as fire, smoke, explosions, weather, and more.
Key features of the Niagara Particle System include:
Node-based Workflow: Niagara provides a flexible and intuitive node-based interface for designing particle systems. This allows developers to visually create and manipulate particle behavior without needing to write complex code.
Real-time Interactivity: Niagara enables real-time interactivity and responsiveness in particle effects, allowing them to react dynamically to changes in the game environment, user input, or other factors.
Scalability: Niagara is designed to scale efficiently across different platforms and hardware configurations, allowing developers to create high-quality particle effects that perform well on a wide range of devices.
Performance Optimization: Niagara includes tools and features for optimizing the performance of particle effects, such as LOD (Level of Detail) settings, culling options, and efficient memory management.
Extensibility: Niagara is highly extensible, allowing developers to create custom modules, effects, and behaviors to suit their specific needs. It also supports integration with other Unreal Engine systems and features.
Overall, the Niagara Particle System in Unreal Engine 5 likely builds upon these features while also introducing new capabilities and improvements to enhance the creation of immersive and visually stunning particle effects in games and interactive experiences. For the most up-to-date information and details on the Niagara Particle System in Unreal Engine 5, I recommend consulting the official Unreal Engine documentation or community resources.
Practicing the Niagara particle system:

I added the Niagara system from my content browser

I started off without a template

This was the node editor where I added an emitter by right clicking

I picked the fountain preset from my emiter

This was the emitter node which allowed me to control all kinds of aspects of my emitter such as its scale, spawn rate, color, texture and etc…

I created a new translucent material for my emitter to seem more natural rather than spawn solid matter

This was my material’s node set up

I assigned my material to the particle system

I disabled gravity so my particles could float

I had my particles scale at random based on a max value I set.

In the previous video, my material was running in an invite loop, so I disabled “auto activate” to stop that

I added a trigger box which was going to act as the spawner for my particle system

I opened my level blueprint

I had my particle system selected

I set up my particle system’s blueprints as shown

I had my trigger box selected

This is how I set up my level blueprint so my particle system would play when approaching the trigger box