- Home /
How to smooth aiming?
Hello. i am working on my weapon script and i have problem with aiming. well its not actual problem. here's the thing.. when i right click my weapon can aim but it just pop at aim position, i want to make it smooth go to my aim position.
var normalPos : Vector3;
var aimPos : Vector3;
var aimSpeed = 2.0;
function Update(){
if(Input.GetButton("Fire2")){
//When RightClicked, aim
transform.localPosition = Vector3.Lerp(transform.position, aimPos, aimSpeed);
}else{
transform.localPosition = Vector3.Lerp(transform.position, normalPos, aimSpeed);
}
}
You write about 'ai$$anonymous$$g', but this code only moves an object. What is it moving? What are 'normalPos' and 'aimPos'? Note to make your Lerp work, just add 'deltaTime' and probably pass 'localPosition':
transform.localPosition = Vector3.Lerp(transform.localPosition, aimPos, Time.deltaTime * aimSpeed);
Answer by MC HALO · Feb 17, 2014 at 04:31 AM
Here you go you can have my script
var applymode : boolean;
var ObjectToMove: GameObject;
var smoothTime : float = 1.0f;
var PositionX : float;
var PositionY : float;
var PositionZ : float;
var StartPos: Vector3;
function Start(){
StartPos = transform.localPosition;
}
function Apply()
{
var targetPosition : Vector3 = Vector3.Lerp(ObjectToMove.transform.localPosition, Vector3(PositionX,PositionY, PositionZ), Time.deltaTime * smoothTime);
ObjectToMove.transform.localPosition = targetPosition;
}
function ApplyOff()
{
applymode = false;
var targetPositionRes : Vector3 = Vector3.Lerp(ObjectToMove.transform.localPosition, StartPos, Time.deltaTime * smoothTime);
ObjectToMove.transform.localPosition = targetPositionRes;
}
function Update () {
if(Input.GetMouseButtonDown(1) && applymode == false){
applymode = true;
Apply();
}
if(Input.GetMouseButtonUp(1)){
applymode = false;
}
if(!applymode){
ApplyOff();
}
if(applymode){
Apply();
}
}
Should work perfectly enjoy
Your answer
![](https://koobas.hobune.stream/wayback/20220613133748im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Automatic fire in weapons 1 Answer
GetComponentInChildren(Renderer).active wont work? 2 Answers
Javascript version of 'Mouse look' script? 1 Answer
Disable Script 1 Answer
Instantiate cloned prefab to local position of an empty object 1 Answer