Navigation Simulator

Project information

Summary

This navigation simulator was made during our 2nd year of HND in Computing using EDK3, the SDK made by ESAT. In this project we had to learn some basics of engine programming and graphics, having to reimplement or use the features that offer EDK3.



My contribution

FlyCam

Free-moving camera system enabling unrestricted navigation within the 3D environment.
Supports movement along all three axes XYZ with pitch, yaw, and roll rotations.

Cubemap

Six 2D textures mapped to the faces of a cube to create a seamless 360-degree view.
Improved the immersion and aesthetic appeal of 3D scenes.

Controller movement

Implemented comprehensive support for both controllers and mouse/keyboard inputs.
Processed analog joystick input for smooth movement and digital button presses for precise actions.

Reimplementation of Program, Texture, GPUmanager

Implemented Shader, Texture and process GPU communication within a learning environment

ImGui

User friendly UI to handle the graphics demo
Show relevant performance data such as FPS or drawcalls
Handle entities on runtime
Toggle postprocesses

Wireframe

Implemented a wireframe mode for visual debugging and scene analysis.
Enabled runtime toggling between solid and wireframe rendering for flexibility.

Custom geometry

Implemented algorithms for generating basic primitives
Cubes, spheres, planes, surface revolution and terrain with perlin

Phong System

Classic lighting system including directional, point and spot lights.
Calculated light reflection using ambient, diffuse, and specular terms.