Войти
ПрограммированиеФорумФизика

Автомобиль и Newton

#0
11:05, 27 авг. 2006

Всем Привет,
буквально 2 дня назад начал разбираться с физикой автомобиля используя Newton-вский движок, но сразу же возник ряд непоняток, т.к. я слабо представляю себе физику автомобиля и моделирование чего бы то ни было с использованием данного физ. движка.

Вопросы на которые хотелось бы получить ответы:
1. Где можно почитать про механику и физику автомобиля ? (чем проще тем лучше, но вот это я уже читал и не понял как это можно применить к физ. движку, что бы получить результат - http://www.gamedev.ru/articles/?id=70108)
2. Где можно посмотреть исходник простого симулятора автомобиля под Newton ? Желательно бы, что бы использовался не 3-х мерный граф. движок, а 2-ух мерный... Для начала мне так было бы проще
3. Где можно найти хорошую документацию (детальную и с примерами) для Newton-а ? То что поставляется с ним не очень удобноваримо и уходит много времени на понимание.

Всем заранее спасибо !


#1
16:58, 4 сен. 2006

Maniachnik
есть отличная ссылка как сделать машину на ньютоне:
http://tmreality.com/developers/raycastcar/raycast.html

#2
9:22, 5 сен. 2006

Maniachnik

Где можно найти хорошую документацию (детальную и с примерами) для Newton-а ? То что поставляется с ним не очень удобноваримо и уходит много времени на понимание. 

- пока нигде

#3
19:25, 9 сен. 2006

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

#4
2:30, 10 сен. 2006

Делаю я как раз сейчас такую рейкаст машинку на ньютоне....(((....Документации минимум, на вопросы тебе на официальном форуме почти не ответят...короче полный ж..... но шансы сделать пристойную машинку есть)  Вобщем мой  совет -  полностью и до конца проникнуться CustomJoint-ом... для этого придётся осознать все примеры кустом джоинтов в сдк + протестить все его функции на собственном опыте....А будут уже конкретные вопросы -  обращайся)

#5
22:31, 15 сен. 2006

На мой взгляд здесь имеет место следующий момент: для "нормального" поведения модели машины надо создать окружающие условия, наподобие реальных, и настроить подвеску машины, аналогично настоящим (это мои проблемные места).
Разъясню: окружающие условия - коэффициенты трения - мне известно, что трение скольжения покрышек авто об асфальт ~0.7, качения ~0.02, но куда их ставить? Там есть коэффициенты static и kinetic, но что это в переводе на физику русского языка? Если к этому же имеют отношение функции NewtonVehicleSetMaxLogitudeSpeed и три остальные из этой же оперы, то я до сих пор не научился ими пользоваться; кто поможет - большое спасибо!
И подвеска: три коэффициента, которые можно гонять в довольно широких пределах, а что есть подобие реальной машинки? например, какого-нибудь городского Пежо или Фольксвагена? А без этого можно сделать так, что машина на некоторых кочках будет реагировать "взрывом" на интегрировании - параметры в NAN, машинка - в небо :) Или же рессоры не будут достаточно прижимать колеса к земле, на каждой кочке подбрасывать колесо и колесо будет часто терять контакт с землей - проскальзывание.
Если кто-нибудь поможет мне разрешить эти вопросы или докажет мне, что я их навыдумывал - тому моя великая благодарность! А то замучился я уже с этой машинкой!

#6
19:43, 19 сен. 2006

Если переходить к конкретике, то у меня машинка сделанная посредством NewtonConstraintCreateVehicle некоторое время покоится на земле, а потом резко улетает черти куда. Проверил на опыте, что если оторвать все колеса, то под действием силы тяжести автомобиль мирно покоится. если колеса не отрывать, то через некоторое время (секунд 10) автомобиль начинает летать из угла в угол пока не улетит с карты совсем.

Детали обсуждаю на официальном форуме и дабы не постить кода много даю ссылку - http://newtondynamics.com/forum/viewtopic.php?t=2816

Если кто нибудь знает о такой проблеме буду рад услышать ответы !

#7
22:25, 19 сен. 2006

Maniachnik
было такое, хорошо знаком с этим, но однозначных ответов на это дать не могу. В случае с машинкой - попробуй настроить подвеску (я как раз это и имел в виду под фразой "взрыв на интегрировании"). Как мне показалось, это либо из-за короткой рессоры (по параметру, естественно), либо из-за ее большой жесткости (хотя, не знаю, что это именно, но, по-моему, параметр Shock - не помню точно).
Еще вариант: попробуй при старте проги ставить машину не ровно на поверхность, а на маленькой высоте - чтобы машина сама осела на подвеску, постепенно распределяя нагрузку и запасая потенциальную энергию. Поставь так, чтобы обвисшие без нагрузки колеса чуть не касались земли.

#8
8:08, 20 сен. 2006

Пробовал вешать машинку над поверхностью, но не помогает... А в какую сторону нужно крутить параметры подвески ? Может подкинешь значения при которых она не улетает для примера ? :-)

