StoneThrow
A VR experience built around one satisfying interaction: pulling a rock toward you with magic, steering it with your head, and launching it into a wall hard enough to break it.
- Role
- Solo developer, technical artist
- Engine
- Unreal Engine 5 (Blueprints, Niagara)
- Platform
- VR
- Context
- SCAD, ITGM 366
- Year
- 2024
The level and landscape came from the Unreal Engine Marketplace. The interaction, VFX and materials below are mine.
3 problems, 3 answers.
Make a convincing dust effect for the moment the rock hits the wall.
ApproachThe impact spawns a few sprites carrying a dust material I built for this. The material is world aligned so it reads as real dust rather than a texture stuck to a card.
UV distortion, panned and rotated, gives the dispersal a natural drift. A radial gradient on opacity fades each sprite smoothly to its edge.
Let the player control the rock with magic and have it follow where the camera is pointing.
ApproachWhile the trigger is held, a line trace fires from the controller. If the hit actor carries the rock tag, the Find Rock function runs and hands control to the rock blueprint's custom behavior.
Tag checks keep the trace cheap and mean any actor can become throwable by adding one tag.
Send the rock into the wall with force and have it break apart on impact.
ApproachOn trigger release, the grab component lets go and an impulse is added to the rock. The impulse is calculated from the camera direction, so you throw where you look.
On hit, the dust particle spawns at the impact point and activates. The magic particles on the rock deactivate and the magic effect on the material is switched off.
