Files
XCEngine/docs/api/XCEngine/Rendering/Caches/RenderResourceCache/GetOrCreateVolumeField.md

1.0 KiB
Raw Blame History

RenderResourceCache::GetOrCreateVolumeField

命名空间: XCEngine::Rendering

类型: method

头文件: XCEngine/Rendering/Caches/RenderResourceCache.h

签名

const CachedVolumeField* GetOrCreateVolumeField(
    RHI::RHIDevice* device,
    const Resources::VolumeField* volumeField);

作用

VolumeField 的 payload 上传成 storage buffer并返回可复用的 structured-buffer 视图缓存。

当前实现行为

  • device == nullptrvolumeField == nullptr、payload 为空或 volumeField->IsValid() == false 时直接返回 nullptr
  • 先按 VolumeField* 查缓存
  • 未命中时调用 UploadVolumeField(...)
  • 上传失败会清理临时对象并返回 nullptr

当前缓存结果

返回的 CachedVolumeField 目前包含:

  • payloadBuffer
  • shaderResourceView
  • elementStride
  • elementCount
  • payloadSize
  • storageKind

相关文档