void ShadowView::SetShadowPlaneBackground(Actor shadowPlaneBackground) { mShadowPlaneBg = shadowPlaneBackground; mShadowPlane = Toolkit::ImageView::New(); mShadowPlane.SetName( "SHADOW_PLANE" ); mShadowPlane.SetParentOrigin(ParentOrigin::CENTER); mShadowPlane.SetAnchorPoint(AnchorPoint::CENTER); mShadowPlane.SetImage(mOutputImage); mShadowPlane.SetProperty( Toolkit::ImageView::Property::IMAGE, mShadowRenderShader ); SetShaderConstants(); // Rather than parent the shadow plane drawable and have constraints to move it to the same // position, instead parent the shadow plane drawable on the shadow plane passed in. mShadowPlaneBg.Add(mShadowPlane); mShadowPlane.SetParentOrigin(ParentOrigin::CENTER); mShadowPlane.SetZ(1.0f); ConstrainCamera(); mShadowPlane.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS ); mBlurRootActor.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS ); }
void ShadowView::SetShadowPlane(Actor shadowPlane) { mShadowPlaneBg = shadowPlane; mShadowPlane = ImageActor::New(); mShadowPlane.SetParentOrigin(ParentOrigin::CENTER); mShadowPlane.SetAnchorPoint(AnchorPoint::CENTER); mShadowPlane.SetImage(mOutputImage); mShadowPlane.SetShaderEffect(mShadowRenderShader); // Rather than parent the shadow plane drawable and have constraints to move it to the same // position, instead parent the shadow plane drawable on the shadow plane passed in. mShadowPlaneBg.Add(mShadowPlane); mShadowPlane.SetParentOrigin(ParentOrigin::CENTER); mShadowPlane.SetZ(1.0f); ConstrainCamera(); mShadowPlane.ApplyConstraint( Constraint::New<Vector3>( Actor::SIZE, Source( mShadowPlaneBg, Actor::SIZE ), EqualToConstraint() ) ); mBlurRootActor.ApplyConstraint( Constraint::New<Vector3>( Actor::SIZE, Source( mShadowPlane, Actor::SIZE ), EqualToConstraint() ) ); }
void ShadowView::SetPointLight(Actor pointLight) { mPointLight = pointLight; ConstrainCamera(); }