Basic Operations
Create a Viewer Instance
auto viewer = livision::Viewer::Instance({
.headless = false,
.vsync = true,
.width = 1280,
.height = 720,
});
Register Objects
AddObject accepts only std::shared_ptr<ObjectBase>.
auto sphere = livision::Sphere::Instance(
{.pos = {0.0, 0.0, 1.0}, .scale = {2.0, 2.0, 2.0}});
sphere->SetColor(livision::color::cyan)->SetWireColor(livision::color::black);
viewer->AddObject(sphere);
Register ImGui Callback
viewer->RegisterUICallback([&]() {
if (ImGui::Button("Close")) {
viewer->Close();
}
});
Main Loop
while (viewer->SpinOnce()) {
// update object states here
}