Página 1 de 1

Como travar a rotação no eixo z d um objeto quando chega a -50 e 50 ?

Enviado: Seg Fev 26, 2018 5:46 pm
por SolumRptl
Como travar a rotação no eixo z d um objeto quando chega a -50 e 50 ?  
ta tentando fazer com esse codigo...

Código: Selecionar todos

rotationZ = transform.rotation.z;
		rotationZ = Mathf.Clamp (rotationZ, -50f, 50f);

		transform.localEulerAngles = new Vector3(transform.localEulerAngles.x, transform.localEulerAngles.y, -rotationZ);

Re: Como travar a rotação no eixo z d um objeto quando chega a -50 e 50 ?

Enviado: Qua Abr 18, 2018 9:06 am
por None
O seu código deveria funcionar, mas um outro jeito de fazer isso (bem bobo devo confessar) é criar uma condicional
if (rotationZ > 50f) rotationZ = 50f;
if (rotationZ < -50f) rotationZ = -50f;

O ideal seria criar um método para isso e colocar no update, seria tipo

Código: Selecionar todos

public void limitaAng()
{
if (rotationZ > 50f) rotationZ = 50f;
if (rotationZ < -50f) rotationZ = -50f;
}
E depois você só precisa garantir que o limitaAng() esta DENTRO do update, pode ser este o motivo que seu código não esteja funcionando (tenta usar o clamp dentro do update).

Espero ter ajudado.

Re: Como travar a rotação no eixo z d um objeto quando chega a -50 e 50 ?

Enviado: Qui Abr 19, 2018 10:10 am
por guimaraf
Estava querendo fazer a correção de rotação a alguns dias, acabei deixando para depois, acabou que é bem simples mesmo