Merge "DALi Version 1.1.26" into devel/master
[platform/core/uifw/dali-core.git] / dali / internal / update / render-tasks / scene-graph-render-task.cpp
index 95b9015..d22fd54 100644 (file)
@@ -230,7 +230,7 @@ bool RenderTask::ReadyToRender( BufferIndex updateBufferIndex )
   // Check camera node
   if ( NULL == mCameraNode ||
        NULL == mCameraNode->GetParent() ||
-       !mCameraNode->HasAttachment() )
+       NULL == mCameraAttachment )
   {
     // Camera node is missing or disconnected
     TASK_LOG_FMT(Debug::General, " =F  No Camera  FC:%d\n", mFrameCounter );
@@ -238,6 +238,8 @@ bool RenderTask::ReadyToRender( BufferIndex updateBufferIndex )
     return false;
   }
 
+  mCameraAttachment->Update( updateBufferIndex, *mCameraNode );
+
   TASK_LOG_FMT(Debug::General, " =T (FBO ID:%d) FC:%d\n", mFrameBufferResourceId , mFrameCounter );
   return true;
 }
@@ -417,10 +419,11 @@ void RenderTask::PrepareRenderInstruction( RenderInstruction& instruction, Buffe
                      viewportSet ? &viewport : NULL,
                      mClearEnabled ? &GetClearColor( updateBufferIndex ) : NULL );
 
-  // if using native framebuffer, add a tracker
-  if( mTargetIsNativeFramebuffer )
+  if( mTargetIsNativeFramebuffer &&
+      mRefreshRate == Dali::RenderTask::REFRESH_ONCE &&
+      mResourcesFinished )
   {
-    // create tracker if not yet exists. if we switch to on-screen fbo, we still keep the tracker in case we need it again
+    // create tracker if one doesn't yet exist.
     if( !mRenderSyncTracker )
     {
       mRenderSyncTracker = new Render::RenderTracker();