Skip to content

ramyzhang/ubi-next-2024-2025

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 

Repository files navigation

The Big Catch: C++ 3D Game

This is my submission for Ubisoft's NEXT 2024-2025 challenge this year! I began working on the engine on December 14th, 2024, and completed the game submission on January 20th :)

The theme was MINIGOLF, so I was inspired by Legend of Zelda: Echoes of Wisdom to play a 3D platformer level where you launch yourself around like a golf ball to collect objectives and free trapped "fish" (the boids!)

ezgif-5-3b7335a1fe

Video demo: https://youtu.be/JIPNhrzT12A?si=B-tTXGQSRBKkDaIk

Completed features:

  • Flocking with boids :D
  • Grid-based level generation
  • Music and sound effects self-made on Beepbox!
  • 3D renderer (projection, triangles, rasterizer, lighting, backface culling, transformations, triangle clipping)
  • .obj file loading
  • Free camera, fixed target camera, "parallax-clamp" camera
  • Scene management for levels
  • Tiny Vector3 and Matrix4x4 math library
  • Core game loop
  • Entity manager (game object creation), entity memory pool, custom entity iterator
  • Components, component memory pools
  • UI system
  • Basic physics (mostly sphere and AABB collision w/ impulse, rigidbodies, basic dynamics, drag)

Features that I planned but shelved:

  • Octree spatial partitioning to improve z-depth rendering, and also optimize collision detection - decided to prioritize other things
  • Obstacle avoidance for the boids - required the above to be feasible performance-wise
  • More audio features, like spatial panning and effects - the given SimpleSound interface we were allowed to use was sadly only limited to starting, looping, and stopping sounds

About

A 3D software rendered game and engine made in C++!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors