This project implements a 3D chess scene using a custom-built 3D graphics engine.
The project consists of two main components:
-
3D Graphics Engine:
- A dynamic library (e.g., .dll, .so) providing a high-level API.
- Handles 3D model loading, scene graph management, lighting, materials, and more.
- Wraps low-level interactions with OpenGL and other libraries.
-
Chessboard Application:
- A standalone application using the 3D graphics engine.
- Renders the 3D chessboard with all pieces.
- Enables user interaction for selecting and moving pieces.
- Includes basic game functionality (undo/redo, reset).
- Features multiple light sources and camera viewpoints.
- Provides smooth rendering with a framerate above 24 FPS.
- Implements shadows and reflections on the chessboard.
- 3D Graphics Engine:
- 3D model loading from various file formats.
- Scene graph for efficient object management.
- Dynamic lighting and camera controls.
- Texture mapping and image loading.
- Chessboard Application:
- User-friendly interface for piece selection and movement.
- Realistic 3D rendering with shadows.
- Multiple camera views for different perspectives.
- Smooth and responsive gameplay.
- Build the 3D Graphics Engine:
- Follow the build instructions provided in the
enginedirectory.
- Follow the build instructions provided in the
- Build the Chessboard Application:
- In the
applicationdirectory, compile the source code linking against the built engine library.
- In the
- Run the compiled chessboard application.
- Use keyboard controls to select and move pieces.
- Explore different camera views and observe lighting effects.