Ensure to check GLES::ShaderImpl when we found GLES:ProgramImpl 37/301637/10
authorEunki, Hong <eunkiki.hong@samsung.com>
Tue, 21 Nov 2023 06:28:04 +0000 (15:28 +0900)
committerEunki, Hong <eunkiki.hong@samsung.com>
Mon, 27 Nov 2023 02:02:37 +0000 (11:02 +0900)
commit3247f94a6e8adf3433949d20d51830ddb31d7e45
tree903f7d1baf1895c6bcb992312fca9cb14fd7bc08
parent90826a3d16e7eed1f4d9c350986a11e384960410
Ensure to check GLES::ShaderImpl when we found GLES:ProgramImpl

Previously, We only consider 1 Graphis::Shader per 1 shader codes.
But for now, we allow to use multiple Graphics::Shader per 1 shader code,
by cache GLES::ShaderImpl system.

But we check Graphics::Shader pointer when we found cached ProgramImpl for now.

It will make some unneccessary glLinkProgram call when Graphics::Shader cache
miss occured.

To resolve it, let we cache GLES::Shader wrapper instead of Graphics::Shader.
And compare with the pointer of GLES::ShaderImpl.

Change-Id: I0681cb96448c75a7d6841011c49803329ed3116d
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
automated-tests/src/dali-graphics/utc-Dali-GraphicsProgram.cpp
dali/internal/graphics/gles-impl/gles-graphics-pipeline-cache.cpp
dali/internal/graphics/gles-impl/gles-graphics-pipeline-cache.h
dali/internal/graphics/gles-impl/gles-graphics-shader.cpp