Coral Engine & Lichgate

Coral Engine & Lichgate

2024    

I worked on Coral Engine with 5 other programmers.

Coral Engine is open source ๐Ÿ˜€ -> Link to github repository

Lichgate is on Itch.io ๐Ÿ˜Ž -> Lichgate on Itch.io

My Contributions

Model loading ๐Ÿ”ƒ

๐Ÿ’ก Refactoring model loading using Assimp

Key Features & Challenges

  • Integrated Assimp to replace TinyGLTF allowing for more file formats to be loaded.
  • Working around and learning the asset loading and management system present in the engine.
  • Serializing 3D models using Cereal and the custom binary serializer already present

๐Ÿ›  Technologies: C++, GSON, Assimp, Cereal

Animations ๐Ÿ”ง

๐Ÿ’ก Importing, loading, calculating and rendering animated models

Key Features & Challenges

  • Importing animated meshes in the existing framework
  • Robust animations system for calculating bone matrices in animated meshes
  • ECS integration for Hierarchical animated models
  • Reflected components for access to animations in scripting
  • Extending the rendering pipeline for DX12 and PS5 to render animated meshes
  • Support for animation blending and attaching entities to animated bones

๐Ÿ›  Technologies: C++, EnTT, Assimp, DirectX 12, PS5 renderer, hlsl

Audio Module ๐ŸŽต

๐Ÿ’ก Integrated FMOD for audio playback

Key Features & Challenges

  • Integrated and FMOD in the engine. Allowing for audio playback.
  • Implemented an audio system and components in the ECS to be usable in the game.
  • Bound functions to allow for playing audio through the visual scripting.
  • Efficient handling of sounds and events.

Note that the sound design was not done by me.

๐Ÿ›  Technologies: C++, EnTT, FMOD

Gameplay โš”๏ธ

๐Ÿ’ก Implementing gameplay

Key Features & Challenges

  • Smooth camera and player movement
  • Tweaking and making player movement feel and look good

๐Ÿ›  Technologies: C++, Visual Scripting