Enhance performance profiling and tile caching mechanisms

- Introduced a new PerformanceProfiler class for detailed timing and performance measurement across graphics operations.
- Implemented a smart tile cache with LRU eviction in the TileCache structure to optimize memory usage and improve tile rendering efficiency.
- Updated various graphics components to utilize the new caching system, reducing redundant texture updates and enhancing overall performance.
- Added dirty region tracking in Bitmap for efficient texture updates, minimizing the area that needs to be refreshed during rendering.
- Enhanced existing methods to leverage performance monitoring, providing insights into operation durations and potential bottlenecks.
This commit is contained in:
scawful
2025-09-28 23:13:12 -04:00
parent 5915391467
commit ce31906c93
15 changed files with 840 additions and 112 deletions

View File

@@ -497,6 +497,8 @@ source_group("Application\\Graphics" FILES
app/gfx/bitmap.h
app/gfx/compression.cc
app/gfx/compression.h
app/gfx/performance_profiler.cc
app/gfx/performance_profiler.h
app/gfx/scad_format.cc
app/gfx/scad_format.h
app/gfx/snes_color.cc