42 Commits

Author SHA1 Message Date
79753d101e ROADMAP.md 2026-01-10 11:41:51 +00:00
88291862d8 fix(conan): restore shaderc dependency in BASE_REQUIRES 2026-01-08 03:48:03 +00:00
dcec8f39a0 Revert "stuff"
This reverts commit 8dd30db30d.
2026-01-08 03:20:44 +00:00
8dd30db30d stuff 2026-01-08 03:06:30 +00:00
7968456f4f feat(mesh): add tangents to MeshPayload and compute during payload building
- Updated MeshPayload structure to include tangents.
- Modified BuildPayloadFromBspBuffer to compute tangents based on vertex normals.
- Enhanced AppendMeshPayload to handle tangents, either from mesh data or generated.
- Updated PushMeshToLua to expose tangents to Lua.
- Adjusted ReadVertexArray to read tangents from Lua.

feat(shader): implement ShaderPipelineValidator for shader validation

- Added ShaderPipelineValidator class to validate shader inputs/outputs and vertex layouts.
- Implemented methods to extract shader attributes and validate against vertex layouts.
- Added comprehensive validation checks for shader pipelines, including SPIR-V requirements.
- Created a logger interface for validation results.

test(shader): add unit tests for ShaderPipelineValidator

- Implemented extensive unit tests for shader validation, covering various scenarios.
- Tests include extraction of shader inputs/outputs, validation of vertex layout matches, stride checks, and interface matching.
- Added edge case tests for empty shaders and comments in GLSL code.
2026-01-07 23:12:45 +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
cb0a420242 feat(shader): Integrate bgfx_tools for shader compilation and add PipelineCompilerService 2026-01-07 17:53:30 +00:00
cb5b58ca9e feat(physics): Enhance physics bridge service with new functionalities
- Added SetGravity method to adjust the gravity in the physics world.
- Introduced AddSphereRigidBody method for creating sphere rigid bodies.
- Implemented RemoveRigidBody method to delete existing rigid bodies.
- Added SetRigidBodyTransform method to update the position and rotation of rigid bodies.
- Included ApplyForce and ApplyImpulse methods for applying forces and impulses to rigid bodies.
- Added SetLinearVelocity method to set the linear velocity of rigid bodies.
- Enhanced StepSimulation method to accept a maxSubSteps parameter.
- Implemented GetBodyCount method to retrieve the number of rigid bodies in the world.
- Added Clear method to remove all rigid bodies from the physics world.
- Updated the script engine service to bind new physics methods to Lua.
- Enhanced material configuration handling in shader script service.
- Introduced MaterialXMaterialConfig structure for better material management.
- Added texture binding support in ShaderPaths structure.
- Included stb_image implementation for image loading support.
2026-01-07 00:20:19 +00:00
7b6f2d4567 feat: Add support for loading meshes from PK3 archives
- Updated CMakeLists.txt to find and link libzip.
- Modified conanfile.py to include libzip as a dependency.
- Created a new configuration file for Quake 3 runtime settings.
- Implemented loading of Quake 3 maps from PK3 archives in mesh_service.
- Added new Lua bindings for loading meshes from archives in script_engine_service.
- Enhanced material handling in materialx_shader_generator to support vertex data blocks.
2026-01-06 17:33:43 +00:00
a5b47479d7 Refactor graphics service architecture and remove Vulkan-specific components
- Deleted VulkanGuiService and associated interfaces to streamline GUI rendering.
- Removed RenderGraphConfig and GraphicsBackendConfig, replacing them with BgfxConfig.
- Eliminated unused render graph structures and interfaces to simplify codebase.
- Updated IConfigService and IGraphicsBackend interfaces to reflect new configurations.
- Removed Vulkan device and buffer service interfaces to reduce complexity.
- Enhanced error handling and validation across Vulkan initialization and resource management.
- Updated unit tests to remove references to the obsolete render graph functionality.
2026-01-06 15:08:20 +00:00
1549fa3675 feat(conan): Refactor dependencies management and add base and render stack requirements 2026-01-06 13:58:08 +00:00
4e15e08b7f stuff 2026-01-06 13:25:49 +00:00
5d495d731b fix(conan): Update freetype version and add libalsa and pulseaudio as required dependencies 2026-01-06 12:33:19 +00:00
f2c030c492 feat(conan): Add libvips, freetype, and ffmpeg as required dependencies 2026-01-06 12:07:36 +00:00
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
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
4a9410e6c7 feat: Update CMake user presets and conanfile for Vita SDK integration 2026-01-05 19:15:09 +00:00
7bf0efffcb feat: Add Vita SDK integration with CMake support and update development scripts 2026-01-05 18:08:43 +00:00
40bf31964b feat: Integrate cpptrace for enhanced crash reporting and stack trace generation 2026-01-05 04:13:30 +00:00
301f8f8344 Update CMake and conanfile to use RapidJSON with correct casing and adjust toolchain paths 2026-01-03 22:25:52 +00:00
192eb12474 Add CMake presets and update conanfile for SDL3Cpp integration 2026-01-03 22:15:51 +00:00
98bc22dff9 Update conanfile.py 2025-12-19 18:57:46 +00:00
Richard Ward
d690516c2c sound work 2025-12-19 17:11:38 +00:00
Richard Ward
bdc2b8b841 autocomplete make me go wrong 2025-12-19 16:38:20 +00:00
Richard Ward
6c91941efe add glm 2025-12-19 16:37:09 +00:00
Richard Ward
a9ad53ca8d add stlloader 2025-12-19 16:22:19 +00:00
Richard Ward
f383e8abd5 add assimp 2025-12-19 16:13:09 +00:00
Richard Ward
bdb72eb1c9 add bullet and box2d 2025-12-19 02:58:54 +00:00
Richard Ward
fd05f2a020 conanfile cli 2025-12-19 01:51:32 +00:00
2cfbfb3fd6 Update conanfile.py 2025-12-19 00:12:20 +00:00
2f8a801815 Update conanfile.py 2025-12-19 00:08:55 +00:00
608cecc5f0 Update conanfile.py 2025-12-18 21:46:18 +00:00
2f5d7915d9 Update conanfile.py 2025-12-18 21:44:36 +00:00
7ed8e9a89d Update conanfile.py 2025-12-18 21:41:07 +00:00
Richard Ward
635d93d0b6 use conan for everything 2025-12-18 21:33:19 +00:00
Richard Ward
1505415337 test stuff 2025-12-18 19:30:38 +00:00