Shield

Shield


To deepen my understanding of shaders and post-process effects, I created a reactive energy shield that glitches when it gets hit. The idea was to make something visually interesting while also challenging myself to experiment with different techniques. Throughout the project, I primarily focused on the offset shader to create dynamic distortions.




Offset


To achieve the shield’s offset effect I use two different types of UVs on the mesh, one from the sphere’s original mapping and another where the triangles are scaled down individually (Look at picture 2). This allows me to use the triangular UVs to create a mask that offsets the mesh. Additionally, I create a mask in the shader that utilizes a Material Parameter Collection, enabling me to pass data from Blueprint to the material which controls the shield’s spawning.

Hello world

Glitch effect


To enhance the techy feeling, I reused the same glitch effect I originally created for the Jinx bomb. I made a few adjustments to better match the shield’s visual style and behavior, but the core technique remained the same—an efficient way to create a reactive, digital feel while building on previous work.

Hit effect


When designing the shield, shape and color were key components in making it visually interesting. I reused the triangular form already present in the shield to create a hit effect that reinforces it`s overall design. To add a more playful touch, I also introduced bouncing cubes for extra impact. The particle system is then spawned through Blueprint upon collision.


Blueprint  system


I use a shader mask to control the shield’s spawn through a timeline in the Blueprint system. When the ball collides with the shield, Blueprint retrieves the collision position and spawns particles at that exact spot.

Hello world

Conclusions & Takeaways


During this project, I learned the fundamentals of Unreal Engine with a focus on shader creation. I explored new ways to manipulate meshes and offset them in interesting ways. I also gained a solid understanding of Blueprint basics and how to efficiently connect multiple objects, which laid the foundation for my future projects.


At the start of the project, I faced several setbacks when Unreal corrupted my files. This taught me just how complex Unreal can be and how easily files can break. Of course, this meant I had less time to work on the project, which forced me to think outside the box and really tap into my creativity.



If I had more time


Since I had a bit of bad luck with corrupted files, I don’t feel like I had enough time to really dive into the details of this project. If I had more time, I definitely would’ve played around more with color and explored ways to push the visual style further.