This is my OpenGL 3D Graphics Project developed in C++ using Visual Studio 2022, GLFW, GLAD, and OpenGL (3.3 Core Profile).
The project renders a 3D Chair and Table with different transformations, shaders, and camera controls.
- 3D modeling of Chair and Table
- Object transformations: Translate, Rotate, Scale
- Camera movement & zoom
- Custom colors with vertex and fragment shaders
- Interactive keyboard & mouse controls
To build and run this project, you need:
- Visual Studio 2022
- GLFW
- GLAD
- OpenGL 3.3 or later
- (Optional) CMake
- Clone this repository:
git clone https://github.com/sr7ratul/OpenGL-3D-Project-Chair-Table.git cd OpenGL-3D-Project-Chair-Table
2. Open the `3D.sln` file with **Visual Studio 2022**.
3. Configure library linking:
* Add `glfw3.lib`
* Add `opengl32.lib`
4. Build the solution in **Debug** or **Release** mode.
5. Run the project → You will see the 3D **Chair & Table** rendered.
---
## 🎮 Controls
| Key | Action |
| ------------------------- | --------------------- |
| **W / A / S / D** | Move Camera |
| **Mouse Move** | Look Around |
| **Scroll Wheel** | Zoom In / Out |
| **X / Y / Z** | Rotate around axis |
| **I / J / K / L / O / P** | Translate object |
| **C / V / B / N / M / U** | Scale object |
| **H / F / T / G / Q / E** | Move Eye position |
| **1 – 6** | Change LookAt point |
| **7 / 8 / 9** | Change View Up Vector |
| **ESC** | Exit the program |
---
## 📂 Project Structure
```
OpenGL-3D-Project-Chair-Table/
│── 3D.sln
│── 3D.vcxproj
│── main.cpp
│── shader.h
│── camera.h
│── basic_camera.h
│── vertexShader.vs
│── fragmentShader.fs
│── README.md
│── .gitignore
```
---
## 📸 Screenshot
Here is a preview of the project:

---
## 👤 Author
Developed by **M M SAKIB AL HASAN**
🔗 [GitHub Profile](https://github.com/sr7ratul)
---
## 📜 License
This project is licensed under the MIT License – see the [LICENSE](LICENSE) file for details.