GithubHelp home page GithubHelp logo

krutibaraiya / graphics-assignment-2 Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 2.0 86.55 MB

OpenGL implementation of a 3D dining room scene.

CMake 0.34% C++ 6.35% Makefile 0.09% HTML 52.61% CSS 6.50% JavaScript 6.33% TeX 27.79%
opengl 3d-graphics

graphics-assignment-2's Introduction

Assignment-2

OpenGL 3D implementation of a dining room.

Course Assignment for IS F311- Computer Graphics @ BITS Pilani, Hyderabad Campus.

Objective:

  • To understand OpenGL Transformations, 3D viewing Pipeline and matrix stack operations.
  • Incorporating objects made in 3D Modelling software such as Blender.
  • Implementing camera functions such as pan ,zoom, pitch, yaw and roll to interact with the scene.

Scene:

Scene

Objects in the scene

Different views of the scene

Doxygen documentation

How to run:

  • The project is tested on Linux and built in C++ using the following libraries:
    • GL
    • GLUT
    • GLEW
    • GLM
    • CMake
  • To build : g++ *.cpp *.h -lGL -lglut -lGLU
  • Run the output executable : ./a.out

Camera Movements:

Control Action
W, S, A, D, โ†‘, โ†“ front, back, left, right, up and down respectively
[ Roll anticlockwise
] Roll clockwise
R Reset camera
Left click and drag Pan the scene
Scroll mouse Zoom
Q Quit

Challenges faced:

  • Lag in camera movements while rendering.
  • Choosing an appropriate lighting model for the scene.
  • Flickering of scene during camera movements.
  • Jaggedness in Glut objects.
  • Parsing obj files from Blender to load models.

Team members:

graphics-assignment-2's People

Contributors

krutibaraiya avatar pjay20301 avatar

Stargazers

 avatar Vedansh Srivastava avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.