Траектория полета, отрисовка линии по векторам

Программирование на Юнити.

Траектория полета, отрисовка линии по векторам

Сообщение GGreenNine 04 апр 2018, 19:48

Всем привет, есть такой код
Синтаксис:
Используется csharp
 using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public static Vector2[] Plot(Rigidbody2D rigidbody, Vector2 pos, Vector2 velocity, int steps)
 {
     Vector2[] results = new Vector2[steps];
 
     float timestep = Time.fixedDeltaTime / Physics2D.velocityIterations;
     Vector2 gravityAccel = Physics2D.gravity * rigidbody.gravityScale * timestep * timestep;
     float drag = 1f - timestep * rigidbody.drag;
     Vector2 moveStep = velocity * timestep;
 
     for (int i = 0; i < steps; ++i)
     {
         moveStep += gravityAccel;
         moveStep *= drag;
         pos += moveStep;
         results[i] = pos;
     }
 
     return results;
 }

Он возвращает массив векторов по которым должен лететь снаряд, каким способом лучше прорисовать линию по этим векторам? Должно получиться что-то типа этого
Изображение
GGreenNine
UNец
 
Сообщения: 6
Зарегистрирован: 18 фев 2018, 17:27

Re: Траектория полета, отрисовка линии по векторам

Сообщение lawsonilka 04 апр 2018, 19:53

line\trail renderer, спрайты, да чем угодно.
lawsonilka
UNIверсал
 
Сообщения: 390
Зарегистрирован: 21 окт 2014, 14:48

Re: Траектория полета, отрисовка линии по векторам

Сообщение GGreenNine 04 апр 2018, 19:56

lawsonilka писал(а):line\trail renderer, спрайты, да чем угодно.

line.SetPositions(Plot(rigit,startPos, rigit.velocity, steps));
Очевидно выдает ошибку:
Argument 1: cannot convert from 'UnityEngine.Vector2[]' to 'UnityEngine.Vector3[]'
Если не сложно распишите в коде, как это должно выглядеть
GGreenNine
UNец
 
Сообщения: 6
Зарегистрирован: 18 фев 2018, 17:27

Re: Траектория полета, отрисовка линии по векторам

Сообщение 1max1 04 апр 2018, 20:28

Ну и что не понятного в ошибке? твой метод возвращает Vector2[] а надо Vector3[] ><
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Траектория полета, отрисовка линии по векторам

Сообщение Anonymyx 04 апр 2018, 20:38

Там есть явное приведение вроде.
Просто допиши (Vector3), со скобочками, там где возвращается Vector2.
Аватара пользователя
Anonymyx
Адепт
 
Сообщения: 1973
Зарегистрирован: 05 апр 2015, 15:55


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 5