Skip to content

SapienzaInteractiveGraphicsCourse/final-project-intentionallyblankname

Repository files navigation

Mecha-Basketball 3D

Final Project · Interactive Graphics · Prof. Marco Schaerf · La Sapienza University of Rome

Mecha basketball gameplay stepDribble schematics

Three.js Vite JavaScript GitHub Pages

Alessandro Carotenuto, 1847282

Demo

Runs entirely in the browser, no installation required.

For a smoother experience (or for development), you can also run it locally:

git clone https://github.com/SapienzaInteractiveGraphicsCourse/final-project-intentionallyblankname.git
cd final-project-intentionallyblankname
npm install
npm run dev      # localhost:5173

About

A simulated basketball match between selectable procedural robots, set in a GLTF basketball court under a dynamic procedural sky. No external models are used for the robots: they are built in Three.js using primitives and THREE.Group hierarchies, animated entirely via code. The user selects a robot class from a selection screen—each with different stats and special moves—and a time of day (Sunrise/Day/Sunset/Night, with an animated transition between lights and skyboxes), then observes or directs the match simulation.


Robot Classes

Class Locomotion Special Move
MOBILE MANIPULATOR Wheels Dash
LEGGED MANIPULATOR Legs (gait cycle) Jump
DRONE Flight Flight

Selectable from the Main Menu for both the player and, in 1v1 mode, the AI-controlled opponent, without requiring a page reload.


Controls

InputEffect
PDebug Panel / Camera
MSpectate (free-fly) / Play (third-person)
Spectate: mouse + WASD + Space/ShiftFree flight
Play: mouseOrbit camera
Play: WASDCamera-relative movement
Play: Left ShiftSpecial move (Dash / Jump / Flight)
Play: Right click (held)Grab ball, free aim
Play: Left click (while holding ball)Shoot basket
Play: Approach a loose ballAutomatic pickup
Play: Q (1v1, without ball)STEAL
Play: E (1v1, without ball)BLOCK
ESC (during Play)Pause menu
1-8Collision debug wireframe

Tech Stack

CategoryTools
Core
Rendering
Robot
Basketball
Deploy

Author

Alessandro Carotenuto, MSc Artificial Intelligence & Robotics, La Sapienza University of Rome

Personal Website LinkedIn

About

final-project-intentionallyblankname created by GitHub Classroom

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors