mVerticalBlurActor.SetProperty(Actor::Property::SIZE, Vector2(downsampledWidth, downsampledHeight));
CreateFrameBuffers(ImageDimensions(downsampledWidth, downsampledHeight));
+ SetRendererTexture(GetTargetRenderer(), mBlurredOutputFrameBuffer);
// Reset shader constants
mHorizontalBlurActor.RegisterProperty(UNIFORM_BLUR_OFFSET_DIRECTION_NAME.data(), Vector2(1.0f, 0.0f) / downsampledWidth);
mVerticalBlurActor.SetProperty(Actor::Property::SIZE, Vector2(downsampledWidth, downsampledHeight));
CreateFrameBuffers(ImageDimensions(downsampledWidth, downsampledHeight));
+ SetRendererTexture(GetTargetRenderer(), mBlurredOutputFrameBuffer);
// Reset shader constants
mHorizontalBlurActor.RegisterProperty(UNIFORM_BLUR_OFFSET_DIRECTION_NAME.data(), Vector2(1.0f, 0.0f) / downsampledWidth);
mMaskTargetRenderTask.SetFrameBuffer(mMaskTargetFrameBuffer);
mMaskSourceRenderTask.SetFrameBuffer(mMaskSourceFrameBuffer);
+
+ TextureSet textureSet = TextureSet::New();
+
+ Texture maskSourceTexture = mMaskSourceFrameBuffer.GetColorTexture();
+ Texture maskTargetTexture = mMaskTargetFrameBuffer.GetColorTexture();
+
+ textureSet.SetTexture(maskSourceIndex, maskSourceTexture);
+ textureSet.SetTexture(maskTargetIndex, maskTargetTexture);
+
+ GetTargetRenderer().SetTextures(textureSet);
}
void MaskEffectImpl::CreateFrameBuffers(const ImageDimensions size)
* @param[in] type Defines whether effect is enabled or not, and its refresh rate
*/
OffScreenRenderingImpl(DevelControl::OffScreenRenderingType type);
+
/**
* @brief Set OffScreenRenderingType explicitly
* @param[in] type Defines whether effect is enabled or not, and its refresh rate
// @copydoc Dali::Toolkit::Internal::RenderEffectImpl::GetOffScreenRenderableType
OffScreenRenderable::Type GetOffScreenRenderableType() override;
+
// @copydoc Dali::Toolkit::Internal::RenderEffectImpl::GetOffScreenRenderTasks
void GetOffScreenRenderTasks(std::vector<Dali::RenderTask>& tasks, bool isForward) override;
protected:
// @copydoc Dali::Toolkit::Internal::RenderEffectImpl::OnInitialize
void OnInitialize() override;
+
// @copydoc Dali::Toolkit::Internal::RenderEffectImpl::OnActivate
void OnActivate() override;
+
// @copydoc Dali::Toolkit::Internal::RenderEffectImpl::OnDeactivate
void OnDeactivate() override;
+
// @copydoc Dali::Toolkit::Internal::RenderEffectImpl::OnRefresh
void OnRefresh() override;
private:
/**
- * @brief Initializes off screen buffer to draw subtree
+ * @brief Initializes offscreen buffer to draw subtree
*/
void CreateFrameBuffer();
+
/**
- * @brief
+ * @brief Destroys offscreen buffer
*/
void DestroyFrameBuffer();
* @brief Initializes render task for offscreen rendering
*/
void CreateRenderTask();
+
/**
- * @brief
+ * @brief Destroys render task for offscreen rendering
*/
void DestroyRenderTask();