/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2016 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/public-api/common/stage.h>
#include <dali/public-api/object/property-map.h>
#include <dali/public-api/render-tasks/render-task-list.h>
-#include <dali/devel-api/rendering/renderer.h>
-#include <dali-toolkit/devel-api/controls/renderer-factory/renderer-factory.h>
+#include <dali/public-api/rendering/renderer.h>
+#include <dali/devel-api/images/texture-set-image.h>
// INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
namespace Dali
{
rendererMap.Insert( "shader", customShader );
// create actor to render input with applied emboss effect
- mActorForInput1 = Toolkit::ImageView::New( mInputImage );
+ mActorForInput1 = Toolkit::ImageView::New(mInputImage);
mActorForInput1.SetParentOrigin( ParentOrigin::CENTER );
mActorForInput1.SetSize(mTargetSize);
Vector2 textureScale( 1.5f/mTargetSize.width, 1.5f/mTargetSize.height);
mActorForInput1.SetProperty( Toolkit::ImageView::Property::IMAGE, rendererMap );
mRootActor.Add( mActorForInput1 );
- mActorForInput2 = Toolkit::ImageView::New( mInputImage );
+ mActorForInput2 = Toolkit::ImageView::New(mInputImage);
mActorForInput2.SetParentOrigin( ParentOrigin::CENTER );
mActorForInput2.SetSize(mTargetSize);
mActorForInput2.RegisterProperty( TEX_SCALE_UNIFORM_NAME, textureScale );
customShader[ "fragmentShader" ] = COMPOSITE_FRAGMENT_SOURCE;
rendererMap[ "shader"] = customShader;
- Toolkit::RendererFactory rendererFactory = Toolkit::RendererFactory::Get();
- mRendererForEmboss1 = rendererFactory.GetControlRenderer( mImageForEmboss1 );
- mRendererForEmboss2 = rendererFactory.GetControlRenderer( mImageForEmboss2 );
- // set COMPOSITE custom shader to both renderers
- rendererFactory.ResetRenderer( mRendererForEmboss1, mActorForComposite, rendererMap);
- rendererFactory.ResetRenderer( mRendererForEmboss2, mActorForComposite, rendererMap);
- // apply renderers to the actor
- mRendererForEmboss1.SetOnStage( mActorForComposite );
- mRendererForEmboss2.SetOnStage( mActorForComposite );
+ rendererMap[ "rendererType"] = "IMAGE";
+
+ mRootActor.Add( mActorForComposite );
+
+ InitializeVisual( mActorForComposite, mRendererForEmboss1, rendererMap );
+ InitializeVisual( mActorForComposite, mRendererForEmboss2, rendererMap );
+
+ 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 );
mActorForComposite.GetRendererAt(1).RegisterProperty( COLOR_UNIFORM_NAME, Color::WHITE );
- mRootActor.Add( mActorForComposite );
SetupCamera();
CreateRenderTasks();