X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ffilters%2Femboss-filter.cpp;h=7f6dd1859f4f8447b5ff70a137d422e3c84bbf12;hb=118f87dfe57967bfed8ccdf9143a078eaef1b119;hp=c10d1225a93a6388db1b0d4bcaed0862a55f93e5;hpb=11ed6421771d05113ae1a6510167d8c2557ac20e;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/filters/emboss-filter.cpp b/dali-toolkit/internal/filters/emboss-filter.cpp index c10d122..7f6dd18 100644 --- a/dali-toolkit/internal/filters/emboss-filter.cpp +++ b/dali-toolkit/internal/filters/emboss-filter.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * Copyright (c) 2017 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. @@ -28,8 +28,10 @@ #include // INTERNAL INCLUDES -#include #include +#include +#include +#include namespace Dali { @@ -89,8 +91,8 @@ EmbossFilter::~EmbossFilter() void EmbossFilter::Enable() { - mImageForEmboss1 = FrameBufferImage::New( mTargetSize.width, mTargetSize.height, mPixelFormat, Image::UNUSED ); - mImageForEmboss2 = FrameBufferImage::New( mTargetSize.width, mTargetSize.height, mPixelFormat, Image::UNUSED ); + mImageForEmboss1 = FrameBufferImage::New( mTargetSize.width, mTargetSize.height, mPixelFormat ); + mImageForEmboss2 = FrameBufferImage::New( mTargetSize.width, mTargetSize.height, mPixelFormat ); Property::Map customShader; customShader[ Toolkit::Visual::Shader::Property::FRAGMENT_SHADER ] = EMBOSS_FRAGMENT_SOURCE; @@ -123,22 +125,14 @@ void EmbossFilter::Enable() mActorForComposite.SetColor( Color::BLACK ); customShader[ Toolkit::Visual::Shader::Property::FRAGMENT_SHADER ] = COMPOSITE_FRAGMENT_SOURCE; - visualMap[ Toolkit::Visual::Property::SHADER ] = customShader; - visualMap[ Toolkit::Visual::Property::TYPE ] = Toolkit::Visual::IMAGE; mRootActor.Add( mActorForComposite ); - InitializeVisual( mActorForComposite, mVisualForEmboss1, visualMap ); - InitializeVisual( mActorForComposite, mVisualForEmboss2, visualMap ); - - TextureSet textureSet1 = TextureSet::New(); - TextureSetImage( textureSet1, 0, mImageForEmboss1 ); - mActorForComposite.GetRendererAt(0).SetTextures( textureSet1 ); + Internal::InitializeVisual( mActorForComposite, mVisualForEmboss1, mImageForEmboss1 ); + Toolkit::GetImplementation( mVisualForEmboss1 ).SetCustomShader( customShader ); mActorForComposite.GetRendererAt(0).RegisterProperty( COLOR_UNIFORM_NAME, Color::BLACK ); - - TextureSet textureSet2 = TextureSet::New(); - TextureSetImage( textureSet2, 0, mImageForEmboss2 ); - mActorForComposite.GetRendererAt(1).SetTextures( textureSet2 ); + Internal::InitializeVisual( mActorForComposite, mVisualForEmboss2, mImageForEmboss2 ); + Toolkit::GetImplementation( mVisualForEmboss2 ).SetCustomShader( customShader ); mActorForComposite.GetRendererAt(1).RegisterProperty( COLOR_UNIFORM_NAME, Color::WHITE ); SetupCamera(); @@ -169,8 +163,8 @@ void EmbossFilter::Disable() if( mActorForComposite ) { - mVisualForEmboss1.SetOffStage( mActorForComposite ); - mVisualForEmboss2.SetOffStage( mActorForComposite ); + Toolkit::GetImplementation(mVisualForEmboss1).SetOffStage( mActorForComposite ); + Toolkit::GetImplementation(mVisualForEmboss2).SetOffStage( mActorForComposite ); mVisualForEmboss1.Reset(); mVisualForEmboss2.Reset(); mRootActor.Remove( mActorForComposite ); @@ -188,6 +182,11 @@ void EmbossFilter::Disable() taskList.RemoveTask(mRenderTaskForEmboss2); } + if( mRenderTaskForOutput ) + { + taskList.RemoveTask( mRenderTaskForOutput ); + } + mRootActor.Reset(); } }