ENG Новый сайт

Расширенный поиск
[ Новые сообщения · Пользователи · Правила ]
Физика космического полёта
SpaceEngineerДата: Среда, 16.11.2011, 19:35 | Сообщение # 76
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Да, ты совсем запутался. Сверхсветовой полёт по моей идее это просто увеличение dt при интегрировании движения корабля. И всё. Как ускорение времени в Орбитере, но только для корабля, не для планет.

kimitsu42Дата: Среда, 16.11.2011, 19:57 | Сообщение # 77
Космический пилот
Группа: Команда SE
Российская Федерация
Сообщений: 132
Награды: 0
Статус: Offline
Не, как должно выглядеть я уже понял (когда выяснилось что прыжки это не совсем те прыжки). А вот объяснение как оно работает с физической точки зрения еще ни одно не нашел. Разумеется можно и вообще не объяснять, свалить на особую, космическую магию или на добавление жидкого вакуума в топливо. Но если объяснять серьезно, то надо делать это правдоподобно. Пока что я вижу что никаким воздействием на пространство необходимый эффект получить не получается. Получается или бесполезная штука или гипердвигатель действующий независимо от реактивного. И сейчас я пытаюсь объяснить почему прыжки в "эфир" или другие пространства не подходят. Получилось ли?

AMD Athlon II X3 3GHz + 4GB DDR3 + ATI Radeon HD 5770 1024 MB + Win7 64bit

Сообщение отредактировал kimitsu42 - Среда, 16.11.2011, 20:02
SpaceEngineerДата: Суббота, 03.12.2011, 03:14 | Сообщение # 78
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
http://www.alleng.ru/d/astr/astr011.htm

MibusДата: Четверг, 08.12.2011, 00:21 | Сообщение # 79
Первооткрыватель
Группа: Команда SE
Украина
Сообщений: 301
Награды: 0
Статус: Offline
Взял калькулятор и посчитал количество топлива необходимое идеальному фотоннику для достижения требуемых скоростей.
Энергия - термояд при реакции дейтерий+тритий или аннигиляция материи/антиматерии.
Для движка работающего без потерь на 1 тонну полезной нагрузки получилось:

Третья космическая на орбите земли - 62кг водорода, 230г. мат/антимат
Четвертая космическая для солнца - 486кг водорода, 1,84кг мат/антимат


Win7 64 prof, Athlon II x2 256 3.3Mhz, RAM 4GB, GeForce GTS 250 512MB
SpaceEngineerДата: Четверг, 08.12.2011, 03:34 | Сообщение # 80
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Не, фотонник это изврат, у него энергетика безумная. Термояд на антипротонном катализе - более реальная и практичная технология.

AerospacefagДата: Четверг, 08.12.2011, 18:02 | Сообщение # 81
Строитель Миров
Группа: Пользователи
Российская Федерация
Сообщений: 1019
Награды: 3
Статус: Offline
Как продвигаются дела по поводу навигации полета, построения траекторий и т.д.?
В свободное время накатал общий вид навигационной системы по типу Orbiter TransX MFD, получилось немного сложновато, но там есть свои нетривиальные проблемы.


Win7
Intel Core i5-2310 2.9 Ghz
4 Gb DIMM DDR3
Asus GeForce GTX760, 2 Gb GDDR-5
SpaceEngineerДата: Четверг, 08.12.2011, 18:38 | Сообщение # 82
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Уткнулся в несколько проблем, надо переделывать в движке камеру, систему координат, редер орбит и т.д.

MibusДата: Четверг, 08.12.2011, 19:51 | Сообщение # 83
Первооткрыватель
Группа: Команда SE
Украина
Сообщений: 301
Награды: 0
Статус: Offline
Я это болше как обоснование для размера бака и стоимости заправки.
А сам движок можно обозвать Ускорителем Темных Глюонов(УТГ) и не парится.
Выхлоп ни с чем не взаимодействует, тяга как у фотонника.
Как работает никто не знает и обоснованных замечаний высказать не может.
Название звучит модно, чем то знакомо и загадочно, о том что происходит с
атомными ядрами при воздействии потока порядка несколько грамм в секунду
можно скромно умолчать(в крайнем случае в инструкции по ТБ запретитьнаправлять
на атомную бомбу)
Да еще и выхлоп рисовать не надо smile
Не нравятся глюоны - можно поменять на гравитоны, бозоны Z или Хиггса, тоже вполне гламурные частицы.

