X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Finternal%2Frender%2Fcommon%2Frender-algorithms.cpp;h=0061b87e6ed4fd871968e66d6ee43fbafaa12887;hb=a06eafa8babd0523af3b6935e2c900347f96bfb8;hp=664eb6bdec61d12a842f68c449cd4a35367470ff;hpb=878f7387867e3c7e170d6c9cdca16a1da21c6955;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/internal/render/common/render-algorithms.cpp b/dali/internal/render/common/render-algorithms.cpp index 664eb6b..0061b87 100644 --- a/dali/internal/render/common/render-algorithms.cpp +++ b/dali/internal/render/common/render-algorithms.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2019 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. @@ -194,9 +194,6 @@ inline void SetupDepthBuffer( const RenderItem& item, Context& context, bool dep // The depth buffer must be enabled if either reading or writing. context.EnableDepthBuffer( true ); - // Set up the depth mask based on our depth write setting. - context.DepthMask( enableDepthWrite ); - // Look-up the GL depth function from the Dali::DepthFunction enum, and set it. context.DepthFunc( DaliDepthToGLDepthTable[ item.mRenderer->GetDepthFunction() ] ); @@ -210,8 +207,12 @@ inline void SetupDepthBuffer( const RenderItem& item, Context& context, bool dep firstDepthBufferUse = false; // Note: The buffer will only be cleared if written to since a previous clear. + context.DepthMask( true ); context.Clear( GL_DEPTH_BUFFER_BIT, Context::CHECK_CACHED_VALUES ); } + + // Set up the depth mask based on our depth write setting. + context.DepthMask( enableDepthWrite ); } else { @@ -388,7 +389,8 @@ inline void RenderAlgorithms::ProcessRenderList( const RenderList& renderList, const Matrix& viewMatrix, const Matrix& projectionMatrix, Integration::DepthBufferAvailable depthBufferAvailable, - Integration::StencilBufferAvailable stencilBufferAvailable ) + Integration::StencilBufferAvailable stencilBufferAvailable, + Vector& boundTextures ) { DALI_PRINT_RENDER_LIST( renderList ); @@ -423,7 +425,7 @@ inline void RenderAlgorithms::ProcessRenderList( const RenderList& renderList, } // Loop through all RenderList in the RenderList, set up any prerequisites to render them, then perform the render. - for( size_t index( 0u ); index < count; ++index ) + for( uint32_t index = 0u; index < count; ++index ) { const RenderItem& item = renderList.GetItem( index ); DALI_PRINT_RENDER_ITEM( item ); @@ -446,7 +448,7 @@ inline void RenderAlgorithms::ProcessRenderList( const RenderList& renderList, // 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 ); } } } @@ -461,7 +463,8 @@ void RenderAlgorithms::ProcessRenderInstruction( const RenderInstruction& instru Context& context, BufferIndex bufferIndex, Integration::DepthBufferAvailable depthBufferAvailable, - Integration::StencilBufferAvailable stencilBufferAvailable ) + Integration::StencilBufferAvailable stencilBufferAvailable, + Vector& boundTextures ) { DALI_PRINT_RENDER_INSTRUCTION( instruction, bufferIndex ); @@ -489,7 +492,8 @@ void RenderAlgorithms::ProcessRenderInstruction( const RenderInstruction& instru *viewMatrix, *projectionMatrix, depthBufferAvailable, - stencilBufferAvailable ); + stencilBufferAvailable, + boundTextures ); } } }