X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Frenderers%2Fsvg%2Fsvg-renderer.cpp;h=2642c743286dedddeba1e1d9dec753fd79ef8235;hp=d3c128d14dac8475ccf437767b53f4d76a123bc3;hb=a2de9cf491172cd5da9dc9ed60b17683dab6d7bc;hpb=301d5a88d13f48dd5220fbcb21231ce4516f313f diff --git a/dali-toolkit/internal/controls/renderers/svg/svg-renderer.cpp b/dali-toolkit/internal/controls/renderers/svg/svg-renderer.cpp index d3c128d..2642c74 100644 --- a/dali-toolkit/internal/controls/renderers/svg/svg-renderer.cpp +++ b/dali-toolkit/internal/controls/renderers/svg/svg-renderer.cpp @@ -104,8 +104,9 @@ void SvgRenderer::DoSetOnStage( Actor& actor ) geometry = mFactoryCache.CreateQuadGeometry(); mFactoryCache.SaveGeometry( RendererFactoryCache::QUAD_GEOMETRY, geometry ); } - Material material = Material::New( shader ); - mImpl->mRenderer = Renderer::New( geometry, material ); + TextureSet textureSet = TextureSet::New(); + mImpl->mRenderer = Renderer::New( geometry, shader ); + mImpl->mRenderer.SetTextures( textureSet ); if( mImpl->mSize != Vector2::ZERO && mParsedImage ) { @@ -197,19 +198,19 @@ void SvgRenderer::ApplyRasterizedImage( PixelDataPtr rasterizedPixelData ) { if( GetIsOnStage() ) { - Material currentMaterial = mImpl->mRenderer.GetMaterial(); + TextureSet currentTextureSet = mImpl->mRenderer.GetTextures(); if( mAtlasRect != FULL_TEXTURE_RECT ) { - mAtlasManager.Remove( currentMaterial, mAtlasRect ); + mAtlasManager.Remove( currentTextureSet, mAtlasRect ); } Vector4 atlasRect; - Material material = mAtlasManager.Add(atlasRect, rasterizedPixelData ); - if( material ) // atlasing + TextureSet textureSet = mAtlasManager.Add(atlasRect, rasterizedPixelData ); + if( textureSet ) // atlasing { - if( material != currentMaterial ) + if( textureSet != currentTextureSet ) { - mImpl->mRenderer.SetMaterial( material ); + mImpl->mRenderer.SetTextures( textureSet ); } mImpl->mRenderer.RegisterProperty( ATLAS_RECT_UNIFORM_NAME, atlasRect ); mAtlasRect = atlasRect; @@ -221,27 +222,20 @@ void SvgRenderer::ApplyRasterizedImage( PixelDataPtr rasterizedPixelData ) if( mAtlasRect == FULL_TEXTURE_RECT ) { - material = currentMaterial; + textureSet = currentTextureSet; } else { - material = Material::New( ImageRenderer::GetImageShader( mFactoryCache ) ); - mImpl->mRenderer.SetMaterial( material ); + textureSet = TextureSet::New(); + mImpl->mRenderer.SetTextures( textureSet ); mImpl->mRenderer.RegisterProperty( ATLAS_RECT_UNIFORM_NAME, FULL_TEXTURE_RECT ); mAtlasRect = FULL_TEXTURE_RECT; } - if( material ) + if( textureSet ) { - int index = material.GetTextureIndex( TEXTURE_UNIFORM_NAME ); - if( index != -1 ) - { - material.SetTextureImage( index, texture ); - return; - } - - material.AddTexture( texture, TEXTURE_UNIFORM_NAME ); + textureSet.SetImage( 0u, texture ); } } }