#9
23:56, 20 сен. 2006

Maniachnik
у меня сейчас машинка на 1000 кг, каждое колесо на 10 кг (и на 20 и на 50 кг пробовал - работало), tireSuspensionShock=1.0, tireSuspensionSpring=1.0, tireSuspensionLength=0.3. Может, правда, такие же параметры и в примере SDK были (я не помню), но у меня работает. Я вообще серию экпериментов проводил (у меня проблемы с прокручиванием колес), так вот, при завышенных Spring и Length машина начинала сильно клониться вперед (иногда уходила носом в землю!), а если при этом Length был больше, чем Spring, машина не то прокручивала на месте, не то сильно поднималась над дорогой (у меня таблица осталась, я там обозначения какие-то вводил, но сейчас всех не вспомню - запустить надо и посмотреть). Кстати, от настройки подвески также зависит и максимальная набираемая скорость на постоянном крутящем моменте.

#10
2:39, 21 сен. 2006

Все равно улетает.. А какие параметры были поверхности от которой колеса отталкиваются и параметры материалов ?
Такое ощушение, что я какую то мелочь где-то не учел и ввиду этого все вычисления идут в раздрай. Кроме силы тяжести на мою машину ничего не действует, но тем не менее какие то странные силы по осям x,y все равно есть (у меня ось z это высота, а x и y используются для игрового поля). По идее никакие силы кроме как по z действовать недолжны, но тем не менеее у меня присутствует сила вращения не, понятно откуда, и сила по осям x и y, хотя я ее не задавал... странная ситуация, но это так...

#11
15:51, 21 сен. 2006

Maniachnik

Э-ээ, в твойей "деме", при передавании крутящего момента машина сдвигается, или сразу прыгает? - может чем помогу.

#12
20:31, 21 сен. 2006

Крутящего момента не подается... Машина некоторое время (5-7 секунд) стоит на месте, а потом резко улетает в небеса. Может есть демка рабочая и очень простая для демонстрации движения машины ? Можно даже без графического движка - я и так пойму.

#13
23:40, 21 сен. 2006

Maniachnik
я пошел от самого примера в SDK (для Delphi): скопировал всю папку, вычистил из кода все не нужное мне, сделал вывод графики через свой модуль и задал свою графическую и физическую сцену, т. е. у меня сначала на земле стоял все тот же кубик с колесами, а к нему я уже 3D-модель машины приделал, convex hull'ы вставил... Если чего не так шло - откатывал. Короче, я шел от рабочего примера... Но пока пришел в тупик :(
А посмотри, как себя будет вести машина, если ее сначала установить на очень большой высоте (чтобы летела более этих 5-7 секунд), и отслеживай координаты в пространстве (чтобы только высота уменьшалась). Только когда машина до земли долетит, эксперимент будет скорее всего закончен - обычно после такого колеса или другие части машины погружаются в поверхность приземления и оттуда крайне трудно извлекаются :)

ПрограммированиеФорумФизика

Тема в архиве.