Skip to content

The final project for CSC 3081 - Computer Graphics Programming, featuring a fully rendered 3D gaming room interior using OpenGL and C++. This project integrates various 3D models and textures to create an immersive environment.

Notifications You must be signed in to change notification settings

asheint/3D-gaming-room-interior

Repository files navigation

🎮 Gaming Room Interior | OpenGL (C++)

Project Banner

This project is a 3D Gaming Room Interior built using OpenGL and C++. The room features interactive controls, dynamic lighting, textured objects, and animations like a rotating fan and swinging clock pendulum.


🚀 Features

  • Interactive Camera: Move around the room using keyboard controls.
  • Dynamic Lighting: Toggle ambient, diffuse, and specular lighting.
  • Textured Objects: Realistic textures for walls, floor, and gaming equipment.
  • Animations: Rotating fan and swinging clock pendulum.
  • Keyboard Controls: Move the gaming chair, toggle lights, and control the fan.

🛠️ Tools and Libraries Used

  • OpenGL: For 3D rendering.
  • GLUT: For window management and input handling.
  • SOIL2: For loading textures.
  • C++: The programming language used for the project.

📥 How to Run the Project

  1. Clone the Repository:
    git clone https://github.com/your-username/gaming-room-opengl.git
    cd gaming-room-opengl
    
  2. Install Dependencies:
  • Ensure you have OpenGL, GLUT, and SOIL2 installed on your system.

  • For Linux:

    sudo apt-get install freeglut3-dev
    
  • For Windows, download and set up GLUT and SOIL2 manually.

  1. Compile and Run:

    g++ main.cpp -o gaming_room -lGL -lGLU -lglut -lSOIL 
    ./gaming_room
    
  2. Use Keyboard Controls:

  • W,A,S,D: Move the camera.

  • I,J,K,L: Move the gaming chair.

  • 1, 2, 3: Toggle lights.

  • F: Toggle fan animation.

  • Q: Reset camera view.


📸 Screenshots

Here are some screenshots of the project:

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4


🎥 Demo Video

Watch the demo video to see the project in action: https://youtu.be/RQNoHNz6Ehc


🌟 Support the Project

If you find this project helpful or interesting, please consider giving it a ⭐ star on GitHub! Your support motivates me to create more projects like this.

You can also support me by buying me a Coffee!.


📜 License

This project is licensed under the MIT License. See the LICENSE file for details.


🙏 Acknowledgments

OpenGL Community: For the amazing resources and tutorials.

SOIL2 Developers: For the texture loading library.


About

The final project for CSC 3081 - Computer Graphics Programming, featuring a fully rendered 3D gaming room interior using OpenGL and C++. This project integrates various 3D models and textures to create an immersive environment.

Topics

Resources

Stars

Watchers

Forks