Skip to content
EzzElDin Salah — home
← Games
Games

AtomBall Climber

Rigidbody-driven 3D physics arcade game with camera-relative control, a continuous hazard spawner, and slope-gated jump logic.

  • C#
  • Game Physics
  • Unity
Playable build

Runs in the browser. Nothing is downloaded until you press play, and the build is roughly 38 MB.

A note on visual quality: this is a web build, and it is deliberately not the best the game looks. Textures are compressed, shadow and post-processing quality are stepped down, and engine code is stripped — all to get the download to tens of megabytes and keep the frame rate up on an integrated GPU inside a browser tab. The desktop build runs at full quality; this one is tuned so it starts in seconds and actually plays.

Systems implemented

  • Force-based rigidbody movement with camera-relative input, so control direction stays correct as the camera orbits.
  • Cinemachine FreeLook rig with collision de-clipping to keep the camera out of level geometry.
  • Ground-slope-gated jumping — jump input is rejected above a surface-angle threshold rather than on a simple grounded boolean.
  • Continuous asteroid spawner with lifetime management and damage-once semantics, so a single hazard cannot apply repeated damage across frames.
  • Projectile shooting with aim direction projected onto the horizontal plane.
  • Moving-platform win condition with parented physics handoff.

Built for ECE4208 (Game Programming). All gameplay scripts and systems are mine; models, terrain heightmaps, particle prefabs, and animation clips were supplied by the course.

The story

A physics-driven arcade climb. You control a rolling sphere crossing a mountainous terrain, picking a line between holes in the ground and asteroids falling out of the sky. At the far end of the stage a platform slides back and forth, and landing on top of it finishes the run.

How to play

Roll to the end of the terrain and land on top of the moving platform.

W A S D
Roll — relative to wherever the camera is pointing
Mouse
Orbit the camera around the ball
Shift
Roll faster
Space
Jump — only from fairly flat ground
Left click
Fire a laser to destroy asteroids before they land

Falling into a hole or getting hit by an asteroid sends you back to the start, so shooting the sky ahead of you is usually worth the pause.