#unity3d
#unity3d
Вопрос:
{
player = GameObject.FindGameObjectWithTag("Player").transform;
lastpos = player.position;
direction = (lastpos - transform.position).normalized;
Destroy(gameObject, 4f);
}
получить последнюю позицию и стрелять в этом направлении, столкновения не работают этим методом
void Update()
{
transform.Translate(direction * (30f * Time.deltaTime));
}
``` this dosent work with collisions so i need to use rigidbody forces, any help please? idk how to do that
Комментарии:
1. Вы говорите о событиях столкновения, таких как OnCollisionEnter или коллизии, поскольку объект должен перестать двигаться, когда он на что-то натыкается?
Ответ №1:
Похоже, вы хотите поместить жесткое тело и коллайдер (сетку, сферу, капсулу, по вашему усмотрению) в пулю. Чтобы переместить маркер, вы можете сделать
public float thrust = 1.0f;
void Start() {
Rigidbody rb = GetComponent<Rigidbody>();
}
void FixedUpdate() {
rb.AddForce(transform.forward * thrust);
//alternate rb.velocity = new Vector3(1.0f,1.0f,1.0f);
}
void OnCollisionEnter(collision other) {
//do something when the bullet hits another collider
}