feat: Enable Unity builds for faster compilation

- Added an option to enable Unity (Jumbo) builds in CMake.
- Updated CMakeLists.txt to conditionally set CMAKE_UNITY_BUILD and batch size.
- Removed outdated analysis documentation for overworld implementation.
- Deleted z3ed resources YAML file as it is no longer needed.
- Refactored CMake files to modularize the build system, separating core, editor, gfx, gui, and zelda3 components into library files.
- Added precompiled headers for various libraries to improve compilation times.
- Updated yaze_config.h.in to define IMGUI_DEFINE_MATH_OPERATORS for C++ compatibility.
- Enhanced editor integration tests with necessary includes for ImGui.
This commit is contained in:
scawful
2025-10-04 16:23:57 -04:00
parent 1c4a82ab7e
commit 0176a66b7e
21 changed files with 520 additions and 503 deletions

View File

@@ -1,18 +0,0 @@
set(
YAZE_APP_GFX_SRC
app/gfx/arena.cc
app/gfx/atlas_renderer.cc
app/gfx/background_buffer.cc
app/gfx/bitmap.cc
app/gfx/compression.cc
app/gfx/memory_pool.cc
app/gfx/performance_dashboard.cc
app/gfx/performance_profiler.cc
app/gfx/scad_format.cc
app/gfx/snes_palette.cc
app/gfx/snes_tile.cc
app/gfx/snes_color.cc
app/gfx/tilemap.cc
app/gfx/graphics_optimizer.cc
app/gfx/bpp_format_manager.cc
)

View File

@@ -1,3 +1,22 @@
set(
YAZE_APP_GFX_SRC
app/gfx/arena.cc
app/gfx/atlas_renderer.cc
app/gfx/background_buffer.cc
app/gfx/bitmap.cc
app/gfx/compression.cc
app/gfx/memory_pool.cc
app/gfx/performance_dashboard.cc
app/gfx/performance_profiler.cc
app/gfx/scad_format.cc
app/gfx/snes_palette.cc
app/gfx/snes_tile.cc
app/gfx/snes_color.cc
app/gfx/tilemap.cc
app/gfx/graphics_optimizer.cc
app/gfx/bpp_format_manager.cc
)
# ==============================================================================
# Yaze Graphics Library
# ==============================================================================
@@ -14,6 +33,12 @@
add_library(yaze_gfx STATIC ${YAZE_APP_GFX_SRC})
target_precompile_headers(yaze_gfx PRIVATE
<vector>
<string>
<memory>
)
target_include_directories(yaze_gfx PUBLIC
${CMAKE_SOURCE_DIR}/src
${CMAKE_SOURCE_DIR}/src/lib