플레이어 (사용자 팀)가 볼을 가져 왔을 때 뒤엉킨 유니티 풋볼 게임 (2D 탑 다운 뷰)이 있습니다. Texture2d [] 프레임을 사용하여 플레이어에 애니메이션을 적용합니다. 나는 48 프레임의 이미지를 가지고있다. 프레임을 32 프레임으로 줄이면 게임 속도가 빨라 집니까?유니티 게임이 지연됩니다.
이 내가 애니메이션을 어떻게,
void Update() {
if (players.moving == true)
{
if (timer > 0.0f)
timer -= Time.deltaTime;
if (timer <= 0.0f)
timer = 0.0f;
if (timer == 0.0f)
NextFrame();
}
else
{
if (players.movingUp == true)
renderer.material.mainTexture = frames[0]; }
public void NextFrame()
{
if (!play)
return;
//test velocity direction
if (players.movingUp == true)
{
if (northFrame >= 0 && northFrame <= 2)
{
northFrame ++;
renderer.material.mainTexture = frames[northFrame];
}
else
{
northFrame = 0;
renderer.material.mainTexture = frames[northFrame];
}
//renderer.material.mainTexture = frames[northFrame];
//Debug.Log ("North frame: " + northFrame);
}
}
이 내 사용자 플레이어 업데이트 기능입니다.
if (players[0].GetComponent<TPCCS>().highlight == true)
{
ring1.renderer.enabled = true;
ring2.renderer.enabled = false;
ring3.renderer.enabled = false;
ring4.renderer.enabled = false;
}
if (players[1].GetComponent<TPCCS>().highlight == true)
{
ring1.renderer.enabled = false;
ring2.renderer.enabled = true;
ring3.renderer.enabled = false;
ring4.renderer.enabled = false;
}
if (players[2].GetComponent <TPCCS>().highlight == true)
{
ring1.renderer.enabled = false;
ring2.renderer.enabled = false;
ring3.renderer.enabled = false;
ring4.renderer.enabled = true;
}
rigidbody.freezeRotation = true;
스프라이트를 애니메이션으로 만드는 것은 트릭입니다. http://michaelcummings.net/mathoms/creating-2d-animated-sprites-using-unity-4.3#.UuYOZRCwpD_ – user3231576
아, 네가 간다. 나는 어느 시점에서 4.3의 새로운 2D 기능을 실제로 확인해야합니다. 그러나 그것은 실제로 같은 원리입니다. – Bart