Project lumberjack
Style: 3D
Platform: Quest 2, PCVR
Software and languages: Unity, C#, Blender
Project Lumberjack is a small VR arcade game in which players can experience the work of a lumberjack. Using a precise axe swing and quick thinking, the player must cut down the tree as fast as possible.
Gameplay
The gameplay consists of grabbing an axe and swinging at the tree in the proper direction. Notch and other visual elements indicate to the player what side to hit. A life is lost if they hit the wrong side or fail to swing before the timer runs out.
The game is separated into four different levels. Each level gets increasingly harder with new types of logs that are harder for the player to identify.
How does it work
The interactive tree is divided into three components: the tree manager, the parent log and the child log. Each element has its role and controls how it can be accessed.
The child log
It handles the hitbox logic. Two hitboxes are positioned in the log and are identified as left or right. Their only task is to record if an axe hits them and send the information to the parent log.
The parent log
It is the class associated with the physical log object. This class handles interaction with other objects and all physical transformations such as turning, moving, initialization and destruction. It also handles all the checks to identify if the log was hit on the proper side before passing the information to the tree manager.
The tree manager
It handles the game logic related to the tree itself. It addresses the selection logic, initialization, and destruction of every log. All communication with other systems is done via the tree manager to execute game resets, game gameovers, and stat management.
Craking Shader
A shader was implemented to add an incremental crack texture to the axe material. The shader uses a custom greyscale crack texture and incrementally adds it to the axe material.
Want to try the game?
You can try the game yourself via the itch.io page
You can also find the game code on GitHub.