bool FadeBySpeedAction::Update(float dt, float blend /*= 1.f*/) { RETURN_FALSE_IF_FALSE(BaseInfiniteAction::Update(dt,blend)); INode* node = (INode*)mTarget; float opacity = node->Opacity(); opacity+=dt*mSpeed*blend; if (opacity<=0.f||opacity>=1.f) { opacity=Math::Clamp(opacity,0.f,1.f); ForceSetState(RunningState::Done); } node->SetOpacity(opacity); return true; }