2.1 KiB
2.1 KiB
BuildBuiltinForwardMaterialData
命名空间: XCEngine::Rendering
类型: function
头文件: XCEngine/Rendering/Materials/RenderMaterialResolve.h
签名
BuiltinForwardMaterialData BuildBuiltinForwardMaterialData(const Resources::Material* material);
作用
构造 builtin forward 兼容路径使用的 BuiltinForwardMaterialData。
当前实现行为
当前实现非常窄,只做一件事:
- 构造默认的
BuiltinForwardMaterialData - 用 ResolveBuiltinBaseColorFactor 填充
baseColorFactor - 返回结果
也就是说,这个 helper 当前只负责兼容路径里的颜色因子, 不会把纹理、采样器或其它 schema-driven 材质属性打进这个 struct。
当前语义边界
- 这是 builtin forward 兼容契约的一部分,不是通用材质序列化格式。
BuiltinForwardPipeline现在会优先用 ResolveSchemaMaterialConstantPayload 直接消费Material::GetConstantBufferData();只有拿不到有效 payload 时, 才会回退到这条 helper 生成的 BuiltinForwardMaterialData。- 贴图绑定不在这里返回;调用方仍需单独用 ResolveBuiltinBaseColorTexture 解析。
- 如果未来 builtin forward 的兼容 fallback 常量扩展, 这个 helper 和 BuiltinForwardMaterialData 也会一起扩展。
测试覆盖
tests/Rendering/unit/test_render_scene_extractor.cpp 当前验证了它会按 canonical 名称和别名路径正确写入 baseColorFactor。