Commit Graph

372 Commits

Author SHA1 Message Date
f29a28a0e5 fix(conan): Replace thorvg dependency with lunasvg 2026-01-06 12:00:40 +00:00
61141704fb feat(conan): Add thorvg as a required dependency 2026-01-06 11:46:13 +00:00
8d78edfc4f refactor(conan): Remove redundant Wayland requirement declaration 2026-01-06 11:41:02 +00:00
7ce91e61d0 feat(conan): Add Wayland as a required dependency with override in configuration 2026-01-06 11:40:14 +00:00
c8894bd8c0 feat(render): Add support for disabling culling and depth testing in pipeline creation 2026-01-06 11:30:53 +00:00
f619001157 feat(graphics): Update Draw function to include index and vertex offsets 2026-01-06 10:48:50 +00:00
b05a63db9e feat(render): Implement compatibility render graph with tonemapping options and logging enhancements 2026-01-06 10:28:00 +00:00
4ba7d9b20a feat(render): Add dynamic state support and viewport/scissor setup in render commands 2026-01-06 10:00:06 +00:00
98f4c32d7d fix(render): Specify RenderGraphImage type in function signatures for clarity 2026-01-06 02:04:43 +00:00
fb71265a5b feat: Implement render graph support in Vulkan backend
- Added RecordRenderGraph method to IRenderCommandService and its implementation in RenderCommandService.
- Updated VulkanGraphicsBackend to handle render graph definitions and record commands accordingly.
- Introduced GetDepthFormat method in ISwapchainService to retrieve depth buffer format.
- Enhanced VulkanGraphicsBackend with methods to set render graph definitions and manage render graph resources.
- Added RenderGraphImage structure to manage render targets and depth targets within the render graph.
- Updated interfaces and services to accommodate new render graph functionality, including descriptor set layout retrieval in IPipelineService.
2026-01-06 02:02:52 +00:00
b11a2f9e30 fix(skybox): Adjust skybox scale calculation based on room dimensions 2026-01-06 01:20:00 +00:00
473b1f8e64 feat(vita): Enhance Vita SDK support with environment overrides and build configuration 2026-01-06 01:18:21 +00:00
1f3e48ae27 feat(atmospherics): Add sky color configuration and apply in rendering 2026-01-06 01:07:26 +00:00
62a3d26279 fix(cmake): Correct VITASDK path in CMake user presets 2026-01-06 01:03:46 +00:00
e8c9ba72a4 fix(cmake): Update VITASDK path in CMake user presets 2026-01-06 01:00:08 +00:00
73e92a39d2 fix(rendering): Enable SSGI in render graph configuration 2026-01-06 00:54:30 +00:00
c2346e5232 fix(cube_logic): Adjust lantern height and enable additional rendering features 2026-01-06 00:49:34 +00:00
1efaeb0510 feat(render-graph): Add support for SDF, SSGI, DDGI, VXGI, motion blur, and depth of field in render graph 2026-01-06 00:44:26 +00:00
9af460d252 feat(render-graph): Enhance render graph configuration with new resolution functions and improved pass handling 2026-01-06 00:40:44 +00:00
0cfd20d7db feat: Add render graph script service registration in ServiceBasedApp 2026-01-06 00:25:38 +00:00
01f1e94994 feat(render-graph): Implement Lua-based render graph system
- Added render graph configuration to JSON files and runtime settings.
- Introduced RenderGraphScriptService to load and manage render graph definitions from Lua.
- Updated GraphicsService to handle render graph definitions.
- Enhanced cube_logic.lua with a sample render graph function.
- Modified various services and interfaces to support render graph functionality.
- Improved logging for render graph operations and configurations.
2026-01-06 00:14:00 +00:00
84cd9e4f46 feat: Enhance cube mesh handling with double-sided indices support 2026-01-06 00:03:53 +00:00
99690e381d feat: Implement double-sided cube indices generation for enhanced rendering 2026-01-05 23:56:04 +00:00
d7d4411251 feat: Refactor shader handling by implementing inline shader sources and enhancing error handling 2026-01-05 23:44:00 +00:00
945b724838 Refactor shader management and remove unused shaders
- Introduced a shader toolkit for dynamic shader generation in soundboard.lua.
- Removed obsolete shader files: ceiling.frag, cube.frag, cube.vert, floor.frag, pbr.frag, pbr.vert, solid.frag, solid.vert, wall.frag.
- Updated pipeline_service to handle inline shader sources and paths, improving shader registration and validation.
- Enhanced shader_script_service to support optional shader source paths alongside traditional paths.
- Modified ShaderPaths structure to include source fields for vertex, fragment, geometry, tessellation control, tessellation evaluation, and compute shaders.
- Updated test_gxm_backend to reflect changes in shader paths and ensure successful pipeline creation.
2026-01-05 23:34:48 +00:00
bd0568187e Refactor shader variant management and enhance shader generation
- Moved static shader variant definitions into a dedicated function for better organization.
- Introduced functions to count shader variants and build shader variants dynamically using a shader toolkit.
- Added error handling for shader toolkit availability and generation failures.
- Enhanced shader toolkit with new functions for reading and writing text files conditionally.
- Implemented new shader templates and variants for improved flexibility in shader generation.
- Updated existing shader templates to utilize the new structure and functions.
2026-01-05 23:16:44 +00:00
6e217a7206 fix: Update shader file error messages and validation to improve clarity 2026-01-05 22:47:27 +00:00
fa009b11a9 refactor: Inline IsSpirvPath checks to simplify shader path validation 2026-01-05 22:40:36 +00:00
3299388857 feat: Implement shader byte loading and caching in GuiRenderer and PipelineService 2026-01-05 22:38:55 +00:00
1f259a3b1f feat: Enhance GuiRenderer with shader file handling and logging support 2026-01-05 22:29:46 +00:00
e0c35c6845 feat: Update shader paths to remove file extensions for consistency 2026-01-05 22:14:52 +00:00
e25a558fb2 feat: Remove deprecated shader files to streamline shader management 2026-01-05 22:12:46 +00:00
90e7882cb2 feat: Integrate shaderc for shader compilation and enhance shader file handling 2026-01-05 22:12:13 +00:00
d5e14de2d0 feat: Add shaderc dependency and implement shader toolkit script 2026-01-05 21:57:12 +00:00
99cede1f31 feat: Update Vulkan dependencies to version 1.4.313.0 2026-01-05 21:45:15 +00:00
3f1684ef03 feat: Add support for additional shader types and enhance shader path handling 2026-01-05 21:38:56 +00:00
748864b656 feat: Implement normal computation and enhance lighting for floor, ceiling, cube, and wall shaders 2026-01-05 21:21:54 +00:00
ce0a6d8754 feat: Update surface colors for floor, ceiling, and wall shaders 2026-01-05 21:17:41 +00:00
a96e1981ff feat: Update piano music track 2026-01-05 21:09:14 +00:00
80363a9673 feat: Update music track and adjust surface tint colors for shaders 2026-01-05 21:03:43 +00:00
843aef30fa feat: Update colors and add texture effects for floor, ceiling, and wall shaders 2026-01-05 20:58:42 +00:00
3395572e90 feat: Add new shaders for floor, ceiling, and wall; update shader handling in cube creation 2026-01-05 20:49:37 +00:00
87d72e6e12 feat: Enhance spinning cube shader and adjust rainbow color calculations 2026-01-05 20:41:48 +00:00
2af65b3352 feat: Refactor spinning cube creation and update room object colors 2026-01-05 20:34:41 +00:00
be181b177f feat: Implement Vulkan debug messenger and validation layers
- Added Vulkan debug callback and messenger setup to VulkanDeviceService.
- Integrated validation layers into Vulkan instance creation.
- Enhanced VulkanGraphicsBackend with methods to recreate swapchain and wait for GPU idle.
- Updated VulkanGuiService to include render pass in resize method.
- Removed deprecated VulkanGraphicsBackend_old.cpp file.
- Refactored interfaces to support new methods for swapchain management and rendering.
2026-01-05 20:13:58 +00:00
4a9410e6c7 feat: Update CMake user presets and conanfile for Vita SDK integration 2026-01-05 19:15:09 +00:00
c910ec5dcf Implement Vulkan Graphics Backend and Interfaces
- Added VulkanGraphicsBackend class for Vulkan rendering implementation.
- Created IGraphicsBackend interface for abstracted rendering operations.
- Introduced GraphicsConfig structure for graphics service configuration.
- Updated graphics_types.hpp with new configuration options.
- Implemented Vulkan backend initialization, device management, and rendering methods.
- Added tests for GXM Graphics Backend to validate functionality.
- Refactored existing graphics service interface to support backend-agnostic design.
2026-01-05 19:00:35 +00:00
7bf0efffcb feat: Add Vita SDK integration with CMake support and update development scripts 2026-01-05 18:08:43 +00:00
fbd3600875 feat: Implement text rendering with 8x8 bitmap font and enhance GUI pipeline for smoother graphics 2026-01-05 17:41:56 +00:00
081af05f72 Implement GUI Renderer with SVG Support and Enhanced Drawing Capabilities
- Added a new GUI renderer implementation in gui_renderer_old.cpp.
- Introduced functionality to parse SVG files and extract circle elements.
- Implemented drawing methods for rectangles, text, and SVG graphics.
- Added clipping functionality to restrict drawing to specified areas.
- Enhanced pixel blending for transparency handling in the rendering process.
- Created a staging buffer for efficient pixel transfer to the GPU.
- Implemented resizing and clearing of the canvas for dynamic GUI updates.
- Added error handling for file operations and parsing.
2026-01-05 17:24:55 +00:00