Skip to content

This C project is about creating a 3D polygonal game with ray-casting technique, that utilizes no GPU. Just like the breakthrough shooter games in the 90s. As of January 24th 2023, this is a collaboration project with @Dofidog and @UItsi.

Notifications You must be signed in to change notification settings

anselnettles/doom-nukem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Drowning | "𝘋𝘰𝘰𝘮-𝘕𝘶𝘬𝘦𝘮" | 𝘢𝘯 𝘶𝘯𝘥𝘦𝘳𝘸𝘢𝘵𝘦𝘳 𝘵𝘩𝘳𝘦𝘦-𝘥𝘪𝘮𝘦𝘯𝘴𝘪𝘰𝘯𝘢𝘭 𝘴𝘶𝘳𝘷𝘪𝘷𝘢𝘭-𝘨𝘢𝘮𝘦

Summary: This C project is about creating a 3D polygonal game with ray-casting technique, that utilizes no GPU. Just like the breakthrough shooter games in the 90s.

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.

Everything in this project was coded from scratch by a group of three – in C language.

This game features:

• 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.


drowning_optimized_demo

  As of January 24th 2023, the work became a collaboration project with @Dofidog (Topi Paaso) and @UItsi (Timo Turto).

Controls:

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.

Making-of footage:

drowning.mov

  In very early stages of development, we were still examining draw distancing, texture scaling and the conversion of the map file.

About

This C project is about creating a 3D polygonal game with ray-casting technique, that utilizes no GPU. Just like the breakthrough shooter games in the 90s. As of January 24th 2023, this is a collaboration project with @Dofidog and @UItsi.

Topics

Resources

Stars

Watchers

Forks

Languages