А термояд, даже с гипердрайвом только в пределах галактики, потенциальный барьер всеравно преодолевать надо.
Закон сохранения энергии нарушать - это западло, это только депутатам можно.
Кстати идея - за особые заслуги выдавать корочки на нарушение физических законов.
Типа 3%-я отмазка от закона сохранения импульса, только для депутатов думы рукава стрельца smile
Для совета галактики 5%. Аналогично для адмиралов космофлота, супербоссов мафии и владельцев мегакорпораций.


Win7 64 prof, Athlon II x2 256 3.3Mhz, RAM 4GB, GeForce GTS 250 512MB

Сообщение отредактировал Mibus - Четверг, 08.12.2011, 19:54
AerospacefagДата: Четверг, 08.12.2011, 19:56 | Сообщение # 84
Строитель Миров
Группа: Пользователи
Российская Федерация
Сообщений: 1019
Награды: 3
Статус: Offline
По поводу траекторий.
Прикрепления: _SE.doc (174.5 Kb)


Win7
Intel Core i5-2310 2.9 Ghz
4 Gb DIMM DDR3
Asus GeForce GTX760, 2 Gb GDDR-5
SpaceEngineerДата: Четверг, 08.12.2011, 20:27 | Сообщение # 85
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Aerospacefag, надо учесть гиперускоритель (давайте так его называть что ли). При рассчёте траектории воводится фактор сжатия времени (106, 109 и т.д.). Визуально это можно представить так: при рассчёте обычного перелёта (без гиперускорения) положение планеты-цели берётся немного в будущем - на время, нужное для достижения её кораблём. Если фактор ускорения 106, это время сокращается в 106 раз, и планета-цель оказывается немного в другом месте (ближе к положению в момент вылета).

Плюс ты забыл ещё два уровня иерархии - звёздный и галактический. Звёзды и галактики в SE неподвижны (во временных рамках игры (годы) реальным смещением звёзд можно пренебречь), однако скоростями будут обладать - они нужны будут для рассчёта межзвёздных полётов. То же самое с галактиками. Для рассчётов перелётов в пределах планетной системы не учитывается уровень звёзд и галактик. Для полётов в галактике - не учитываются другие галактики (кроме может быть соседних).


AerospacefagДата: Четверг, 08.12.2011, 20:32 | Сообщение # 86
Строитель Миров
Группа: Пользователи
Российская Федерация
Сообщений: 1019
Награды: 3
Статус: Offline
SpaceEngineer, а как часто мы будем использовать эту фичу? Так же часто как Warp Drive из EVE Online?

Win7
Intel Core i5-2310 2.9 Ghz
4 Gb DIMM DDR3
Asus GeForce GTX760, 2 Gb GDDR-5
SpaceEngineerДата: Четверг, 08.12.2011, 20:34 | Сообщение # 87
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Quote (Aerospacefag)
SpaceEngineer, а как часто мы будем использовать эту фичу? Так же часто как Warp Drive из EVE Online?

Даже при перелёте к ближайшей луне или для быстрого облёта планеты. Напомню, в онлайн игре не будет ускорения времени, а ждать часами-днями-годами игроки не будут.


SpaceEngineerДата: Четверг, 08.12.2011, 20:41 | Сообщение # 88
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Я вот подумываю, как сделать рассчёт переходных орбит более user-friendly. Идея такая. Показывается 3D вид планетной системы, на нём планеты с векторами скорости и корабль с текущим вектором скорости и орбитой. Карту можно зумить колёсиком например. Допустим надо перелететь с круговой орбиты вокруг Земли на круговую орбиту вокруг Европы. Вводим пункт назначения (или кликаем по нему), программа автоматически рассчитывает трансферную орбиту, точки включения двигателей и продолжительность их работы, если перелёт импульсный. Если топлива не хватит, выводится надпись. Если расход слишком большой, игрок может выбрать другой пресет - трехимпульсный перелёт, перелёт с грав, манёврами и т.д., если время в пути устроит. Потом, полученную орбиту можно модифицировать, как сплайн в фотошопе - добавить контрольные точки, подвигать их. Например чтобы лететь к Юпитеру мимо пояса астероидов.

