Commit graph

9 commits

Author SHA1 Message Date
4a5b0f5829 Added camera!
- 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)
2019-10-28 23:45:44 +01:00
4da6167836 Added magnitude and normalization
Refactored  `types.h` to `Vectors.h`
2019-10-14 22:36:14 +02:00
38cc784ec8 Added missing display callback
Added compiler warnings for MSVC and GNU GCC
2019-10-12 15:01:38 +02:00
1aff9c9b8f First implementation of input control with KeyStateManager
To try to do: Manage edges
2019-10-07 18:46:35 +02:00
0fea63c566 Minor fixes to include paths and CMakeLists
Removed draw call from model constructor with filename
2019-10-06 20:12:53 +02:00
94bc1228f1 Loading of a OFF ASCII file
Only supports triangles
Not textured yet
Supports scaling and rotation of the model
2019-09-30 16:55:45 +02:00
e83cdba55b TGA and RGB image loading 2019-09-25 00:36:57 +02:00
ff59df8e28 Moved display functions to other file 2019-09-24 11:34:40 +02:00
472f280108 Base program with rotating pyramids 2019-09-24 09:34:53 +02:00