xrbDS/engine/core/engine.cpp
Daniel Ramírez 4aef21edd5 Cube.
Implement basic rendering with cube example
2025-04-17 17:33:15 +02:00

57 lines
872 B
C++

#include "core/engine.h"
#include <nds.h>
#include <stdio.h>
#include <memory>
// Main program function
int main(void) {
// Initialize engine
std::unique_ptr<Engine> engine = Engine::Create();
if (!engine)
exit(1);
engine->run();
engine->shutdown();
return 0;
}
std::unique_ptr<Engine> Engine::Create() {
return std::unique_ptr<Engine>(new Engine());
}
void Engine::run() {
isRunning = true;
while (pmMainLoop()) {
processInput();
update();
renderer->render();
swiWaitForVBlank();
}
}
void Engine::shutdown() { isRunning = false; }
void Engine::processInput() {
scanKeys();
int keys = keysDown();
}
void Engine::update() {
// Update
}
Engine::Engine() {
isRunning = false;
// Debug
// consoleDemoInit();
// Initialize the graphics renderer
renderer = Renderer::Create();
if (!renderer)
exit(2);
}