Display Pacos art

This commit is contained in:
jaby 2023-08-28 16:48:42 +02:00
parent 98395df929
commit c6c9231670
6 changed files with 25 additions and 2 deletions

View File

@ -6,6 +6,7 @@ namespace Assets {
using namespace JabyEngine; using namespace JabyEngine;
static constexpr auto FontTIM = SimpleTIM(960, 0, 960, 511); static constexpr auto FontTIM = SimpleTIM(960, 0, 960, 511);
static constexpr auto PacoTIM = SimpleTIM(896, 0, 960, 510);
void load_for_main(); void load_for_main();
} }

View File

@ -1,19 +1,30 @@
#include "FontWriter/font_writer.hpp" #include "FontWriter/font_writer.hpp"
#include "assets.hpp" #include "assets.hpp"
#include <PSX/GPU/gpu_primitives.hpp>
#include <PSX/GPU/gpu.hpp> #include <PSX/GPU/gpu.hpp>
#include <PSX/GPU/gpu_primitives.hpp>
#include <PSX/Timer/frame_timer.hpp> #include <PSX/Timer/frame_timer.hpp>
#include <stdio.h> #include <stdio.h>
using namespace JabyEngine; using namespace JabyEngine;
static SimpleTimer<uint8_t> timer; static SimpleTimer<uint8_t> timer;
static auto paco_texpage = GPU::TexPage(
{Assets::PacoTIM.get_texture_x(), Assets::PacoTIM.get_texture_y()},
GPU::TexturePageColor::$4bit
).linked();
static auto paco = GPU::SPRT(
// This pic used to be 122px (file size) and every tool would except it - however the display would be corrupt. Try it!!
GPU::AreaI16({0, 100}, {120, 128}),
GPU::PagePositionClut({0, 0}, GPU::PageClut(Assets::PacoTIM.get_clut_x(), Assets::PacoTIM.get_clut_y())),
GPU::Color24::Grey()
).linked();
static void setup() { static void setup() {
Assets::load_for_main(); Assets::load_for_main();
FontWriter::setup(); FontWriter::setup();
timer.reset(); timer.reset();
paco_texpage.concat(paco);
} }
static void update() { static void update() {
@ -28,6 +39,7 @@ static void update() {
static void render() { static void render() {
GPU::swap_buffers_vsync(1); GPU::swap_buffers_vsync(1);
GPU::render(paco_texpage);
FontWriter::render(); FontWriter::render();
} }

View File

@ -6,6 +6,7 @@ namespace Assets {
enum LBA { enum LBA {
__jabyengine_start_lba_request __jabyengine_start_lba_request
__jabyengine_request_lba_for(FONT, "ASSETS/MAIN/FONT.BIN"), __jabyengine_request_lba_for(FONT, "ASSETS/MAIN/FONT.BIN"),
__jabyengine_request_lba_for(PACO, "ASSETS/MAIN/PACO.BIN"),
__jabyengine_end_lba_request __jabyengine_end_lba_request
}; };
@ -14,6 +15,7 @@ namespace Assets {
void load_for_main() { void load_for_main() {
static const CDFile Assets[] = { static const CDFile Assets[] = {
CDFileBuilder::simple_tim(LBA::FONT, FontTIM), CDFileBuilder::simple_tim(LBA::FONT, FontTIM),
CDFileBuilder::simple_tim(LBA::PACO, PacoTIM),
}; };
const auto buffer_cfg = CDFileProcessor::BufferConfiguration::new_default(); const auto buffer_cfg = CDFileProcessor::BufferConfiguration::new_default();

View File

@ -2,6 +2,7 @@ include $(JABY_ENGINE_DIR)/lib/ExportPath.mk
include $(JABY_ENGINE_DIR)/lib/RebuildTarget.mk include $(JABY_ENGINE_DIR)/lib/RebuildTarget.mk
OUTPUT_DIR = bin OUTPUT_DIR = bin
INPUT = $(OUTPUT_DIR)/TexturePage.bin $(OUTPUT_DIR)/IconTexture.bin $(OUTPUT_DIR)/YoshiFont.bin $(OUTPUT_DIR)/Paco.bin
$(OUTPUT_DIR)/TexturePage.bin: TexturePage.png $(OUTPUT_DIR)/TexturePage.bin: TexturePage.png
@mkdir -p $(OUTPUT_DIR) @mkdir -p $(OUTPUT_DIR)
@ -14,7 +15,10 @@ $(OUTPUT_DIR)/IconTexture.bin: IconTexture.png
$(OUTPUT_DIR)/YoshiFont.bin: YoshiFont.png $(OUTPUT_DIR)/YoshiFont.bin: YoshiFont.png
jaby_engine_fconv --lz4 $< -o $@ simple-tim clut4 --color-trans jaby_engine_fconv --lz4 $< -o $@ simple-tim clut4 --color-trans
all: $(OUTPUT_DIR)/TexturePage.bin $(OUTPUT_DIR)/IconTexture.bin $(OUTPUT_DIR)/YoshiFont.bin $(OUTPUT_DIR)/Paco.bin: Paco.png
jaby_engine_fconv --lz4 $< -o $@ simple-tim clut4
all: $(INPUT)
clean: clean:
rm -fr $(OUTPUT_DIR) rm -fr $(OUTPUT_DIR)

BIN
examples/PoolBox/assets/Paco.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -9,6 +9,7 @@
<Directory name="ASSETS" hidden = "true"> <Directory name="ASSETS" hidden = "true">
<Directory name = "MAIN"> <Directory name = "MAIN">
<File name = "FONT.BIN" lz4 = "already">../assets/bin/YoshiFont.bin</File> <File name = "FONT.BIN" lz4 = "already">../assets/bin/YoshiFont.bin</File>
<File name = "PACO.BIN" lz4 = "already">../assets/bin/Paco.bin</File>
</Directory> </Directory>
<File name = "FONT.BIN" lz4 = "already">../assets/bin/TexturePage.bin</File> <File name = "FONT.BIN" lz4 = "already">../assets/bin/TexturePage.bin</File>
<File name = "ICON.BIN" lz4 = "already">../assets/bin/IconTexture.bin</File> <File name = "ICON.BIN" lz4 = "already">../assets/bin/IconTexture.bin</File>