#include <dungeon_rendering_helpers.h>
Classes | |
| struct | CollisionOverlayCache |
| struct | CollisionOverlayEntry |
| struct | TrackCollisionConfig |
Static Public Member Functions | |
| static TrackDirectionMasks | GetTrackDirectionMasksForTrackIndex (size_t index) |
| static TrackDirectionMasks | GetTrackDirectionMasksForSwitchIndex (size_t index) |
| static TrackDirectionMasks | GetTrackDirectionMasksFromConfig (uint8_t tile, const std::vector< uint16_t > &track_tiles, const std::vector< uint16_t > &track_switches) |
| static void | DrawTrackArrowHead (ImDrawList *draw_list, const ImVec2 &tip, TrackDir dir, float size, ImU32 color) |
| static void | DrawTrackDirectionMask (ImDrawList *draw_list, const ImVec2 &min, float tile_size, uint8_t mask, ImU32 color) |
| static std::pair< int, int > | RoomToCanvasCoordinates (int room_x, int room_y) |
| static bool | DrawSpritePreview (ImDrawList *draw_list, const std::vector< uint8_t > &preview, const SDL_Rect &bounds, const ImVec2 &box_min, const ImVec2 &box_max, const std::array< SDL_Color, 256 > &color_table, uint8_t transparent_index=kSpritePreviewTransparentIndex) |
| static const zelda3::SpriteOamLayout * | GetPotItemSpriteLayout (uint8_t item_id, uint8_t *out_sprite_id=nullptr) |
| static bool | BuildPotItemPreview (uint8_t item_id, const zelda3::Room &room, std::vector< uint8_t > &out_pixels, SDL_Rect &out_bounds) |
| static void | DrawTrackCollisionOverlay (ImDrawList *draw_list, const ImVec2 &canvas_pos, float scale, const CollisionOverlayCache &cache, const TrackCollisionConfig &config, bool direction_map_enabled, const std::vector< uint16_t > &track_tile_order, const std::vector< uint16_t > &switch_tile_order, bool show_legend) |
| static void | DrawCustomCollisionOverlay (ImDrawList *draw_list, const ImVec2 &canvas_pos, float scale, const zelda3::Room &room) |
| static void | DrawWaterFillOverlay (ImDrawList *draw_list, const ImVec2 &canvas_pos, float scale, const zelda3::Room &room) |
| static void | DrawCameraQuadrantOverlay (ImDrawList *draw_list, const ImVec2 &canvas_pos, float scale, const zelda3::Room &room) |
| static void | DrawMinecartSpriteOverlay (ImDrawList *draw_list, const ImVec2 &canvas_pos, float scale, const zelda3::Room &room, const std::bitset< 256 > &minecart_sprite_ids, const TrackCollisionConfig &config) |
| static void | DrawTrackGapOverlay (ImDrawList *draw_list, const ImVec2 &canvas_pos, float scale, const zelda3::Room &room, const CollisionOverlayCache &cache) |
| static void | DrawTrackRouteOverlay (ImDrawList *draw_list, const ImVec2 &canvas_pos, float scale, const CollisionOverlayCache &cache) |
Static Public Attributes | |
| static constexpr uint8_t | kSpritePreviewTransparentIndex = 0 |
| static constexpr uint8_t | kBackgroundBufferTransparentIndex = 255 |
Definition at line 34 of file dungeon_rendering_helpers.h.
|
static |
Definition at line 19 of file dungeon_rendering_helpers.cc.
References yaze::editor::kTrackDirEast, yaze::editor::kTrackDirNorth, yaze::editor::kTrackDirSouth, and yaze::editor::kTrackDirWest.
Referenced by GetTrackDirectionMasksFromConfig().
|
static |
Definition at line 62 of file dungeon_rendering_helpers.cc.
References yaze::editor::kTrackDirEast, yaze::editor::kTrackDirNorth, yaze::editor::kTrackDirSouth, and yaze::editor::kTrackDirWest.
Referenced by GetTrackDirectionMasksFromConfig().
|
static |
Definition at line 81 of file dungeon_rendering_helpers.cc.
References GetTrackDirectionMasksForSwitchIndex(), and GetTrackDirectionMasksForTrackIndex().
Referenced by DrawTrackCollisionOverlay().

|
static |
Definition at line 99 of file dungeon_rendering_helpers.cc.
References yaze::editor::East, yaze::editor::North, yaze::editor::South, and yaze::editor::West.
Referenced by DrawTrackDirectionMask().
|
static |
Definition at line 125 of file dungeon_rendering_helpers.cc.
References DrawTrackArrowHead(), yaze::editor::East, yaze::editor::kTrackDirEast, yaze::editor::kTrackDirNorth, yaze::editor::kTrackDirSouth, yaze::editor::kTrackDirWest, yaze::editor::North, yaze::editor::South, and yaze::editor::West.
Referenced by DrawTrackCollisionOverlay().

