- Home /
How To Set Scope Speed
Heya,
This is my 'Scope Zoom In Scipt'. This script also goes with my Scope Script. This is the one to make it zoom in:
private var baseFOV : float;
function Start () {
baseFOV = Camera.main.fieldOfView;
}
function Update () {
if (Input.GetMouseButton(1))
Camera.main.fieldOfView = 50;
else
Camera.main.fieldOfView = baseFOV;
}
My question is, How do I Set the speed of the zoom in? Right now it zooms in straight away. Thanks in advance!
Answer by aldonaletto · Aug 18, 2012 at 02:57 PM
You could define the desired fov and make the actual fieldOfView follow it with a "Lerp filter", a special use of Lerp that smooths out the transitions exactly like a RC low pass filter does in electronics (don't panic, you don't have to know electronics to use it!):
var speed: float = 5; private var baseFOV : float; private var FOV : float;
function Start () { baseFOV = Camera.main.fieldOfView; FOV = baseFOV; }
function Update () { if (Input.GetMouseButton(1)) FOV = 50; else FOV = baseFOV; // follow FOV via Lerp filter: Camera.main.fieldOfView = Mathf.Lerp(Camera.main.fieldOfView, FOV, speed * Time.deltaTime); }
Answer by J.D. · Aug 18, 2012 at 02:56 PM
You could use Mathf.Lerp to "fade" between your fields of view.
Take a look here.
Would be somthing like this:
You create a var to control the fade. When is 0 the scope is off, when is 1 is completly zoomed. So inside Update, you control this var with var += 0.1f*Time.deltaTime;
Just an idea... Read a little of Lerp function and good luck.
Your answer
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
How To Make A Gun Scope Zoom In 2 Answers
Gun Recoil Help 0 Answers
gun scope cam not working 3 Answers
charachter controller 1 Answer