/Sirius

Modern and Lightweight multi platform imgui rendering framework.

Primary LanguageC++

Sirius

Sirius

A rendering framework for imgui that is lightweight and works on multiple platforms. It is written in C++ and uses SDL2 for window creation and SDL Renderer for rendering.

Modern C++23 is used for the project.

Features

  • Lightweight
  • Multi platform
  • Easy to use
  • Customizable
  • Fast
  • Open source

Platforms

  • Windows
  • Linux
  • MacOS

Dependencies

Usage

#include <Sirius/main.hpp>
#include "Sirius/application.hpp"
#include "Sirius/layer.hpp"
#include "imgui.h"

class demo final : public Sirius::layer
{
public:
    void on_render() override
    {
        ImGui::ShowDemoWindow();
    }
};


Sirius::window* Sirius::create_window(int, char**)
{
    const auto current_window = new window(
        window_info{
            .title = "Basic App",
            .width = 800,
            .height = 600
        }
    );

    const auto app = new application();

    app->push_layer<demo>();

    current_window->set_app(app);
    return current_window;
}

License

Sirius is licensed under the MIT License.