jabyengine/examples/PoolBox/application/src/Overlay/GTETest/gte_test.cpp

47 lines
1.3 KiB
C++

#include "../../../include/asset_mgr.hpp"
#include "../../../include/shared.hpp"
#include <PSX/GPU/make_gpu_primitives.hpp>
#include <PSX/Periphery/periphery.hpp>
#include <stdio.h>
namespace GTETest {
using namespace JabyEngine;
static auto doener_fish = Make::POLY_FT4(
Make::AreaI16(Make::PositionI16(0, 0), Assets::Main::DoenerFishInfo.size),
Assets::Main::DoenerFishInfo.tim.get_page_offset_clut4(),
Make::TPage(Assets::Main::DoenerFishInfo.tim.get_texture_position(), GPU::SemiTransparency::B_add_F, GPU::TexturePageColor::$4bit),
Make::PageClut(Assets::Main::DoenerFishInfo.tim.get_clut_position()),
GPU::Color24::Grey()
);
static void setup() {
Shared::back_menu.reset();
}
static bool update_or_exit() {
Periphery::query_controller();
if(Shared::back_menu.update(Make::PositionI16(0, GPU::Display::Height - 32))) {
return true;
}
return false;
}
static void render() {
GPU::render(doener_fish);
Shared::back_menu.render();
}
void main() {
setup();
while(true) {
if(update_or_exit()) {
break;
}
GPU::swap_buffers_vsync(1);
render();
}
}
}