OpenGL engine project I worked over a year, adding new features and systems. We also developed a converter project along with it to convert the .glb models into custom protobuffer files to import into the engine.
Libraries created:
Math:
-
A Math library for Trigonometry (for double precision avoidance), Vectors and Matrices operations.
-
Optimized for performance using SIMD, proxy technique and return value optimization.
Memory System:
- Developed a Heap based Memory Allocator for efficient allocation memory management.
- Overloaded new and delete for memory assignment and cleaning up.
- Support for tracking the memory usage and leaks.
Data structures and File System:
- Static libraries for PCS (Parent-Child-Sibling) Tree and Pooled Double Linked List, both with iterators.
- File system to write and read files using Win32 library.