1.0 KiB
1.0 KiB
RenderResourceCache::GetOrCreateTexture
获取或创建某个 Texture 的 GPU 缓存。
const CachedTexture* GetOrCreateTexture(RHI::RHIDevice* device, const Resources::Texture* texture);
行为说明
当前实现会:
- 检查
device、texture和texture->IsValid()。 - 若缓存已存在,直接返回。
- 否则把纹理上传成 RHI texture,并创建 shader resource view。
- 把结果放入
m_textureCache并返回。
参数
device- 用于创建 GPU 纹理与 SRV 的设备。texture- 要缓存的纹理资源。
返回值
- 成功时返回
CachedTexture*。 - 失败时返回
nullptr。
当前实现限制
- 当前仅支持很少的纹理格式映射。
- 当前默认创建
Texture2D维度的 SRV。 - 纹理缓存同样不具备内容变更失效机制。