コード例 #1
0
void CustomLogic::Start() 
{
	StaticModel* model = GetNode()->GetComponent<StaticModel>();
	mat = model->GetMaterial(0);
	mat->SetScene(GetScene());

#define ANIMATION(V) SharedPtr<ValueAnimation> V = SharedPtr<ValueAnimation>(new ValueAnimation(context_));

	//SharedPtr<ValueAnimation> animSize = SharedPtr<ValueAnimation>(new ValueAnimation(context_));
	
	ANIMATION(animSize);
	animSize->SetKeyFrame(0.0f, Vector3::ONE * 0.1f);
	animSize->SetKeyFrame(1.0f, Vector3::ONE * 2.0f);
	animSize->SetKeyFrame(4.0f, Vector3::ONE * 3.0f);

	GetNode()->SetAttributeAnimation("Scale", animSize);
	GetNode()->SetScene(GetScene());

	ANIMATION(animClipRange);
	animClipRange->SetKeyFrame(0.0f, 1.0f);
	animClipRange->SetKeyFrame(1.0f, 1.0f);
	animClipRange->SetKeyFrame(4.0f, 0.8f);
	
	mat->SetShaderParameterAnimation("ClipRange", animClipRange);

	ANIMATION(animRange);
	animRange->SetKeyFrame(0.0f, Vector2(0.0f, 1.3f));
	animRange->SetKeyFrame(1.0f, Vector2(0.0f, 1.3f));
	animRange->SetKeyFrame(4.0f, Vector2(1.0f, 1.3f));
	mat->SetShaderParameterAnimation("Range", animRange);

	ANIMATION(animDisplace);
	animDisplace->SetKeyFrame(0.0f, -1.0f);
	animDisplace->SetKeyFrame(4.0f, 5.0f);
	mat->SetShaderParameterAnimation("Displacement", animDisplace);


#undef ANIMATION

	
	
}