Desktop-Simulator
Desktop-Simulator copied to clipboard
OpenGL project which consists of 3D Environment, to demonstrate assembly and disassembly of desktop parts
Desktop Simulator
OpenGL project which consists of 3D environment, to demonstrate assembly and disassembly of desktop parts. This uses basic glut library to construct a 3D Scene of CPU and it's components.
see Code of Conduct
Demonstration - Youtube
https://youtu.be/VInynN3uoLo
Snapshot
Instance | Image |
---|---|
Initial View | ![]() |
CPU View | ![]() |
Desktop View | ![]() |
Setup Project
Windows
- Setup the project with required OpenGL headerfiles in your IDE (refer this - Visual Studio or CodeBlocks).
- Copy all required header files & data files the project.
- Run the project.
main.cpp
Note: BMP Image Error -
parameter.h
change BMP images path to either Relative to project ( Currently ) or Absolute ( if error occurs )
MacOS
Instructions to run on MacOS
Install brew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
Install necesarry linking libraries
brew install freeglut glfw3 glew lstdc++
Compile project into binary
clang -o main main.cpp -L/usr/local/lib -lglfw -lstdc++ -framework OpenGL -framework GLUT -framework Cocoa
Run the binary
./main
Note: GLUT is getting deprecated on MacOS 10.9 above, so some functionalities might not work. Need to fix these deprecations soon
Controls
-
Up Arrow
- Move Forwards -
Down Arrow
- Move Backwords -
Left Arrow
- Move Left Side -
Right Arrow
- Move Right Side -
Esc
- Exit of Program / Exit of CPU View ( according to context ) -
Enter
- Enter into CPU View / Disassemble Components ( according to context ) -
Backspace
- Assemble components -
Mouse Hover
- Change Camera View & Rotate Person
Requirements
- (optional) IDE ( Visual Studio / CodeBlocks )*
- basic C++ Libraries
- glut.h ( freeglut )
References
- Basic 3D World Setup - lighthouse3d.com.
- Basic OpenGL function's introduction - khronos.org.
- Texture Mapping - youtube.com.
- Textbook for understanding structure of OpenGL - Computer Graphics With OpenGL - Donald Hearn & Pauline Baker.
Project Report
Project Report with detailed structure of project.
Questions
Mail / Facebook messages can be done