Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование игр для компьютеров > Unity > Искусственный интеллект

Ответ
 
Опции темы
Старый 14.07.2011, 07:52   #1
Nazgul
Нуждающийся
 
Регистрация: 14.01.2011
Сообщений: 72
Написано 9 полезных сообщений
(для 44 пользователей)
Движение объекта по многоугольнику

Я задал набор точек (многоугольник), т.е. создал массив Vector3[].
Каким образом передвигать объект по этим точкам? Помещаю объект в первую точку, и он должен должен постоянно по порядку обходить все точки.
(Offline)
 
Ответить с цитированием
Старый 14.07.2011, 08:33   #2
is.SarCasm
Бывалый
 
Аватар для is.SarCasm
 
Регистрация: 17.05.2009
Адрес: Днепропетровск
Сообщений: 672
Написано 180 полезных сообщений
(для 427 пользователей)
Ответ: Движение объекта по многоугольнику

Создай переменную типа "Step", затем заставь объект двигаться к "МассивТочек[Step]" и по достижению точки прибавляй +1 к "Step". Если ("Step"> "МассивТочек.Length") { "Step" = 0;}
(Offline)
 
Ответить с цитированием
Старый 14.07.2011, 10:12   #3
Lestar
Бывалый
 
Аватар для Lestar
 
Регистрация: 24.05.2011
Адрес: Украина,Харьков
Сообщений: 890
Написано 359 полезных сообщений
(для 880 пользователей)
Ответ: Движение объекта по многоугольнику

В упрощенном виде.Вешаем на наш обьект,который двигается по вейпойнтам.В public переменные засовываем вейпойнты.

using UnityEngine;
using System.Collections;

public class 
TargetList MonoBehaviour
{

    public 
Transform point_0;
    public 
Transform point_1;
    public 
Transform point_2;
    public 
Transform point_3;
    public 
Transform point_4;
    public 
Transform point_5;
    
Transform[] all_Point=new Transform[6];
    private 
Vector3 target_Pos;
    private 
int i 0;
    private 
float speed_move 30f;
    private 
bool stop_Move=false;
    
void Start()
    {
        
all_Point[0] = point_0;
        
all_Point[1] = point_1;
        
all_Point[2] = point_2;
        
all_Point[3] = point_3;
        
all_Point[4] = point_4;
        
all_Point[5] = point_5;
    }

    
void Update()
    {

        
target_Pos all_Point[i].transform.position;
        
transform.Translate(Vector3.Normalize(target_Pos transform.position)*Time.deltaTime*speed_move);
        
float distans Vector3.Distance(target_Postransform.position);
        if (
distans 0.5f)
        {
            if (
all_Point.Length 1)
            {
                
i++;
            }
            else
            {
                
0;
            }
        }
    }


__________________
Нам суждено построить мосты и храмы,которых никогда не существовало и не могло существовать в природе.
(Offline)
 
Ответить с цитированием
Старый 14.07.2011, 10:30   #4
is.SarCasm
Бывалый
 
Аватар для is.SarCasm
 
Регистрация: 17.05.2009
Адрес: Днепропетровск
Сообщений: 672
Написано 180 полезных сообщений
(для 427 пользователей)
Ответ: Движение объекта по многоугольнику

А не легче просто сделать массив публичным
(Offline)
 
Ответить с цитированием
Старый 14.07.2011, 13:56   #5
Lestar
Бывалый
 
Аватар для Lestar
 
Регистрация: 24.05.2011
Адрес: Украина,Харьков
Сообщений: 890
Написано 359 полезных сообщений
(для 880 пользователей)
Ответ: Движение объекта по многоугольнику

Пусть человек разбирается откуда ноги растут.
__________________
Нам суждено построить мосты и храмы,которых никогда не существовало и не могло существовать в природе.
(Offline)
 
Ответить с цитированием
Старый 14.07.2011, 14:02   #6
Nazgul
Нуждающийся
 
Регистрация: 14.01.2011
Сообщений: 72
Написано 9 полезных сообщений
(для 44 пользователей)
Ответ: Движение объекта по многоугольнику

Большое спасибо
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +1, время: 23:48.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com