Страница 1 из 1

Скрипт стрельбы unity3d

СообщениеДобавлено: 25 мар 2020, 22:06
LYTK4
Персонаж, почему-то, стреляет только если прицелиться под себя. видео: https://youtu.be/rMY6Qs9K7oY скрипт:
Синтаксис:
Используется csharp
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Shoot : MonoBehaviour
{

          private Camera camera;

void Update()
{  
   Debug.DrawRay(transform.position, transform.TransformDirection(Vector3.forward), Color.red);
  if (Input.GetMouseButton(0))
 {
     Ray ray = new Ray(transform.position, Vector3.forward);
           RaycastHit hit;
         if (Physics.Raycast(ray, out hit)) {
      StartCoroutine(CreateSphere(hit.point));
      print(hit.collider.name);
         }
  }
}

IEnumerator CreateSphere(Vector3 pos)
{
      GameObject sphere = GameObject.CreatePrimitive(PrimitiveType.Sphere);
      sphere.transform.position = pos;
      yield return new WaitForSeconds(1);  
      Destroy(sphere);    
    }
}

Re: Скрипт стрельбы unity3d

СообщениеДобавлено: 25 мар 2020, 23:44
Tolking
Стреляет только если попадает куда-то...

Re: Скрипт стрельбы unity3d

СообщениеДобавлено: 26 мар 2020, 17:01
TheMamont
Создай ссылку на объект камеры, именно на объект, а не на саму камеру и вот это
Синтаксис:
Используется csharp
Vector3.forward

ЗАмени на это
Синтаксис:
Используется csharp
"имя ссылки на объект".transform.forward