A 3D pool game implementation using OpenGL and C++ featuring animation, collision detection, and 3D rendering.
- Realistic 3D pool table and balls rendering
- Physics-based ball movement and collision system
- Interactive cue stick control with precise aiming mechanics
- Multiple camera perspectives
- Standard 8-ball pool rules implementation
- Game state tracking and scoring system
- C++ Compiler (GCC, Clang, or MSVC)
- CMake (version 3.10 or higher)
- OpenGL (version 3.3 or higher)
- GLFW
- GLAD
- GLM
- Clone the repository:
git clone https://github.com/AfonsoPaiva/3DPool.git
cd 3DPool- Build the project:
mkdir build && cd build
cmake ..
make- Run the game:
./3DPool- Mouse Movement: Aim the cue stick
- Left Mouse Button: Charge and take a shot (hold to increase power)
- Right Mouse Button: Switch camera views
- WASD Keys: Move the camera in free view mode
- Space: Reset the camera to default position
- ESC: Exit the game
Contributions are welcome. Please follow these steps:
- Fork the project
- Create your feature branch (git checkout -b feature/NewFeature)
- Commit your changes (git commit -m 'Add NewFeature')
- Push to the branch (git push origin feature/NewFeature)
- Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- LearnOpenGL for OpenGL tutorials
- GLFW, GLAD, and GLM libraries
- All project contributors
