X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftransition-effects%2Fcube-transition-effect-impl.cpp;h=1cee6e1a9bfcf22aad7d30fbc26a7d9722e82686;hp=b8ecd96d7736ba0cd6b88d3b53ca3d75d79d62b4;hb=a2de9cf491172cd5da9dc9ed60b17683dab6d7bc;hpb=6c6cdc0f1c2e6373e4eb3bf74397abba5befe026 diff --git a/dali-toolkit/internal/transition-effects/cube-transition-effect-impl.cpp b/dali-toolkit/internal/transition-effects/cube-transition-effect-impl.cpp index b8ecd96..1cee6e1 100644 --- a/dali-toolkit/internal/transition-effects/cube-transition-effect-impl.cpp +++ b/dali-toolkit/internal/transition-effects/cube-transition-effect-impl.cpp @@ -270,16 +270,19 @@ void CubeTransitionEffect::Initialize() void CubeTransitionEffect::OnStageConnection( int depth ) { + Control::OnStageConnection( depth ); + Geometry geometry = CreateQuadGeometry(); Shader shader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER ); - Material material = Material::New( shader ); + TextureSet textureSet = TextureSet::New(); if( mCurrentImage ) { - material.AddTexture( mCurrentImage, "sTexture" ); + textureSet.SetImage( 0u, mCurrentImage ); } - mCurrentRenderer = Renderer::New( geometry, material ); + mCurrentRenderer = Renderer::New( geometry, shader ); + mCurrentRenderer.SetTextures( textureSet ); mCurrentRenderer.SetProperty( Renderer::Property::DEPTH_INDEX, depth ); Self().AddRenderer( mCurrentRenderer ); @@ -306,6 +309,8 @@ void CubeTransitionEffect::OnStageDisconnection() } mTargetRenderer.Reset(); } + + Control::OnStageDisconnection(); } void CubeTransitionEffect::SetTransitionDuration( float duration ) @@ -336,20 +341,10 @@ bool CubeTransitionEffect::IsTransitioning() void CubeTransitionEffect::SetCurrentImage( Image image ) { mCurrentImage = image; - if( mCurrentRenderer ) { - Material material = mCurrentRenderer.GetMaterial(); - - int index = material.GetTextureIndex("sTexture" ); - if( index != -1 ) - { - material.SetTextureImage( index, mCurrentImage ); - } - else - { - material.AddTexture( mCurrentImage, "sTexture" ); - } + TextureSet textureSet = mCurrentRenderer.GetTextures(); + textureSet.SetImage( 0u, mCurrentImage ); } } @@ -359,8 +354,8 @@ void CubeTransitionEffect::SetTargetImage( Image image ) if( mTargetRenderer ) { - Material material = mTargetRenderer.GetMaterial(); - material.AddTexture( mTargetImage, "sTexture" ); + TextureSet textureSet = mTargetRenderer.GetTextures(); + textureSet.SetImage( 0u, mTargetImage ); } } @@ -386,13 +381,15 @@ void CubeTransitionEffect::StartTransition( Vector2 panPosition, Vector2 panDisp } //create the target renderer - Material material = Material::New( mCurrentRenderer.GetMaterial().GetShader() ); + TextureSet textureSet = TextureSet::New(); if( mTargetImage ) { - material.AddTexture( mTargetImage, "sTexture" ); + textureSet.SetImage( 0u, mTargetImage ); } Geometry geometry = mCurrentRenderer.GetGeometry(); - mTargetRenderer = Renderer::New( geometry, material ); + Shader shader( mCurrentRenderer.GetShader() ); + mTargetRenderer = Renderer::New( geometry, shader ); + mTargetRenderer.SetTextures( textureSet ); int depthIndex = mCurrentRenderer.GetProperty(Renderer::Property::DEPTH_INDEX); mTargetRenderer.SetProperty( Dali::Renderer::Property::DEPTH_INDEX, depthIndex );