Skip to content

A more specialized variant of the Citrus Engine for the game

License

Notifications You must be signed in to change notification settings

team-citrus/ecosystem-engine-variant

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Ecosystem Citrus Engine

The Ecosystem Variant of the Citrus Engine, created for the Citrus Engine. This will be used in the Citrus Game itself, and is highly optimized for it. As a bonus, it also demonstrates how the Citrus Engine can be adapted for your needs.

If you are looking for the main Citrus Engine, it can be found here

Compiling requirements

  • Python
  • SCons
  • Vulkan SDK
  • GLM
  • box2d
  • Bullet3
  • GNU Compiler Collection (+ mingw-w64 on windows)
  • Cargo

TODOs

  • Document stuff
    • Doxygen comments in the source code
    • Documenetation of design choices and functionality.
  • Write the graphics API
    • Write the UI API
  • Write the core API
    • Write the input system
    • Meshes, verts, etc
      • Write or otherwise adopt a FBX loader
      • Write or otherwise adopt a binary format glTF loader
      • mesh::Mesh
        • Bones
          • Vertex Weights
          • Other Bone data
      • mesh::MeshRenderer
  • Convert the project into Rust, with memory allocation and render code written in mixed C and C++.
  • Create the rendering pipeline
  • Create the main loop
    • main()
    • gameplayMain()
    • draw()/Vulkan::vkDraw()
    • mix()
  • Multi-platform support/Portability
    • Linux support
    • Windows support
    • Generic BSD/*nix suppor

Should we somehow get the chance

  • Console support

Disclaimers

All of the files located in soloud/ and include/sys/soloud are modified versions of files orginially created for the SoLoud audio engine.

About

A more specialized variant of the Citrus Engine for the game

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 82.8%
  • Rust 10.4%
  • C++ 6.6%
  • Assembly 0.2%