UE5 VR Shooting Range is a solo Unreal Engine 5.6 project (programmed using Blueprints), inspired by a previous university assignment. I created this to explore VR Interactions, weapon systems, and immersive gameplay mechanics within Virtual Reality. Built on Unreal Engine 5's built-in VR Template, the project focuses on implementing responsive and intuitive firearm interactions, while experimenting with different reload and weapon behaviours.
The project began with the development of an arcade-style pistol, featuring integrated Niagara particle effects for muzzle flashes, mdoulated sound cues for subtle audio variations, and a head-mounted reload system.
I felt this type of weapon was too simplistic to fill the whole project, and so I began working on a manual reload type weapon too. This involved creating a custom grab component, introducing a specialised grab that changes the player's hand pose while holding a firearm. The trigger is fully animated using a two-way blend, with the VR Controller's trigger value driving the animation alpha in real-time. A configurable "fire point" within the trigger determines when the weapon discharges, creating a direct connection between player-input, hand movement, and weapon behaviour.
Building upon this system, I implemented a manual reload machine gun as a child class of the pistol.
Finally, I created an arcade-style grenade, allowing the player to charge the throw by pressing the A button (on Index) and throw the grenade to allow it to explode.
This project demonstrates experience with VR gameplay programming, custom interaction systems, animation driven gameplay logic, component extension, Niagara VFX integration, audio implementation, and the design of reusable gameplay systems within Unreal Engine.
View the project below: