Skip to content

congard/algine

Repository files navigation

Algine

stability-wip Codacy Badge

Warning

This project in a WIP state, which means a lot of things will be changed. Use it at your own risk and responsibility.
See our board for more info about planned changes.

Algine - OpenGL 3.3+ engine written in C++

Supported platforms: Linux, Android, Windows
Target platforms: Linux (clang), Android

Recommended toolchain: clang + mold

Algine v1.6 alpha

Functionality

Short overview:

  • Core
    • Textures
    • Framebuffers & Renderbuffers
    • Shaders & Shader programs
    • Buffers (Array, Index, Uniform etc)
    • Contexts / multithreading
    • Widgets (font rendering, canvas, layouts etc)
    • Logging
    • Debugging (including Algine SOP)
    • Custom shader preprocessor
    • Built-in GLSL modules and shaders
    • Platform-specific functionality
    • Lua as main scripting language (coming soon)
    • etc
  • Std
    • Skeletal animations
    • Model loading (support of 40+ 3D model formats thanks to Assimp)
    • Custom materials (amtl)
    • Cameras
    • Basic effects
    • etc
  • Ext
    • Lighting
    • Shadow mapping

The engine has a modular design.

Algine can be embedded in your Qt application

Roadmap

Main goals for now (in priority order):

  • Lua as main scripting language
    • Creators
    • Core components (Engine, Texture2D, Framebuffer etc)
    • Widgets
    • GLM classes (vec3, vec4, mat3, mat4, quat) and core functionality
    • Replace JSON configs with Lua scripts
    • Remove classes Transferable and FileTransferable
  • Editor (UI: Lua + AlgineWidgets; Core: C++)

Examples

Repository with my sandbox: algine-examples

More examples will be published soon.

Building

See doc/build

Contact

Donate

Payeer: P36281059

Or you can do it even without finance. Just open this link

Thank you.