|
static |
Definition at line 158 of file dungeon_rendering_helpers.cc.
Referenced by yaze::editor::DungeonCanvasViewer::DrawMaskHighlights(), and yaze::editor::DungeonCanvasViewer::RenderPotItems().
|
static |
Definition at line 164 of file dungeon_rendering_helpers.cc.
Referenced by yaze::editor::DoorEditorContent::DrawContent(), yaze::editor::DoorEditorContent::DrawInWorkbench(), yaze::editor::ItemEditorPanel::DrawInWorkbench(), yaze::editor::SpriteEditorPanel::DrawInWorkbench(), yaze::editor::ItemEditorPanel::DrawItemSelector(), yaze::editor::ItemEditorPanel::DrawRoomItems(), yaze::editor::SpriteEditorPanel::DrawRoomSprites(), and yaze::editor::SpriteEditorPanel::DrawSpriteSelector().
|
static |
Definition at line 218 of file dungeon_rendering_helpers.cc.
References yaze::zelda3::SpriteOamRegistry::GetLayout(), yaze::zelda3::kBlueRupeeLayout, yaze::zelda3::kBlueSoldierLayout, yaze::zelda3::kChickenLayout, yaze::zelda3::kGreenRupeeLayout, yaze::zelda3::kGreenSoldierLayout, yaze::zelda3::kKeyLayout, yaze::zelda3::kLargeMagicLayout, yaze::zelda3::kSmallHeartLayout, and yaze::zelda3::kSmallMagicLayout.
Referenced by BuildPotItemPreview().

|
static |
Definition at line 276 of file dungeon_rendering_helpers.cc.
References yaze::zelda3::Room::get_gfx_buffer(), GetPotItemSpriteLayout(), yaze::zelda3::Sprite::preview_bounds(), yaze::zelda3::Sprite::preview_graphics(), yaze::zelda3::Sprite::RenderPreviewGraphics(), and yaze::zelda3::Sprite::set_id().
Referenced by yaze::editor::ItemEditorPanel::GetOrCreateItemPreview(), and yaze::editor::DungeonCanvasViewer::RenderPotItems().
|
static |
Definition at line 299 of file dungeon_rendering_helpers.cc.
References DrawTrackDirectionMask(), yaze::editor::DungeonRenderingHelpers::CollisionOverlayCache::entries, GetTrackDirectionMasksFromConfig(), yaze::editor::DungeonRenderingHelpers::TrackCollisionConfig::stop_tiles, and yaze::editor::DungeonRenderingHelpers::TrackCollisionConfig::switch_tiles.
Referenced by yaze::editor::DungeonCanvasViewer::DrawRoomCanvasOverlays().

|
static |
Definition at line 399 of file dungeon_rendering_helpers.cc.
References yaze::zelda3::Room::custom_collision(), yaze::editor::AgentUI::GetTheme(), and yaze::zelda3::CustomCollisionMap::tiles.
Referenced by yaze::editor::DungeonCanvasViewer::DrawRoomCanvasOverlays().

|
static |
Definition at line 473 of file dungeon_rendering_helpers.cc.
References yaze::editor::AgentUI::GetTheme(), and yaze::zelda3::Room::water_fill_zone().
Referenced by yaze::editor::DungeonCanvasViewer::DrawRoomCanvasOverlays().

|
static |
Definition at line 506 of file dungeon_rendering_helpers.cc.
References yaze::editor::AgentUI::GetTheme(), and yaze::zelda3::Room::layout_id().
Referenced by yaze::editor::DungeonCanvasViewer::DrawRoomCanvasOverlays().

|
static |
Definition at line 526 of file dungeon_rendering_helpers.cc.
References yaze::zelda3::Room::GetSprites(), yaze::editor::AgentUI::GetTheme(), yaze::zelda3::Room::id(), yaze::zelda3::LoadCustomCollisionMap(), yaze::zelda3::Room::rom(), and yaze::editor::DungeonRenderingHelpers::TrackCollisionConfig::stop_tiles.
Referenced by yaze::editor::DungeonCanvasViewer::DrawRoomCanvasOverlays().
|
static |
Definition at line 565 of file dungeon_rendering_helpers.cc.
References yaze::editor::DungeonRenderingHelpers::CollisionOverlayCache::entries, yaze::zelda3::DimensionService::Get(), yaze::zelda3::DimensionService::GetDimensions(), yaze::editor::AgentUI::GetTheme(), and yaze::zelda3::Room::GetTileObjects().
Referenced by yaze::editor::DungeonCanvasViewer::DrawRoomCanvasOverlays().

|
static |
Definition at line 611 of file dungeon_rendering_helpers.cc.
References yaze::editor::DungeonRenderingHelpers::CollisionOverlayCache::entries, and yaze::editor::AgentUI::GetTheme().
Referenced by yaze::editor::DungeonCanvasViewer::DrawRoomCanvasOverlays().

|
staticconstexpr |
Definition at line 52 of file dungeon_rendering_helpers.h.
|
staticconstexpr |
Definition at line 53 of file dungeon_rendering_helpers.h.
Referenced by yaze::editor::DoorEditorContent::DrawContent(), and yaze::editor::DoorEditorContent::DrawInWorkbench().