37 lines
1.3 KiB
C++
Raw Normal View History

2023-09-05 02:13:09 +01:00
#include <MainApplication.hpp>
/*
// If you would like to initialize and finalize stuff before or after Plutonium, you can use libnx's userAppInit/userAppExit
extern "C" void userAppInit() {
// Initialize stuff
}
extern "C" void userAppExit() {
// Cleanup/finalize stuff
}
*/
// Main entrypoint
int main() {
// First create our renderer, where one can customize SDL or other stuff's initialization.
auto renderer_opts = pu::ui::render::RendererInitOptions(SDL_INIT_EVERYTHING, pu::ui::render::RendererHardwareFlags);
renderer_opts.UseImage(pu::ui::render::IMGAllFlags);
renderer_opts.UseAudio(pu::ui::render::MixerAllFlags);
renderer_opts.UseTTF();
auto renderer = pu::ui::render::Renderer::New(renderer_opts);
// Create our main application from the renderer
auto main = MainApplication::New(renderer);
// Prepare out application. This MUST be called or Show() will exit and nothing will be rendered.
main->Prepare();
// Show -> start rendering in an "infinite" loop
// If wou would like to show with a "fade in" from black-screen to the UI, use instead ->ShowWithFadeIn();
main->Show();
// Exit homebrew (Plutonium will handle all disposing of UI and renderer/application, don't worry!
return 0;
}