Такая система будет довольно сложной для реализации - много математики. Но можно избавить себя от мучений, переложив часть на плечи игрока - кому-то это может даже понравиться, как фича геймплея. Например: игрок ставит контрольную точку на границе сферы влияния Земли (миллион км), движок рассчитывает простой одноимпульсный перелёт к ней. Далее ставится точка на границе сферы вляния Юпитера, движок рассчитывает импульс для достижения её с границы сферы Земли. Точки на границе сферы Земли и Юпитера надо передвинуть так, чтобы минимизировать расход топлива. Потом ставится точка на орбите Европы, и т.д. Можно по-другому, предоставив юзеру самому подбирать параметры импульса, редактируя траекторию как сплайн, либо редактируя величину и направление импульса. В этом случае траекторию рассчитывать сравнительно просто - провести N-body моделирование из нескольких тысяч шагов по времени. Планеты движутся как обычно, по кеплеровским эллипсам, а корабль - под действием сил гравитации от них. Рассчёт можно даже делать одновременно с рендером, рассчитывая по 100 точек за кадр и рисуя то что уже рассчиталось. Будет прикольно смотреться.

Когда траектория рассчитана, включается автопилот. Или для любителей ручного управления - как в Орбитере, в нужный момент появляется сигнал "включить двигатели на 30 секунд".

Для полёта с гиперускорителем рассчитывается и отображается веер траекторий. Выглядеть это будет имеено как веер. Зелёная траектория - полёт без гиперускорителя, упирается планету-цель, изображённую пунктиром недалеко от нынешнего положения планеты (учитывается, что планета сместится, пока корбаль будет лететь). Рядом жёлтая траектория - полёт между импульсами с ускорением 10. Рядом оранжевая - ускорение 100. И т.д. Траектория с ускорением 109 уже будет фактически упираться в нынешнее положение планеты, т.к. перелёт займёт несколько секунд.


AerospacefagДата: Четверг, 08.12.2011, 20:59 | Сообщение # 89
Строитель Миров
Группа: Пользователи
Российская Федерация
Сообщений: 1019
Награды: 3
Статус: Offline
Quote (SpaceEngineer)
Вводим пункт назначения (или кликаем по нему), программа автоматически рассчитывает трансферную орбиту, точки включения двигателей и продолжительность их работы, если перелёт импульсный.

Вот незадача - перелет-то, по идее, не импульсный. Ну, то есть, это не по науке.
Вообще, можно вернуться к классической концепции эллиптической переходной орбиты, при условии что в начале каждого такого перелета кораблю будет выдан волшебный пендель, от которого он полетит кратно ускоренный.
Ну а при маневрировании в свободном полете можно написать программку для вычисления стартовых и тормозных импульсов, это задача тривиальная.
Вообще, конечно, и так и так получается или некрасиво, или неудобно. Но реальную физику стоило бы оставить - вдруг кто-нибудь когда-нибудь напишет работоспособный навигационный модуль?
Quote (SpaceEngineer)
Например: игрок ставит контрольную точку на границе сферы влияния Земли (миллион км), движок рассчитывает простой одноимпульсный перелёт к ней.

Да, это принцип TransX, только там все игрок ручками подстраивает.
Quote (SpaceEngineer)
Рассчёт можно даже делать одновременно с рендером, рассчитывая по 100 точек за кадр и рисуя то что уже рассчиталось.

А такой способ используется в Aerobrake MFD.


Win7
Intel Core i5-2310 2.9 Ghz
4 Gb DIMM DDR3
Asus GeForce GTX760, 2 Gb GDDR-5


Сообщение отредактировал Aerospacefag - Четверг, 08.12.2011, 20:59
SpaceEngineerДата: Четверг, 08.12.2011, 21:05 | Сообщение # 90
Автор Space Engine
Группа: Администраторы
Российская Федерация
Сообщений: 5547
Награды: 55
Статус: Offline
Quote (Aerospacefag)
Вот незадача - перелет-то, по идее, не импульсный.

Почему, перелёт как раз импульсный. Ускорения 10-20g, скорость набирается за минуты, потом двигатели выключаются и включается гиперускоритель, который сжимает время для корабля. В гиперрежиме нельзя включать двигатели. Поэтому перелёт получается импульсным. Отличие от реальных полётов только в гиперускорителе. С программной точки зрения, его можно рассматривать как ускоритель времени симуляции для корбля (но не для планет), или наоборот, как замедлитель времени для планет (но не для корабля) - т.е. планеты за время перелёта смещаются меньше, как если время для них течёт медленнее.


Поиск:

>