Commit Graph

47 Commits

Author SHA1 Message Date
scawful
edaf6427c8 Enhance Dungeon Editor with Object Rendering and Layout Management
- Introduced new object rendering features in DungeonEditor, allowing for improved visualization of dungeon objects with options to show outlines, render objects, and display object information.
- Implemented a caching mechanism for rendered objects to optimize performance.
- Added functionality to load and manage room layouts, including walls, floors, and other structural elements, enhancing the overall editing experience.
- Refactored object handling in Room and RoomObject classes to support new rendering logic and ensure compatibility with the updated layout system.
- Introduced ObjectParser for efficient parsing of object data directly from ROM, improving reliability and performance in object rendering.
2025-09-23 22:00:54 -04:00
scawful
38b459777d Add RenderRoomGraphics method to Room class for improved graphics rendering
Implement RenderRoomGraphics in the Room class to handle the rendering of room graphics, including floor and background drawing. This addition enhances the graphics management by utilizing the gfx::Arena for rendering operations and updating bitmaps as needed. Update room.h to declare the new method.
2025-05-03 23:40:26 -04:00
scawful
6d23128060 Refactor Room and RoomObject classes to remove inheritance from SharedRom, enhancing code clarity and maintainability. Introduce ROM pointer management in both classes for improved functionality. Update LoadRoomFromRom to accommodate new constructor signature. 2025-04-30 17:51:42 -04:00
scawful
ff74c0c92a Enhance DungeonEditor functionality by adding room graphics loading and rendering capabilities; implement bitmap drawing for background layers and room objects in the canvas, improving visual representation of dungeon rooms. 2025-04-27 14:00:40 -04:00
scawful
903c1246c7 Refactor DungeonEditor to streamline room loading and size calculation; replace individual room loading methods with a unified LoadRoomFromRom function, and update room size management to utilize a dedicated RoomSize struct for improved clarity and efficiency. 2025-04-19 12:12:19 -04:00
scawful
97788fc033 Refactor canvas drawing methods to remove unnecessary bitmap parameters in context menu and bitmap drawing functions; update inventory and graphics editors to use new method signatures for improved consistency and clarity. 2025-04-16 21:44:07 -04:00
scawful
5e13b1b571 Remove dungeon.h and overworld.h headers; integrate their structures directly into zelda.h and update include paths in related source files. 2025-04-11 00:50:48 -04:00
scawful
087b194651 Remove unused room_tag.h header file and clean up includes in room.cc 2025-04-10 17:55:01 -04:00
scawful
809282edad remove nonstandard type aliases 2025-01-19 20:16:40 -05:00
scawful
4c39f02224 update dungeon header 2025-01-06 15:55:44 -05:00
scawful
9c7f78a228 update z3_dungeon_room public data type internals 2025-01-06 15:48:36 -05:00
scawful
3cbcb61222 Add CalculateRoomSize to Room 2025-01-02 08:37:48 -05:00
scawful
df67e6aaf7 Add LayerMergeType and list of constant types 2025-01-02 08:37:34 -05:00
scawful
50e4117230 Add entrance names to common header and update usage in OverworldEditor 2024-12-31 16:40:44 -05:00
scawful
7e470f2b33 remove dungeon namespace 2024-12-29 16:14:20 -05:00
scawful
e05e7c35db remove app namespace 2024-12-28 21:28:51 -05:00
scawful
b336d14233 Refactor include paths and remove redundant headers in core and editor modules 2024-11-15 23:38:44 -05:00
scawful
0f3fd1fb5d Rename staircase_rooms_vec_ to z3_staircases for clarity and update related usages 2024-11-10 22:14:15 -05:00
scawful
c640c0af66 Refactor dungeon background enum and update related usages for consistency 2024-11-10 22:05:19 -05:00
scawful
b40699e81d Refactor dungeon room structures and rename classes for consistency 2024-11-10 21:40:06 -05:00
scawful
1c8285a498 Refactor room handling for consistency and readability by standardizing variable naming and improving code structure 2024-11-08 00:12:45 -05:00
scawful
3be53b9e53 add dungeon.h to incl 2024-10-07 07:59:38 -04:00
scawful
3b5e4cd791 chore: Refactor room object loading and drawing methods 2024-08-21 00:09:57 -04:00
scawful
a9d365f3b4 cleanup constants 2024-08-20 23:09:10 -04:00
scawful
7b33313281 big cleanup 2024-08-20 22:10:35 -04:00
scawful
a8ed9b7f92 remove magic numbers, enforce const correctness 2024-08-20 21:31:59 -04:00
scawful
5953e58bd4 Rename SharedROM to SharedRom 2024-04-14 14:51:53 -05:00
scawful
2397ac6efd Add RoomEntrance class, move entrance constants 2024-02-08 09:18:59 -05:00
scawful
ee179a5598 housekeeping for GfxContext and Room logging 2024-01-28 12:05:50 -05:00
scawful
53f76460b4 Compute room size and room size pointers in Room class 2024-01-18 20:06:30 -05:00
scawful
08b95df7ad Dungeon Room Object refactor 2024-01-10 23:14:49 -05:00
scawful
10785357ef Move DungeonObjectRenderer to its own file 2023-12-17 20:59:42 -05:00
scawful
b4820d1d32 Housekeeping 2023-11-30 02:13:31 -05:00
scawful
e93ff212af Dungeon graphics loaded per room 2023-11-22 00:49:55 -05:00
Justin Scofield
7a842d4669 Dungeon Room load current graphics experiment 2023-11-21 23:44:05 -05:00
scawful
4ef2540d15 cleanup dungeon room constants 2023-11-20 06:18:28 -05:00
scawful
942d055c5e Update DungeonObjectRenderer experiment 2023-11-18 00:04:49 -05:00
scawful
299770922c Add Debugger interface, RoomObject class
- Log instructions to debugger using experiment flag
- Use BitmapManager for more functionality
- Draw framebuffer and integrated debugger
2023-11-13 14:51:01 -05:00
scawful
613e26d8ce Remove gfx groups fns from Room class 2023-11-12 10:17:35 -05:00
scawful
c25be2b76d Move object names, start RoomObject Subtypes 2023-08-19 02:09:37 -04:00
scawful
09df21a439 Update Room, Add RoomObject, RoomNames 2023-08-18 17:20:11 -04:00
scawful
2b0c550274 SharedROM, Editor parent, housekeeping 2023-07-17 08:25:22 -04:00
scawful
3ada9988aa Begin LoadSprites, LoadChests, housekeeping 2023-06-25 10:08:01 -04:00
scawful
5ac7002c88 Popout PaletteEditor, general housekeeping 2023-05-22 09:16:20 -05:00
scawful
94a61a13ac Add Object selector to DungeonEditor
Loads current room gfx from ROM gfx buffer
2023-03-29 00:10:46 -05:00
scawful
85c14438f3 housekeeping 2023-03-28 12:25:56 -05:00
scawful
d41c3ca81a Add Room class for Dungeon editing
Loads basic properties from the dungeon room header by the room ID.
2023-03-28 12:08:55 -05:00