From d664e670f4556bc71821d98ecb65461e04dc4cb0 Mon Sep 17 00:00:00 2001 From: Kearwood Gilbert Date: Thu, 13 Nov 2025 23:02:58 -0800 Subject: [PATCH] Refactoring - rename resetPoolExpiry to requestResidency --- kraken/nodes/KRCamera.cpp | 4 ++-- kraken/nodes/KRLight.cpp | 2 +- kraken/nodes/KRModel.cpp | 5 ++--- kraken/nodes/KRSprite.cpp | 2 +- kraken/resources/material/KRMaterial.cpp | 22 +++++++++---------- kraken/resources/mesh/KRMesh.cpp | 2 +- kraken/resources/mesh/KRMeshManager.cpp | 4 ++-- kraken/resources/mesh/KRMeshManager.h | 2 +- kraken/resources/texture/KRTexture.cpp | 2 +- kraken/resources/texture/KRTexture.h | 2 +- .../resources/texture/KRTextureAnimated.cpp | 8 +++---- kraken/resources/texture/KRTextureAnimated.h | 2 +- kraken/resources/texture/KRTextureBinding.cpp | 2 +- kraken/resources/texture/KRTextureCube.cpp | 6 ++--- kraken/resources/texture/KRTextureCube.h | 2 +- 15 files changed, 33 insertions(+), 34 deletions(-) diff --git a/kraken/nodes/KRCamera.cpp b/kraken/nodes/KRCamera.cpp index 07ec285..96c2b14 100755 --- a/kraken/nodes/KRCamera.cpp +++ b/kraken/nodes/KRCamera.cpp @@ -150,7 +150,7 @@ void KRCamera::preStream(const KRViewport& viewport) m_skyBox.bind(&getContext()); if (m_skyBox.isBound()) { - m_skyBox.get()->resetPoolExpiry(0.0f, KRTexture::TEXTURE_USAGE_SKY_CUBE); + m_skyBox.get()->requestResidency(0.0f, KRTexture::TEXTURE_USAGE_SKY_CUBE); } } @@ -625,7 +625,7 @@ void KRCamera::renderDebug(RenderInfo& ri) KRTexture* fontTexture = m_pContext->getTextureManager()->getTexture("font"); - fontTexture->resetPoolExpiry(0.0f, KRTexture::TEXTURE_USAGE_UI); + fontTexture->requestResidency(0.0f, KRTexture::TEXTURE_USAGE_UI); if (fontTexture->getStreamLevel(KRTexture::TEXTURE_USAGE_UI) != kraken_stream_level::STREAM_LEVEL_OUT) { PipelineInfo info{}; diff --git a/kraken/nodes/KRLight.cpp b/kraken/nodes/KRLight.cpp index 88472d4..238a57c 100755 --- a/kraken/nodes/KRLight.cpp +++ b/kraken/nodes/KRLight.cpp @@ -396,7 +396,7 @@ void KRLight::render(RenderInfo& ri) m_flareTexture.bind(&getContext()); if (m_flareTexture.isBound()) { - m_flareTexture.get()->resetPoolExpiry(0.0f, KRTexture::TEXTURE_USAGE_LIGHT_FLARE); + m_flareTexture.get()->requestResidency(0.0f, KRTexture::TEXTURE_USAGE_LIGHT_FLARE); KRMeshManager::KRVBOData& vertices = getContext().getMeshManager()->KRENGINE_VBO_DATA_2D_SQUARE_VERTICES; // Render light flare on transparency pass diff --git a/kraken/nodes/KRModel.cpp b/kraken/nodes/KRModel.cpp index b60e41e..2f54a44 100755 --- a/kraken/nodes/KRModel.cpp +++ b/kraken/nodes/KRModel.cpp @@ -294,7 +294,7 @@ void KRModel::render(KRNode::RenderInfo& ri) if (m_lightMap.isBound() && ri.camera->settings.bEnableLightMap && ri.renderPass->getType() != RENDER_PASS_SHADOWMAP && ri.renderPass->getType() != RENDER_PASS_SHADOWMAP) { - m_lightMap.get()->resetPoolExpiry(lod_coverage, KRTexture::TEXTURE_USAGE_LIGHT_MAP); + m_lightMap.get()->requestResidency(lod_coverage, KRTexture::TEXTURE_USAGE_LIGHT_MAP); // TODO - Vulkan refactoring. We need to bind the shadow map in KRMesh::Render // m_pContext->getTextureManager()->selectTexture(5, m_pLightMap, lod_coverage, KRTexture::TEXTURE_USAGE_LIGHT_MAP); } @@ -316,7 +316,6 @@ void KRModel::render(KRNode::RenderInfo& ri) void KRModel::preStream(const KRViewport& viewport) { KRNode::preStream(viewport); - m_lightMap.bind(&getContext()); loadModel(); float lod_coverage = viewport.coverage(getBounds()); @@ -329,7 +328,7 @@ void KRModel::preStream(const KRViewport& viewport) m_lightMap.bind(&getContext()); if (m_lightMap.isBound()) { - m_lightMap.get()->resetPoolExpiry(lod_coverage, KRTexture::TEXTURE_USAGE_LIGHT_MAP); + m_lightMap.get()->requestResidency(lod_coverage, KRTexture::TEXTURE_USAGE_LIGHT_MAP); } } diff --git a/kraken/nodes/KRSprite.cpp b/kraken/nodes/KRSprite.cpp index 9e521d5..4f1ce77 100755 --- a/kraken/nodes/KRSprite.cpp +++ b/kraken/nodes/KRSprite.cpp @@ -120,7 +120,7 @@ void KRSprite::preStream(const KRViewport& viewport) m_spriteTexture.bind(&getContext()); if (m_spriteTexture.isBound()) { - m_spriteTexture.get()->resetPoolExpiry(0.0f, KRTexture::TEXTURE_USAGE_SPRITE); + m_spriteTexture.get()->requestResidency(0.0f, KRTexture::TEXTURE_USAGE_SPRITE); } } diff --git a/kraken/resources/material/KRMaterial.cpp b/kraken/resources/material/KRMaterial.cpp index 32a46bf..da3b335 100755 --- a/kraken/resources/material/KRMaterial.cpp +++ b/kraken/resources/material/KRMaterial.cpp @@ -233,27 +233,27 @@ void KRMaterial::preStream(float lodCoverage) getTextures(); if (m_ambientMap.isBound()) { - m_ambientMap.get()->resetPoolExpiry(lodCoverage, KRTexture::TEXTURE_USAGE_AMBIENT_MAP); + m_ambientMap.get()->requestResidency(lodCoverage, KRTexture::TEXTURE_USAGE_AMBIENT_MAP); } if (m_diffuseMap.isBound()) { - m_diffuseMap.get()->resetPoolExpiry(lodCoverage, KRTexture::TEXTURE_USAGE_DIFFUSE_MAP); + m_diffuseMap.get()->requestResidency(lodCoverage, KRTexture::TEXTURE_USAGE_DIFFUSE_MAP); } if (m_normalMap.isBound()) { - m_normalMap.get()->resetPoolExpiry(lodCoverage, KRTexture::TEXTURE_USAGE_NORMAL_MAP); + m_normalMap.get()->requestResidency(lodCoverage, KRTexture::TEXTURE_USAGE_NORMAL_MAP); } if (m_specularMap.isBound()) { - m_specularMap.get()->resetPoolExpiry(lodCoverage, KRTexture::TEXTURE_USAGE_SPECULAR_MAP); + m_specularMap.get()->requestResidency(lodCoverage, KRTexture::TEXTURE_USAGE_SPECULAR_MAP); } if (m_reflectionMap.isBound()) { - m_reflectionMap.get()->resetPoolExpiry(lodCoverage, KRTexture::TEXTURE_USAGE_REFLECTION_MAP); + m_reflectionMap.get()->requestResidency(lodCoverage, KRTexture::TEXTURE_USAGE_REFLECTION_MAP); } if (m_reflectionCube.isBound()) { - m_reflectionCube.get()->resetPoolExpiry(lodCoverage, KRTexture::TEXTURE_USAGE_REFECTION_CUBE); + m_reflectionCube.get()->requestResidency(lodCoverage, KRTexture::TEXTURE_USAGE_REFECTION_CUBE); } } @@ -384,27 +384,27 @@ void KRMaterial::bind(KRNode::RenderInfo& ri, ModelFormat modelFormat, __uint32_ } if (bDiffuseMap) { - m_diffuseMap.get()->resetPoolExpiry(lod_coverage, KRTexture::TEXTURE_USAGE_DIFFUSE_MAP); + m_diffuseMap.get()->requestResidency(lod_coverage, KRTexture::TEXTURE_USAGE_DIFFUSE_MAP); pShader->setImageBinding("diffuseTexture", m_diffuseMap.get(), getContext().getSamplerManager()->DEFAULT_WRAPPING_SAMPLER); } if (bSpecMap) { - m_specularMap.get()->resetPoolExpiry(lod_coverage, KRTexture::TEXTURE_USAGE_SPECULAR_MAP); + m_specularMap.get()->requestResidency(lod_coverage, KRTexture::TEXTURE_USAGE_SPECULAR_MAP); pShader->setImageBinding("specularTexture", m_specularMap.get(), getContext().getSamplerManager()->DEFAULT_WRAPPING_SAMPLER); } if (bNormalMap) { - m_normalMap.get()->resetPoolExpiry(lod_coverage, KRTexture::TEXTURE_USAGE_NORMAL_MAP); + m_normalMap.get()->requestResidency(lod_coverage, KRTexture::TEXTURE_USAGE_NORMAL_MAP); pShader->setImageBinding("normalTexture", m_normalMap.get(), getContext().getSamplerManager()->DEFAULT_WRAPPING_SAMPLER); } if (bReflectionCubeMap) { - m_reflectionCube.get()->resetPoolExpiry(lod_coverage, KRTexture::TEXTURE_USAGE_REFECTION_CUBE); + m_reflectionCube.get()->requestResidency(lod_coverage, KRTexture::TEXTURE_USAGE_REFECTION_CUBE); pShader->setImageBinding("reflectionCubeTexture", m_reflectionCube.get(), getContext().getSamplerManager()->DEFAULT_CLAMPED_SAMPLER); } if (bReflectionMap) { - m_reflectionMap.get()->resetPoolExpiry(lod_coverage, KRTexture::TEXTURE_USAGE_REFLECTION_MAP); + m_reflectionMap.get()->requestResidency(lod_coverage, KRTexture::TEXTURE_USAGE_REFLECTION_MAP); pShader->setImageBinding("reflectionTexture", m_reflectionMap.get(), getContext().getSamplerManager()->DEFAULT_CLAMPED_SAMPLER); } diff --git a/kraken/resources/mesh/KRMesh.cpp b/kraken/resources/mesh/KRMesh.cpp index dc637ad..43d6a35 100755 --- a/kraken/resources/mesh/KRMesh.cpp +++ b/kraken/resources/mesh/KRMesh.cpp @@ -198,7 +198,7 @@ void KRMesh::preStream(float lodCoverage) for (Submesh& mesh : m_submeshes) { for (shared_ptr& vbo : mesh.vbo_data_blocks) { - vbo->resetPoolExpiry(lodCoverage); + vbo->requestResidency(lodCoverage); } } } diff --git a/kraken/resources/mesh/KRMeshManager.cpp b/kraken/resources/mesh/KRMeshManager.cpp index 6040478..32d5aaf 100755 --- a/kraken/resources/mesh/KRMeshManager.cpp +++ b/kraken/resources/mesh/KRMeshManager.cpp @@ -171,7 +171,7 @@ unordered_map& KRMeshManager::getMeshes() void KRMeshManager::bindVBO(VkCommandBuffer& commandBuffer, KRVBOData* vbo_data, float lodCoverage) { - vbo_data->resetPoolExpiry(lodCoverage); + vbo_data->requestResidency(lodCoverage); bool vbo_changed = false; if (m_currentVBO == NULL) { @@ -632,7 +632,7 @@ void KRMeshManager::KRVBOData::bind(VkCommandBuffer& commandBuffer) } } -void KRMeshManager::KRVBOData::resetPoolExpiry(float lodCoverage) +void KRMeshManager::KRVBOData::requestResidency(float lodCoverage) { long current_frame = m_manager->getContext().getCurrentFrame(); if (current_frame != m_last_frame_used) { diff --git a/kraken/resources/mesh/KRMeshManager.h b/kraken/resources/mesh/KRMeshManager.h index 82abd78..d479e09 100755 --- a/kraken/resources/mesh/KRMeshManager.h +++ b/kraken/resources/mesh/KRMeshManager.h @@ -123,7 +123,7 @@ public: return (long)m_size; } - void resetPoolExpiry(float lodCoverage); + void requestResidency(float lodCoverage); long getLastFrameUsed() { return m_last_frame_used; diff --git a/kraken/resources/texture/KRTexture.cpp b/kraken/resources/texture/KRTexture.cpp index 3afdd4e..810b785 100755 --- a/kraken/resources/texture/KRTexture.cpp +++ b/kraken/resources/texture/KRTexture.cpp @@ -146,7 +146,7 @@ void KRTexture::resize(int max_dim) m_handle_lock.clear(); } -void KRTexture::resetPoolExpiry(float lodCoverage, KRTexture::texture_usage_t textureUsage) +void KRTexture::requestResidency(float lodCoverage, KRTexture::texture_usage_t textureUsage) { long current_frame = getContext().getCurrentFrame(); if (current_frame != m_last_frame_used) { diff --git a/kraken/resources/texture/KRTexture.h b/kraken/resources/texture/KRTexture.h index 01b8eaa..b6e1b61 100755 --- a/kraken/resources/texture/KRTexture.h +++ b/kraken/resources/texture/KRTexture.h @@ -77,7 +77,7 @@ public: float getStreamPriority(); - virtual void resetPoolExpiry(float lodCoverage, texture_usage_t textureUsage); + virtual void requestResidency(float lodCoverage, texture_usage_t textureUsage); virtual bool isAnimated(); virtual KRTexture* compress(bool premultiply_alpha = false); diff --git a/kraken/resources/texture/KRTextureAnimated.cpp b/kraken/resources/texture/KRTextureAnimated.cpp index b20af88..85a546b 100755 --- a/kraken/resources/texture/KRTextureAnimated.cpp +++ b/kraken/resources/texture/KRTextureAnimated.cpp @@ -91,13 +91,13 @@ long KRTextureAnimated::getMemRequiredForSize(int max_dim) } -void KRTextureAnimated::resetPoolExpiry(float lodCoverage, texture_usage_t textureUsage) +void KRTextureAnimated::requestResidency(float lodCoverage, texture_usage_t textureUsage) { - KRTexture::resetPoolExpiry(lodCoverage, textureUsage); + KRTexture::requestResidency(lodCoverage, textureUsage); for (int i = 0; i < m_frame_count; i++) { KRTexture2D* frame_texture = textureForFrame(i); if (frame_texture) { - frame_texture->resetPoolExpiry(lodCoverage, textureUsage); // Ensure that frames of animated textures do not expire from the texture pool prematurely, as they are referenced indirectly + frame_texture->requestResidency(lodCoverage, textureUsage); // Ensure that frames of animated textures do not expire from the texture pool prematurely, as they are referenced indirectly } } } @@ -106,7 +106,7 @@ void KRTextureAnimated::resetPoolExpiry(float lodCoverage, texture_usage_t textu /* void KRTextureAnimated::bind(int texture_unit) { - resetPoolExpiry(0.0f, TEXTURE_USAGE_NONE); // TODO - Need to set parameters here for streaming priority? + requestResidency(0.0f, TEXTURE_USAGE_NONE); // TODO - Need to set parameters here for streaming priority? KRTexture::bind(texture_unit); int frame_number = (int)floor(fmodf(getContext().getAbsoluteTime() * m_frame_rate, (float)m_frame_count)); KRTexture2D* frame_texture = textureForFrame(frame_number); diff --git a/kraken/resources/texture/KRTextureAnimated.h b/kraken/resources/texture/KRTextureAnimated.h index f7dd45d..5718f5e 100755 --- a/kraken/resources/texture/KRTextureAnimated.h +++ b/kraken/resources/texture/KRTextureAnimated.h @@ -46,7 +46,7 @@ public: virtual bool save(Block& data) override; virtual long getMemRequiredForSize(int max_dim) override; - virtual void resetPoolExpiry(float lodCoverage, texture_usage_t textureUsage) override; + virtual void requestResidency(float lodCoverage, texture_usage_t textureUsage) override; virtual long getReferencedMemSize() override; diff --git a/kraken/resources/texture/KRTextureBinding.cpp b/kraken/resources/texture/KRTextureBinding.cpp index 2a3a8b9..be6894b 100644 --- a/kraken/resources/texture/KRTextureBinding.cpp +++ b/kraken/resources/texture/KRTextureBinding.cpp @@ -50,4 +50,4 @@ bool KRTextureBinding::bind(KRContext* context) m_resource = context->getTextureManager()->getTexture(m_name); return (m_resource != nullptr); -} \ No newline at end of file +} diff --git a/kraken/resources/texture/KRTextureCube.cpp b/kraken/resources/texture/KRTextureCube.cpp index 24f15cd..934f818 100755 --- a/kraken/resources/texture/KRTextureCube.cpp +++ b/kraken/resources/texture/KRTextureCube.cpp @@ -146,12 +146,12 @@ long KRTextureCube::getMemRequiredForSize(int max_dim) } -void KRTextureCube::resetPoolExpiry(float lodCoverage, texture_usage_t textureUsage) +void KRTextureCube::requestResidency(float lodCoverage, texture_usage_t textureUsage) { - KRTexture::resetPoolExpiry(lodCoverage, textureUsage); + KRTexture::requestResidency(lodCoverage, textureUsage); for(int i=0; i<6; i++) { if(m_textures[i]) { - m_textures[i]->resetPoolExpiry(lodCoverage, textureUsage); // Ensure that side of cube maps do not expire from the texture pool prematurely, as they are referenced indirectly + m_textures[i]->requestResidency(lodCoverage, textureUsage); // Ensure that side of cube maps do not expire from the texture pool prematurely, as they are referenced indirectly } } } diff --git a/kraken/resources/texture/KRTextureCube.h b/kraken/resources/texture/KRTextureCube.h index c14475e..f9b8608 100755 --- a/kraken/resources/texture/KRTextureCube.h +++ b/kraken/resources/texture/KRTextureCube.h @@ -45,7 +45,7 @@ public: virtual bool save(mimir::Block& data) override; virtual long getMemRequiredForSize(int max_dim) override; - virtual void resetPoolExpiry(float lodCoverage, texture_usage_t textureUsage) override; + virtual void requestResidency(float lodCoverage, texture_usage_t textureUsage) override; virtual int getFaceCount() const override; virtual VkFormat getFormat() const override;