Example #1
0
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 );
}
Example #2
0
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() ) );
}
Example #3
0
void ShadowView::SetPointLight(Actor pointLight)
{
  mPointLight = pointLight;

  ConstrainCamera();
}