Движение пули Unity2DC#

Место общения программистов C#
Ответить
Anonymous
 Движение пули Unity2D

Сообщение Anonymous »

Я новичок в Unity и C# и пробовал писать маркер.
Я хочу знать, почему это работает (все числа с плавающей запятой имеют значения, а все GameObjects назначены вещам)
Мне также кажется, что этот код очень неоптимален из-за sin/cos
Спасибо за помощь
using UnityEngine;

public class BulletScript : MonoBehaviour
{
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{

Vector2 playerdirection = target.transform.position - transform.position;
float playerdirectionrad = Mathf.Atan2(playerdirection.y, playerdirection.x);

float angledirection = Mathf.Atan2(playerdirection.y, playerdirection.x) * Mathf.Rad2Deg;

Vector3 bulletmovement = new Vector3(bulletspeed * Mathf.Cos(playerdirectionrad), bulletspeed * Mathf.Sin(playerdirectionrad), 0);
}

public GameObject target;
public float bulletspeed;
private Vector3 bulletmovement;

// Update is called once per frame
void Update()
{

transform.position += bulletmovement * Time.deltaTime;
}
}



Подробнее здесь: https://stackoverflow.com/questions/798 ... etmovement
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»