1.7 KiB
1.7 KiB
RenderSceneData
命名空间: XCEngine::Rendering
类型: struct + related structs + enum
头文件: XCEngine/Rendering/FrameData/RenderSceneData.h
描述: scene extraction 之后的核心帧数据块,汇总相机、环境、光照、全局 shader keywords、网格 visibleItems 与体对象 visibleVolumes。
头文件中的主要类型
RenderDirectionalLightDataRenderLightTypeRenderAdditionalLightDataRenderDirectionalShadowDataRenderLightingDataRenderSceneData
RenderLightingData
当前光照快照包含:
- 一盏
mainDirectionalLight - 一份
mainDirectionalShadow - 最多
8盏additionalLights
并通过:
HasMainDirectionalLight()HasMainDirectionalShadow()HasAdditionalLights()
暴露快速判断。
RenderSceneData
核心字段包括:
cameracameraDataenvironmentlightingglobalShaderKeywordsvisibleItemsvisibleVolumes
HasCamera() 当前只检查 camera != nullptr。
当前调用链
- RenderSceneExtractor 生成
RenderSceneData - CameraRenderer 消费它
- builtin pipeline 和各类 pass 从它的
visibleItems、visibleVolumes、lighting 与 cameraData 继续取数