Проблема в полёте пуль - unity 2d
делаю небольшой шутер для двух игроков, каждый может стрелять. Проблема заключается в том, что когда пуля летит с большой скоростью, то в её траектории есть некие зоны, в которых она не касается объекта, и соответственно OnTriggerEnter2d там не работает Вот скрипт полёта пули:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Bullet : MonoBehaviour
{
Rigidbody2D rb;
public int Player;
public float speed= 0.4f;
public Vector3 mode; //Направление пули (Vector3.left, right)
// Start is called before the first frame update
void Start()
{
rb = gameObject.GetComponent<Rigidbody2D>();
}
// Update is called once per frame
void FixedUpdate()
{
rb.velocity = mode * speed;
}
}
Ответы (1 шт):
Автор решения: Yaroslav
→ Ссылка
AAA шутеров с баллистикой типа Battlefield по пальцам пересчитать, так делать не надо.
Fortnite, Overwatch и Call of Duty (кроме снайперок) и т.д. и т.п. стреляют рейкастами и это называют hitscan projectiles!
Трассировка пуль в них лишь визуальная декорация.
Гуглить нужно hitscan unity, материалов завались.