- Home /
Billboard script restrictions
Hi. I'm just going to state flat out I am a complete n00b at unity, just saying. Anyway, I am trying to create a doom style horror game by using 2d sprites and planes that rotate towards the player. My problem is that whenever the player gets too close to a plane, the objects appears to either be looking down or up at them. Here is the Billboard script I am currently using:
function Update () {
transform.LookAt(Camera.main.transform.position);
transform.Rotate(90, 0, 0);
}
Thanks!
Answer by Jona-Marklund · Aug 26, 2013 at 09:52 PM
Ah, sorry about that, maybe this script will work better for you,
using UnityEngine;
using System.Collections;
public class EnemyAI : MonoBehaviour {
public Transform target;
public int rotSpeed = 1;
private Transform myTransform;
void Awake()
{
myTransform = transform;
}
void Update ()
{
//Look at Player
myTransform.rotation = Quaternion.Slerp(myTransform.rotation, Quaternion.LookRotation(new Vector3(target.position.x, 0, target.position.z) - new Vector3(myTransform.position.x, 0, myTransform.position.z)), rotSpeed * Time.deltaTime);
}
}
Edit : The public transform would be the GameObject you want the enemy to look at.
The cs file should be named EnemyAI.cs
It's placed on the enemy in question.
Your answer
Follow this Question
Related Questions
How to smoothly increase the speed of rotation 1 Answer
In FBX Export from Maya do I select Retain Quaternion Interpolation? 0 Answers
Strange rotation pattern. 0 Answers
Delayed rotation when i use transform.rotate 1 Answer
When applying a 90 degree rotation to Euler Angles, it is over/undershooting sometimes.. 2 Answers