This was the final "core-studies project" of the game-graphics branch in HIVE Helsinki, A "42-style" coding school. The goal of the project is to create a first-person game in a "3D graphic representation". This would have to be achieved via a raycasting method. No computer hardware acceleration and no 3D library are allowed.
• Real-time three-dimensional movement and view angles via keyboard and mouse.
• A feature-rich game stage, with a variety of environmental heights, nooks and un-even terrain.
• Fully original environmental textures, parsed internally from a HEX sprite graphics map.
• Collectible items, environmental events and details that are constantly shifting.
• An atmospheric setting and background music to support the moody story.
• A level-editor that allows the user to edit and adjust the game stage to their likings.
As of January 24th 2023, the work became a collaboration project with @Dofidog (Topi Paaso) and @UItsi (Timo Turto).
• W
, A
,S
,D
, moves and strafes the player underwater. Left Shift
allows you to run.
The player slowly builds up speed and momentum when in motion, making stopping also more difficult.
• Space
lets you jump.
Being underwater, the jump has quite a bit of floaty momentum to it. See how far you can reach!
• C
makes the character crouch.
You can slightly adjust viewing angle with a crouch.
• E
picks up items.
The lake bottom is scattered with collectible items, such as oxygen flasks and harpoons for the player to find.
• F
turns on the lantern light.
It's imperative to use the light to see where you're stepping in the dark abyss. The light turns on after a flickering delay and especially illuminates the stone platforms particularly well. It may abruptly turn off due to an enemy impact, however! Stay vigilant!
• F3
toggles Dev Mode.
Developer mode off color filters and overlay textures. Allows the user to swim upwards by tapping the jump key.
• Esc
quits the program.
Immediately quits and closes the software and frees all of its allocations.
drowning.mov
In very early stages of development, we were still examining draw distancing, texture scaling and the conversion of the map file.