yaze 0.2.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
object_renderer.h
Go to the documentation of this file.
1#include <cstdint>
2#include <vector>
3
4#include "app/emu/cpu/cpu.h"
6#include "app/emu/video/ppu.h"
7#include "app/gfx/bitmap.h"
9#include "app/rom.h"
10
11namespace yaze {
12namespace zelda3 {
13
14struct PseudoVram {
15 std::array<uint8_t, 16> sheets = { 0 };
16 std::vector<gfx::SnesPalette> palettes;
17};
18
20 public:
22
23 void LoadObject(uint32_t routine_ptr, std::array<uint8_t, 16>& sheet_ids);
24 void ConfigureObject();
25 void RenderObject(uint32_t routine_ptr);
26 void UpdateObjectBitmap();
27
28 gfx::Bitmap* bitmap() { return &bitmap_; }
29 auto memory() { return memory_; }
30 auto mutable_memory() { return &memory_; }
31
32 private:
33 std::vector<uint8_t> tilemap_;
34 std::vector<uint8_t> rom_data_;
35
37
42
44};
45
46} // namespace zelda3
47} // namespace yaze
SharedRom()=default
Implementation of the Memory interface for emulating memory in a SNES system.
Definition memory.h:118
Represents a bitmap image.
Definition bitmap.h:66
void RenderObject(uint32_t routine_ptr)
void LoadObject(uint32_t routine_ptr, std::array< uint8_t, 16 > &sheet_ids)
Zelda 3 specific classes and functions.
Main namespace for the application.
Definition controller.cc:18
std::vector< gfx::SnesPalette > palettes
std::array< uint8_t, 16 > sheets