Commit Graph

453 Commits

Author SHA1 Message Date
2eb7d632dd feat(tests): Update GPU render test expectations and remove skybox references 2026-01-07 20:24:53 +00:00
08d06dbe60 feat(shader): Refactor shader compilation process to use BgfxShaderCompiler and streamline error handling 2026-01-07 20:17:56 +00:00
99e35573d2 Add TINYSTL string_view, traits, unordered_map, unordered_set, and vector implementations
- Introduced string_view class for non-owning string references.
- Added traits header for type traits and utility functions.
- Implemented unordered_map class for hash table based key-value storage.
- Created unordered_set class for hash table based unique key storage.
- Developed vector class for dynamic array functionality with various utility methods.
2026-01-07 19:54:17 +00:00
ce5db15e6b feat(shader): Enhance shader compilation with in-process support for multiple targets and integrate PipelineCompilerService 2026-01-07 19:45:48 +00:00
dc90facd09 feat(shader): Document in-process Shaderc integration and shader binary format issues for Vulkan 2026-01-07 19:19:11 +00:00
700d18e0b6 feat(shader): Update Vulkan shader handling with uniform blocks and improved compilation process 2026-01-07 18:59:52 +00:00
8955c51f20 bgfx 2026-01-07 18:49:55 +00:00
2cbd4c232f feat(shader): Integrate local shader compilation with bgfx_tools and add PipelineCompilerService 2026-01-07 18:38:01 +00:00
cb0a420242 feat(shader): Integrate bgfx_tools for shader compilation and add PipelineCompilerService 2026-01-07 17:53:30 +00:00
8362200def Add PSSL and SPIR-V shader compilation support
- Implemented `compilePSSLShader` function in `shaderc_pssl.cpp` to handle PSSL shader compilation, currently returning an unsupported message.
- Introduced `shaderc_spirv.cpp` with comprehensive SPIR-V shader compilation logic, including GLSL to SPIR-V translation, reflection, and uniform handling.
- Added necessary includes and defined resource limits for SPIR-V compilation.
- Established texture format mappings and attribute enumerations for shader inputs.
- Enhanced error handling and logging for shader compilation processes.
2026-01-07 17:11:45 +00:00
c39eeb1f29 Add vertex shader for texture cube and improve shader handling
- Introduced a new vertex shader for texture cube rendering in `vs_texture_cube.sc`.
- Enabled debugging for shader validation in the graphics backend initialization.
- Refactored GUI shaders to use a structured output for vertex data, improving clarity and maintainability.
- Updated shader compiler to disable automatic uniform binding, allowing for explicit binding in shaders.
- Simplified shader binary wrapping by removing unnecessary uniform and attribute metadata embedding, leveraging bgfx's reflection capabilities.
2026-01-07 17:11:03 +00:00
e2d6e1b4ad feat(tests): Add Vulkan shader linking test for GUI shader compilation and rendering validation 2026-01-07 16:36:33 +00:00
b4a5588054 feat(logging): Enhance logging in shader compilation and program creation for better traceability 2026-01-07 16:24:14 +00:00
34eb8a1450 Implement feature X to enhance user experience and optimize performance 2026-01-07 16:18:25 +00:00
bff4954185 feat(shader_compiler): Add BgfxShaderCompiler for GLSL to SPIRV compilation and uniform metadata handling
refactor(bgfx_gui_service): Integrate BgfxShaderCompiler for shader creation and validation
test(bgfx_gui_service): Enhance tests to validate shader key presence and uniform initialization
2026-01-07 16:17:09 +00:00
385257b859 Remove outdated screenshot and add new screenshot for current problem documentation 2026-01-07 15:47:46 +00:00
b07cf40b8d feat(bgfx_gui_service): Add support for MaterialX shaders with separate uniform handling 2026-01-07 15:44:53 +00:00
4a96bec1b7 feat(tests): Enhance rendering tests to validate uniform initialization and stability 2026-01-07 15:38:40 +00:00
bb0c214827 Add screenshot for current problem analysis 2026-01-07 15:35:19 +00:00
1a7f2dfc6e feat(scene_framework): Add reusable Lua framework for 3D scene construction with mesh generation and object builders 2026-01-07 15:31:56 +00:00
172543fc88 feat(cube_logic): Fix string formatting for object_type in create_spinning_cube function 2026-01-07 15:20:15 +00:00
d2d3af5679 feat(tests): Update RunCubeDemoSceneTests to use object type for differentiation 2026-01-07 15:08:07 +00:00
5b7db19437 feat(tests): Refactor GPU render test to use object type for differentiation 2026-01-07 15:07:58 +00:00
a828a8e2e1 feat(cube_logic): Update create_spinning_cube to apply color and add object type for differentiation 2026-01-07 15:07:02 +00:00
b15d4468ee feat(cube_logic): Add object type parameter to create_static_cube and related functions for better differentiation 2026-01-07 15:06:46 +00:00
71c25e7ddb feat(tests): Enhance cube demo scene tests with improved object type differentiation and scale extraction 2026-01-07 15:06:00 +00:00
78c47c4429 feat(tests): Update cube demo scene tests for new tessellated floor and ceiling geometry 2026-01-07 14:50:27 +00:00
d4921be5ef feat(tests): Add SDL window service and ECS service to GPU render test for enhanced validation 2026-01-07 14:41:46 +00:00
c01213962c feat(tests): Enhance CubeDemoConfigService and GPU smoke test with improved error handling and dynamic renderer selection 2026-01-07 14:25:46 +00:00
a2f49bdb3a feat(tests): Enhance GPU smoke test with dynamic video driver selection and improved error reporting 2026-01-07 13:57:21 +00:00
d60d4b315d feat(tests): Enhance script engine tests with additional service implementations and GPU smoke test 2026-01-07 13:47:52 +00:00
0f99291157 feat(tests): Add CubeDemoConfigService and related stubs for testing cube demo scene 2026-01-07 13:35:52 +00:00
d71bc24681 feat(gui): Integrate MaterialX shader generation into bgfx_gui_service and enhance tests 2026-01-07 13:21:03 +00:00
25bd2fdca5 feat(tests): Add stub config service and enhance bgfx_gui_service tests 2026-01-07 13:07:30 +00:00
23e22c63c0 feat(tests): Add bgfx_gui_service_tests and integrate with CMake and dev commands 2026-01-07 13:01:26 +00:00
58e54bc2df fix(gui): Remove explicit binding from uniform declarations and enhance logging in CreateProgram 2026-01-07 12:52:36 +00:00
498cc56b34 feat(materialx): Refactor MaterialX shader handling to improve configuration and error handling 2026-01-07 12:47:04 +00:00
22f9a98ee1 feat(shader): Update shader handling to support multiple shader keys across various components 2026-01-07 12:27:20 +00:00
fbacb18f2e refactor(graphics): Remove explicit fallback shader support from RenderScene method 2026-01-07 12:00:52 +00:00
c7dc2c7829 feat(shader): Enhance shader attribute location handling and add logging for conflicts in MaterialX shader generation 2026-01-07 11:59:16 +00:00
d7ac5db449 fix(shader): Update logger usage in ConvertIndividualInputsToBlock for consistency 2026-01-07 10:53:28 +00:00
01fe566260 feat(shader): Remap vertex attribute locations in MaterialX shader generation for bgfx compatibility 2026-01-07 10:51:02 +00:00
489671c544 fix(shader): Prevent automatic location mapping in shader creation to maintain explicit layout consistency 2026-01-07 10:38:41 +00:00
36d8a40fcc feat(shader): Enhance shader creation for OpenGL and Vulkan by adding SPIRV wrapping and improved error logging 2026-01-07 10:27:51 +00:00
c7a5e77bea feat(materialx): Update MaterialX configuration by removing unused parameters and adding default skybox material 2026-01-07 02:07:22 +00:00
e6055bb6d5 feat(shader): Remove shader path functions and related module references 2026-01-07 02:01:07 +00:00
172aa1a551 Refactor shader handling: Remove Lua shader variant script and update shader path loading
- Deleted the shader_variants.lua script, which contained functions for building shader parameter overrides and shader variants.
- Updated ShaderScriptService to remove Lua integration for shader path loading, now relying solely on MaterialX configuration.
- Simplified logging and error handling in shader path loading, ensuring clarity in the absence of shader variants.
2026-01-07 01:56:06 +00:00
fb811f4460 feat: Add MaterialX support and enhance time retrieval in scripting 2026-01-07 01:38:03 +00:00
4f86e0488a feat(physics): Disable physics state on setup failure 2026-01-07 01:08:50 +00:00
c0c1fb881e feat: Enhance physics integration and scripting capabilities
- Added support for triangle mesh rigid bodies in the physics bridge service.
- Implemented methods to create static meshes and retrieve linear velocities in the script engine service.
- Introduced new Lua bindings for physics operations, including `physics_create_static_mesh` and `physics_get_linear_velocity`.
- Improved shader creation in the graphics backend with auto-bind uniform options and error handling.
- Refactored shader generation to consolidate output and input declarations into structured blocks.
- Enhanced GUI service with better resource logging and error handling.
- Added utility functions for transforming points using matrices.
2026-01-07 01:08:26 +00:00