projects
/
platform
/
core
/
uifw
/
dali-core.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[Tizen] Implement partial update
[platform/core/uifw/dali-core.git]
/
dali
/
internal
/
render
/
common
/
render-algorithms.cpp
diff --git
a/dali/internal/render/common/render-algorithms.cpp
b/dali/internal/render/common/render-algorithms.cpp
old mode 100644
(file)
new mode 100755
(executable)
index
6eb4b50
..
610496d
--- a/
dali/internal/render/common/render-algorithms.cpp
+++ b/
dali/internal/render/common/render-algorithms.cpp
@@
-1,5
+1,5
@@
/*
/*
- * Copyright (c) 201
8
Samsung Electronics Co., Ltd.
+ * Copyright (c) 201
9
Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@
-414,7
+414,9
@@
inline void RenderAlgorithms::ProcessRenderList( const RenderList& renderList,
const Matrix& projectionMatrix,
Integration::DepthBufferAvailable depthBufferAvailable,
Integration::StencilBufferAvailable stencilBufferAvailable,
const Matrix& projectionMatrix,
Integration::DepthBufferAvailable depthBufferAvailable,
Integration::StencilBufferAvailable stencilBufferAvailable,
- int orientation )
+ Vector<GLuint>& boundTextures,
+ int orientation,
+ Dali::ClippingBox& scissorBox )
{
DALI_PRINT_RENDER_LIST( renderList );
{
DALI_PRINT_RENDER_LIST( renderList );
@@
-473,6
+475,12
@@
inline void RenderAlgorithms::ProcessRenderList( const RenderList& renderList,
mScissorStack.push_back( layerScissorBox );
mHasLayerScissor = true;
}
mScissorStack.push_back( layerScissorBox );
mHasLayerScissor = true;
}
+ else if ( !scissorBox.IsEmpty() )
+ {
+ context.SetScissorTest( true );
+ context.Scissor( scissorBox.x, scissorBox.y, scissorBox.width, scissorBox.height );
+ mScissorStack.push_back( scissorBox );
+ }
else
{
// We are not performing a layer clip. Add the viewport as the root scissor rectangle.
else
{
// We are not performing a layer clip. Add the viewport as the root scissor rectangle.
@@
-504,7
+512,7
@@
inline void RenderAlgorithms::ProcessRenderList( const RenderList& renderList,
// Render the item.
item.mRenderer->Render( context, bufferIndex, *item.mNode, item.mModelMatrix, item.mModelViewMatrix,
// Render the item.
item.mRenderer->Render( context, bufferIndex, *item.mNode, item.mModelMatrix, item.mModelViewMatrix,
- viewMatrix, projectionMatrix, item.mSize, !item.mIsOpaque );
+ viewMatrix, projectionMatrix, item.mSize, !item.mIsOpaque
, boundTextures
);
}
}
}
}
}
}
@@
-520,7
+528,9
@@
void RenderAlgorithms::ProcessRenderInstruction( const RenderInstruction& instru
BufferIndex bufferIndex,
Integration::DepthBufferAvailable depthBufferAvailable,
Integration::StencilBufferAvailable stencilBufferAvailable,
BufferIndex bufferIndex,
Integration::DepthBufferAvailable depthBufferAvailable,
Integration::StencilBufferAvailable stencilBufferAvailable,
- int orientation )
+ Vector<GLuint>& boundTextures,
+ int orientation,
+ Dali::ClippingBox& scissorBox )
{
DALI_PRINT_RENDER_INSTRUCTION( instruction, bufferIndex );
{
DALI_PRINT_RENDER_INSTRUCTION( instruction, bufferIndex );
@@
-549,7
+559,9
@@
void RenderAlgorithms::ProcessRenderInstruction( const RenderInstruction& instru
*projectionMatrix,
depthBufferAvailable,
stencilBufferAvailable,
*projectionMatrix,
depthBufferAvailable,
stencilBufferAvailable,
- orientation );
+ boundTextures,
+ orientation,
+ scissorBox );
}
}
}
}
}
}