KRCamera now using KRTextureBinding for the debug font
This commit is contained in:
@@ -89,6 +89,7 @@ KRCamera::KRCamera(KRScene& scene, std::string name)
|
|||||||
m_frame_times_filled = 0;
|
m_frame_times_filled = 0;
|
||||||
|
|
||||||
m_fade_color = Vector4::Zero();
|
m_fade_color = Vector4::Zero();
|
||||||
|
m_fontTexture.set("font");
|
||||||
|
|
||||||
m_debug_text_vbo_data.init(m_pContext->getMeshManager(), &m_debug_text_vertices, nullptr, (1 << KRMesh::KRENGINE_ATTRIB_VERTEX) | (1 << KRMesh::KRENGINE_ATTRIB_TEXUVA), true, KRMeshManager::KRVBOData::IMMEDIATE
|
m_debug_text_vbo_data.init(m_pContext->getMeshManager(), &m_debug_text_vertices, nullptr, (1 << KRMesh::KRENGINE_ATTRIB_VERTEX) | (1 << KRMesh::KRENGINE_ATTRIB_TEXUVA), true, KRMeshManager::KRVBOData::IMMEDIATE
|
||||||
#if KRENGINE_DEBUG_GPU_LABELS
|
#if KRENGINE_DEBUG_GPU_LABELS
|
||||||
@@ -148,10 +149,15 @@ void KRCamera::preStream(const KRViewport& viewport, std::list<KRResourceRequest
|
|||||||
KRNode::preStream(viewport, resourceRequests);
|
KRNode::preStream(viewport, resourceRequests);
|
||||||
|
|
||||||
m_skyBox.bind(&getContext());
|
m_skyBox.bind(&getContext());
|
||||||
|
m_fontTexture.bind(&getContext());
|
||||||
|
|
||||||
if (m_skyBox.isBound()) {
|
if (m_skyBox.isBound()) {
|
||||||
resourceRequests.emplace_back(m_skyBox.get(), KRTexture::TEXTURE_USAGE_SKY_CUBE);
|
resourceRequests.emplace_back(m_skyBox.get(), KRTexture::TEXTURE_USAGE_SKY_CUBE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (m_fontTexture.isBound()) {
|
||||||
|
resourceRequests.emplace_back(m_fontTexture.get(), KRTexture::TEXTURE_USAGE_UI);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void KRCamera::render(KRNode::RenderInfo& ri)
|
void KRCamera::render(KRNode::RenderInfo& ri)
|
||||||
@@ -622,10 +628,8 @@ void KRCamera::renderDebug(RenderInfo& ri)
|
|||||||
}
|
}
|
||||||
|
|
||||||
m_debug_text_vbo_data.load(ri.commandBuffer);
|
m_debug_text_vbo_data.load(ri.commandBuffer);
|
||||||
|
|
||||||
|
|
||||||
KRTexture* fontTexture = m_pContext->getTextureManager()->getTexture("font");
|
KRTexture* fontTexture = m_fontTexture.get();
|
||||||
fontTexture->requestResidency(0.0f, KRTexture::TEXTURE_USAGE_UI);
|
|
||||||
if (fontTexture->getStreamLevel(KRTexture::TEXTURE_USAGE_UI) != kraken_stream_level::STREAM_LEVEL_OUT) {
|
if (fontTexture->getStreamLevel(KRTexture::TEXTURE_USAGE_UI) != kraken_stream_level::STREAM_LEVEL_OUT) {
|
||||||
|
|
||||||
PipelineInfo info{};
|
PipelineInfo info{};
|
||||||
|
|||||||
@@ -104,7 +104,6 @@ private:
|
|||||||
|
|
||||||
KrSurfaceHandle m_surfaceHandle;
|
KrSurfaceHandle m_surfaceHandle;
|
||||||
|
|
||||||
KRTextureBinding m_skyBox;
|
|
||||||
KRViewport m_viewport;
|
KRViewport m_viewport;
|
||||||
|
|
||||||
float m_particlesAbsoluteTime;
|
float m_particlesAbsoluteTime;
|
||||||
@@ -123,6 +122,9 @@ private:
|
|||||||
mimir::Block m_debug_text_vertices;
|
mimir::Block m_debug_text_vertices;
|
||||||
KRMeshManager::KRVBOData m_debug_text_vbo_data;
|
KRMeshManager::KRVBOData m_debug_text_vbo_data;
|
||||||
|
|
||||||
|
KRTextureBinding m_fontTexture;
|
||||||
|
KRTextureBinding m_skyBox;
|
||||||
|
|
||||||
uint64_t m_last_frame_start;
|
uint64_t m_last_frame_start;
|
||||||
int m_frame_times[KRAKEN_FPS_AVERAGE_FRAME_COUNT];
|
int m_frame_times[KRAKEN_FPS_AVERAGE_FRAME_COUNT];
|
||||||
int m_frame_times_filled;
|
int m_frame_times_filled;
|
||||||
|
|||||||
Reference in New Issue
Block a user