Time may stand still, but the cold never sleeps.
SUPERCOLD is a first-person shooter where time moves only when you do. Beware: stand still for too long, and you'll freeze as time slips away.
- Time only moves when you move.
- Standing still for too long freezes your time, and moves time around you.
The freeze time mechanic in action, showing the distinctive visual effect when time slows down during gameplay.
An overview of the level design, showcasing the environment and layout of the game world.
Gameplay screenshot demonstrating the core mechanics, including player movement, weapon throwing, and enemy interactions.
SUPERCOLD-short.mp4
- β¨οΈ WASD: Move
- π±οΈ Mouse: Look around
- π±οΈ Left Click: Shoot
- β¨οΈ Space: Jump
- β¨οΈ Shift: Sprint
- β¨οΈ E: Interact (Pick up items)
- β¨οΈ Q: Throw item
- β¨οΈ R: Reload
- β¨οΈ C: Crouch
- Implemented a custom rendering pipeline using OpenGL.
- In it we made implementations for:
- Shaders
- Mesh
- Textures
- Materials
- Pipeline State
- Transform
- Sampler
- Forward Renderer
- Sky Renderer
- Postprocessing Effects
- Implemented ECS as a way to keep the game and engine organized following best practices and the recommend architectures.
- Implemented deserialization of the game objects and components from config files. Using a custom
AssetLoader.
- Implemented the following light types:
- Directional
- Spot
- Point
- PBR
- Implemented HDR.
- Implemented Bloom Filter.
- For 3D Model Loading we implemented a custom parser in addition to using
tinygltfandtinyobj.
Note
For feature work we plan to migrate to Assimp to handle more file types and models.
- Freeze Effect: Controlled Bluish Vignette with frost textures with intensity controlled by game state.
- Motion Blur: blur the current frame based on the prev and speed from the depth buffer to make a blur when moving.
- Bloom Filter: Light Gaussian Blur.
- Collision Detection
- Collision Response
- Forces and torques
- Gravity and friction
- Ray Cast
- Pick and throw
- Full Physics Debugging Mode: Shows wireframes and collider.
- Soundtrack for each of the 3 levels and menu.
- Sound effect for most actions.
- Implemented full text rendering system.
- Used in:
- SUPER COLD/HOT: flash screens
- MENU
- GUN PICKME
- Movement
- Movement Smoothing
- Camera Movement Smoothing
- Head Bob: when idle and when moving
- Sprinting
- Crouching
- Jumping
- Stamina/Cooldown: for jumping and sprinting
- Picking/Throwing Guns
- Shooting
- Reloading
- When you stand still everything will move slow around you.
- When moving it will start to get faster.
- When sprinting it will get even more faster.
- If stay still for more than 20 seconds you will freeze and die.
- If got shot you will die.
- If you killed all enemies you can move to the next level.
- This is still a work in progress.
- Make sure
cmake,c++ compiler,vcpkgis installed. - Install
openal-softwithvcpkg
- Build the project for linux or windows.
./scripts/build_linux.sh
or
./scripts/build_windows.bat./bin/GAME_APPLICATION -c ./config/app.jsonc|
Marwan Alhameedy |
Moamen Hefny |
Youssef Mehany |
Amir Kedis |
This software is licensed under MIT License. See License for more information.

















