[Tizen] Print logs when scene initialize and uninitialized + print log if render... 42/323742/1 accepted/tizen/7.0/unified/20250508.153853
authorEunki Hong <eunkiki.hong@samsung.com>
Fri, 2 May 2025 06:51:09 +0000 (15:51 +0900)
committerEunki, Hong <eunkiki.hong@samsung.com>
Wed, 7 May 2025 04:11:42 +0000 (13:11 +0900)
+

Skip PreRenderScene if it is not initialized

hange-Id: I61f651aa70431fb0f0095609077ec92a4ef52698
Change-Id: Ib8e589f67f02c69956dc41fdc02bc94a94eb4222
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
dali/internal/render/common/render-manager.cpp

index 2109d3b8aff9288cd930493b68a1f54a2ce0d150..aa2e14d9ecfbe377016855d8b1c65321d7d9ba0e 100644 (file)
@@ -317,12 +317,14 @@ void RenderManager::RemoveFrameBuffer(Render::FrameBuffer* frameBuffer)
 
 void RenderManager::InitializeScene(SceneGraph::Scene* scene)
 {
+  DALI_LOG_RELEASE_INFO("InitializeScene %p\n", scene);
   scene->Initialize(mImpl->graphicsController, mImpl->depthBufferAvailable, mImpl->stencilBufferAvailable);
   mImpl->sceneContainer.push_back(scene);
 }
 
 void RenderManager::UninitializeScene(SceneGraph::Scene* scene)
 {
+  DALI_LOG_RELEASE_INFO("UninitializeScene %p\n", scene);
   auto iter = std::find(mImpl->sceneContainer.begin(), mImpl->sceneContainer.end(), scene);
   if(iter != mImpl->sceneContainer.end())
   {
@@ -501,7 +503,7 @@ void RenderManager::PreRender(Integration::Scene& scene, std::vector<Rect<int>>&
   Internal::Scene&   sceneInternal = GetImplementation(scene);
   SceneGraph::Scene* sceneObject   = sceneInternal.GetSceneObject();
 
-  if(!sceneObject || sceneObject->IsRenderingSkipped())
+  if(!sceneObject || !sceneObject->GetSurfaceRenderTarget() || sceneObject->IsRenderingSkipped())
   {
     // We don't need to calculate dirty rects
     return;
@@ -769,7 +771,7 @@ void RenderManager::RenderScene(Integration::RenderStatus& status, Integration::
 
   Internal::Scene&   sceneInternal = GetImplementation(scene);
   SceneGraph::Scene* sceneObject   = sceneInternal.GetSceneObject();
-  if(!sceneObject)
+  if(!sceneObject || !sceneObject->GetSurfaceRenderTarget())
   {
     return;
   }