Primitive & Naive 3D engine based on OpenGL.

- Provides OpenGl Abstraction
- Primitive camera actions: moving and zooming
- Phong lighting
The project was divided into two parts:
- General requirements
- Any library - OpenGL/glfw3/glew32/stb
- Any programming language - C++
- Result: statically linked 32/64 bit Windows application
- Camera support
- Lighting support
- Camera support
- Moving up-down left-right forward-backward
- Zoom In & Zoom Out
- Rotate via axises X, Y, Z
- I/O - Keyboard
- Lighting Support
- Light Reflection Algorithm - Phong
- Analyse Reflection
- Smooth surface
- Rough surface
- Intensity
- Official Report - attachment is not project at the moment
- Manual - how to run, keys
- Project description
- Algorithms analysis
- Prediction vs Reality
- Algorithms
- Pool Ball
- Effect of set ups border values
- Prediction vs Reality
- Additional
- Movable sun - analysis reflection behaviour
- Resizable window
- C++17
- Cmake / Makefile
- free time
Windows:
.\configure.bat
.\build.bat
Linux:
.\configure.sh
.\build.sh
**NOTE **
For WSL setLIBGL_ALWAYS_INDIRECTenv to 0 for executable
No tests =O
Camera:
* W S A D Forward/Backward/Left/Right
* Q E Up/Down
* Z C Zoom In/Out
* R T Rotate Left/Right
* F G Rotate Up/Down
* B V Pivot Left/Right
Light & Reflection:
* - = Soften/Harden light source
* [ ] Soften/Harden light ambient
* ; ‘ Soften/Harden light diffuse
* . / Soften/Harden light reflection
* M , Soften/Harden light focus
* Enter Start/Stop rotary of Sun
Others:
* Space Overlay/Take off the 'PoolBall8.jpg'
* Escape Close application
- Kajetan Brzuszczak
- Learn OpenGL Site - great place with knowledge
- Course Materials
This project is licensed under the MIT License - see the LICENSE.md file for details
- Computer Graphics & Visualization - University of Technology in Warsaw