/*
- * 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.
#include <dali/devel-api/images/texture-set-image.h>
// INTERNAL INCLUDES
-#include <dali-toolkit/public-api/visuals/visual-properties.h>
#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+#include <dali-toolkit/public-api/visuals/visual-properties.h>
#include <dali-toolkit/internal/visuals/visual-base-impl.h>
+#include <dali-toolkit/internal/visuals/visual-factory-impl.h>
namespace Dali
{
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;
mRootActor.Add( mActorForComposite );
- Image dummyImage; // Dummy image, force creation of an image visual
-
- InitializeVisual( mActorForComposite, mVisualForEmboss1, dummyImage );
+ Internal::InitializeVisual( mActorForComposite, mVisualForEmboss1, mImageForEmboss1 );
Toolkit::GetImplementation( mVisualForEmboss1 ).SetCustomShader( customShader );
-
- InitializeVisual( mActorForComposite, mVisualForEmboss2, dummyImage );
- Toolkit::GetImplementation( mVisualForEmboss2 ).SetCustomShader( customShader );
-
- TextureSet textureSet1 = TextureSet::New();
- TextureSetImage( textureSet1, 0, mImageForEmboss1 );
- mActorForComposite.GetRendererAt(0).SetTextures( textureSet1 );
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();
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 );
taskList.RemoveTask(mRenderTaskForEmboss2);
}
+ if( mRenderTaskForOutput )
+ {
+ taskList.RemoveTask( mRenderTaskForOutput );
+ }
+
mRootActor.Reset();
}
}