Teo-CD
4a5b0f5829
- Can be translated locally or moved to a point in the world - Rotates locally around local x- and z-axis and around global y-axis. Added key checks to test camera movement. Added Quaternions (Inherits from CoordinatesVector<double,4>) with a view to handling the camera orientation. Added equality operators for CoordinatesVectors. Removed slow `glutGet()` calls. Added custom reshape callback as we now store the window parameters to avoid some `glutGet()` calls. Renamed `KeyStateManager` to `InputStatus` as it handles more than key states now. Mouse movement callback now captures the cursor, handles its re-centering and when the cursor enters the window far away from its last position. TODO : Consider limiting rotations for the camera (Prevents flipping the head around)
27 lines
No EOL
857 B
Markdown
27 lines
No EOL
857 B
Markdown
# OpenGL course
|
|
|
|
The goal of the course is to introduce us to the OpenGL render pipeline and how to use the library.
|
|
|
|
The code here was, in part, inspired by the code which was given as part of the course but could not run elsewhere than Windows.
|
|
It is aimed to replace it and serve as a base for my own project as part of the course.
|
|
|
|
As this project evolves I am thinking more and more about making it a "complete" minimalist game-engine if I have the time.
|
|
|
|
## TODOs
|
|
|
|
- [x] Camera movement
|
|
- [ ] Entities
|
|
- [x] Quaternion computations? ~~Maybe use OpenGLMathematics~~ Ended up doing it from scratch.
|
|
|
|
### Possible expansions
|
|
|
|
- [ ] Loading other file types
|
|
- [ ] Asset manager
|
|
- [ ] Detect key press' edges ?
|
|
- [ ] Switch from GLUT to GLFW
|
|
|
|
## Dependencies
|
|
|
|
The following libraries must be installed and findable by CMake:
|
|
- OpenGL
|
|
- Freeglut 3 |