|
Общие вопросы вопросы не попадающие ни в один из доступных разделов |
14.01.2011, 10:25
|
#1
|
Нуждающийся
Регистрация: 14.01.2011
Сообщений: 72
Написано 9 полезных сообщений (для 44 пользователей)
|
Реализация поезда
Здравствуйте! Нужно сделать поезд, движущийся по рельсам, которым можно было бы свободно управлять - задавать направление движения, скорость и т.п.
Не знаю, как заставить вагоны следовать в точности один за другим. Подскажите
|
(Offline)
|
|
14.01.2011, 13:21
|
#2
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Реализация поезда
Ну как минимум каждому вагону знать своего ведущего вагона, и повторять всё за ним.
__________________
|
(Offline)
|
|
14.01.2011, 14:14
|
#3
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Реализация поезда
Возможно стоит спросить автора вот этой игры http://forum.boolean.name/showthread.php?t=13482
Задачка конечно интересная...
|
(Offline)
|
|
14.01.2011, 18:31
|
#4
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Реализация поезда
|
(Offline)
|
|
Эти 4 пользователя(ей) сказали Спасибо HolyDel за это полезное сообщение:
|
|
14.01.2011, 18:46
|
#5
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,360
Написано 2,473 полезных сообщений (для 6,856 пользователей)
|
Ответ: Реализация поезда
Эх. Что такое поезд? Это змейка!!! Пишем змейку
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо Randomize за это полезное сообщение:
|
|
14.01.2011, 19:18
|
#6
|
Мастер
Регистрация: 03.05.2010
Адрес: Подмосковье
Сообщений: 1,218
Написано 438 полезных сообщений (для 790 пользователей)
|
Ответ: Реализация поезда
Ну как минимум каждому вагону знать своего ведущего вагона, и повторять всё за ним.
|
Если мало вагонов.
Если много, то знать расстояниие от каждого из вагонов до паровоза и его (паровоза) пройденную траекторию.
__________________
О¯О ¡¡¡ʁɔvʎнdǝʚǝdǝu dиW
|
(Offline)
|
|
14.01.2011, 19:58
|
#7
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Реализация поезда
Непори чушь, каждый вагон в непосредственой близости от "родительского", причём тут число?каждому следующему вагону нужно проехать там де и с той же скоростью что и предыдущий вот и всё...
__________________
|
(Offline)
|
|
14.01.2011, 20:00
|
#8
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Реализация поезда
Тут еще надо попасть колесами в рельсы и в соединительные звенья...
|
(Offline)
|
|
14.01.2011, 20:06
|
#9
|
Злобный Админ
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений (для 9,330 пользователей)
|
Ответ: Реализация поезда
наверное мы думаем на разных языках.... точнее я на языке, а вы на блоках.
__________________
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо SBJoker за это полезное сообщение:
|
|
14.01.2011, 20:19
|
#10
|
Разработчик
Регистрация: 12.01.2011
Адрес: Moscow
Сообщений: 420
Написано 68 полезных сообщений (для 100 пользователей)
|
Ответ: Реализация поезда
Я думаю что первым делом, нужно научится елозить вагон по рельсам вперед/назад на какое нибудь расстояние. Ну там по кривой какой-нибудь, по прямой конечно легче.(Как вы это будете делать я не знаю).А дальше уже проще:
Простая но дубовая версия:
Двигаем локомотив синхронно с вагонами.
1вагон стоит на расстоянии 10 метров от локомотива, 2 на расстоянии 20 метров, 3ий 30 и т.д. Если передвинули локомотив на 3 метра вперед, автоматический двигаем все вагоны на 3 метра вперед. Вагоны и поезд будут двигаться синхронно.
Сложная версия:
Если локомотив(тот который тянет вагоны) на большом расстоянии от 1-ого вагона, то вагон подтягиваем к локомотиву. Если 1-ый вагон слишком близко к локомотиву, отгоняем его назад от локомотива. Таким способом при каждом Update сканируем весь поезд от первого вагона к последнему. Замеряя расстояния между локомотивом и 1 вагоном, потом между 1 вагоном и 2 вагоном, 2 и 3 и т.д. до конца. Можно подтягивать вагоны постепенно за несколько Update() чтобы создать иллюзию растягивания(при разгоне)/сжатия(при тормозе) состава.
Тогда если вы будите двигать локомотив, то вагоны будут выстраиваться за ним.
Не забывайте что вагоны и поезд должны быть как-то привязаны к рельсам. То есть вправо и влево сползать нельзя, только вперед/назад по проложенной колее. Как вы будете это делать не знаю.
Я думаю как-то так.
|
(Offline)
|
|
14.01.2011, 21:02
|
#11
|
Мастер
Регистрация: 03.05.2010
Адрес: Подмосковье
Сообщений: 1,218
Написано 438 полезных сообщений (для 790 пользователей)
|
Ответ: Реализация поезда
Никто не проникся моей идеей(
Есть паровоз, линия его траектории и у каждого вагона расстояние до паровоза.
Перемещаем паровоз куда нам надо, потом все вагоны ставим на линию его траектории каждый на заданном расстоянии от паровоза.
__________________
О¯О ¡¡¡ʁɔvʎнdǝʚǝdǝu dиW
|
(Offline)
|
|
14.01.2011, 21:15
|
#12
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Реализация поезда
Сообщение от Igor
Никто не проникся моей идеей(
Есть паровоз, линия его траектории и у каждого вагона расстояние до паровоза.
Перемещаем паровоз куда нам надо, потом все вагоны ставим на линию его траектории каждый на заданном расстоянии от паровоза.
|
А колеса в рельсы попадут? У каждого вагона 2 пары колес. На кривой траектории центр вагона будет лежать не на траектории. И место сочленения вагонов - тоже.
|
(Offline)
|
|
14.01.2011, 22:15
|
#13
|
Задрот
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений (для 863 пользователей)
|
Ответ: Реализация поезда
в принципе, смотря как реализованы рельсы. Можно в принципе иметь скорость состава, и прибавлять ее к переменной l в типе Train. Потом нужно получать для каждого вагона его поворот и позицию через функцию, которая берет эту самую L, и возвращает их.
Походу это полная чушь, ибо послезавтра экзамен по вышке, и f(x) мой мозг пропитан
|
(Offline)
|
|
14.01.2011, 23:16
|
#14
|
Мастер
Регистрация: 03.05.2010
Адрес: Подмосковье
Сообщений: 1,218
Написано 438 полезных сообщений (для 790 пользователей)
|
Ответ: Реализация поезда
Путь можно представить как одну кривую (ломаную) между рельсами. Вагон имеет две тележки, которые едут по рельсам. Эти две тележки можно представить как две точки, которыми вагон стоит на кривой.
Моя предыдущая идея подходила только для движения по траектории, близкой к прямой((
__________________
О¯О ¡¡¡ʁɔvʎнdǝʚǝdǝu dиW
|
(Offline)
|
|
14.01.2011, 23:33
|
#15
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Реализация поезда
Чем гадать, надо сначала познакомиться с устройством поезда ИМХО.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 10:46.
|