- Home /
Question by
Kaosaurus · Jul 15, 2013 at 01:19 PM ·
javascripterroranswer
Assets/Scripts/CarCameraScript.js(35,33) '+' Cannot be used with a left hand side of type 'float' and a right hand side of type 'UnityEngine.Vector3' Help?
#pragma strict
var car : Transform;
var distance : float = 6.4;
var height : float = 1.4;
var rotationDamping : float = 3.0;
var heightDamping : float = 2.0;
var zoomRatio : float = 0.5;
var DefaultFOV : float = 60;
private var rotationVector : Vector3;
function Start () {
}
function LateUpdate () {
var wantedAngle = rotationVector.y;
var wantedHeight = car.position.y + height;
var myAngle = transform.eulerAngles.y;
var myHeight = transform.position.y;
myAngle = Mathf.LerpAngle(myAngle,wantedAngle,rotationDamping*Time.deltaTime);
myHeight = Mathf.Lerp(myHeight,wantedHeight,heightDamping*Time.deltaTime);
var currentRotation = Quaternion.Euler(0,myAngle,0);
transform.position = car.position;
transform.position -= currentRotation*Vector3.forward*distance;
transform.position.y = myHeight;
transform.LookAt(car);
}
function FixedUpdate (){
var localVilocity = car.InverseTransformDirection(car.rigidbody.velocity);
if (localVilocity.z<-0.5){
rotationVector.y = car.eulerAngles.y + 180;
}
else {
rotationVector.y = car.eulerAngles.y;
}
var acc = car.rigidbody.velocity;
camera.fieldOfView = DefaultFOV + acc*zoomRatio;
}
Comment
rigidbody.velocity is a Vector3. Assign one of the velocity's axes to acc.
var acc = car.rigidbody.velocity.x;
// or
var acc = car.rigidbody.velocity.y;
// or
var acc = car.rigidbody.velocity.z;
// or
var acc = car.rigidbody.velocity.magnitude;
Answer by EHogger · Jul 15, 2013 at 01:27 PM
The problem is exactly as the error message states. You can't add a float to a vector3.
var DefaultFOV : float = 60; // <--- This is a float
var acc = car.rigidbody.velocity; // <--- this is a vector3
camera.fieldOfView = DefaultFOV + acc*zoomRatio; // <--- this line won't work.
You probably want to use car.rigidbody.velocity.magnitude
instead.
Your answer
Follow this Question
Related Questions
How to make animations only play with script? 1 Answer
Unity fails to recognize Maya models/Unity scenes 1 Answer
When i call some variables to an other second script i have a problem 1 Answer
Problems with creating custom EditorGUI for script 0 Answers
BCE0044 expecting ), found 'script' and BCE0043 unexpected token ) 2 Answers