我在blender中设计了一个模型,并将其导入Unity中,在其上应用了ThirdPersonController、ThirdPersonCharacter、Third PersonUserControl,并按照指导原则制作了动画,现在我已经创建了一个射击子弹的脚本,并将它连接到装配好的手/枪上。但每当我点击“开火1”,子弹就会朝另一个方向射出。。
我想当我移动鼠标时,手应该朝鼠标的方向移动+身体应该朝鼠标方向旋转(如果在背面),当我左键单击时,它应该朝着鼠标的方向发射子弹(一次一个)。
视频有助于更好地理解-
http://tinypic.com/r/34yohli/9
我尝试了一个脚本,但它没有按照我想要的方式。
拍摄.js
#pragma strict var projectile : GameObject;
var fireRate = 0.5;
private var nextFire = 0.0;
var shotDelay = .5;
function Update ()
{
if (Input.GetButton ("Fire1") && Time.time > nextFire)
{
nextFire = Time.time + fireRate;
var clone = Instantiate (projectile, transform.position, transform.rotation);
}
}
鼠标移动.cs
using UnityEngine;
using System.Collections;
public class MouseMovement : MonoBehaviour
{
public float speed = 1.5f;
private Vector3 target;
void Start()
{
target = transform.position;
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
target = Camera.main.ScreenToWorldPoint(Input.mousePosition);
target.x = transform.position.x;
}
transform.position = Vector3.MoveTowards(transform.position, target, speed * Time.deltaTime);
}
}