Физический движок

  1. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    В физике я полный (Ну, может и не полный) ноль, а возникла острая необходимость в движке, способном рассчитывать гравитационное (и не только) взаимодействие. Итак, с чем я разобрался:
    1) Скорость тела, масса, радиус и прочие финти-плюшки.
    2) Линейная радиальная гравитация
    3) Взаимодействие "через резинку" (Один конец невидимой резинки к одному телу, другой - к другому)
    Разобрался не полностью:
    1) Силы(Разобрался)
    2) Перевод силы и массы в скорость (Уже спрашивал, кстати, во флудилке)(Разобрался)
    Не разобрался:
    1) Квадратичная радиальная гравитация (Что для меня было сюрпризом, ведь я хорошо знаю ньтоновскую формулу силы тяжести)

    Теперь, нюансы:
    1) Пространство двумерное
    2) Скорость выражена точкой, куда в следующий кадр перейдёт тело.
    3) Сила выражена тоже точкой, но каждый кадр по формуле переводится в скорость и обнуляется.

    Проблемы с силами заключаются в том, что с каждым кадром скорость тела постоянно возрастает, будь оно на орбите, или дёргается на резинке. Примерно через 5 минут скорость уже достигает ~24000 пикселей в секунду.
    Пока не разобрался с этим, использую для ускорения простое прибавление скорости.

    Формула расчёта скорости:
    [attachment=8921]

    Сложение скоростей/сил происходит путём сложения координат точек, на которые указывают скорости/силы.

    Попутно спрошу, правильно ли я выбрал способ представления скоростей/сил?

    Ну, и конечно же сама прога:
    [attachment=8933]
    (Три объекта, можно отключать вектора, исправлены некоторые критические ошибки (Деление на ноль и прочее...))
    Старые версии:
    [attachment=8928]
    (Можно задать массу, зачатки обработки множества объектов(Из-за некоторой тупости OpenGl, пока отключены))
    [attachment=8922]
    (Силы не используются, так что бешеных скоростей вроде нет)
    Управление:
    R: остановить тела.
    WASD: передвинуть тело.
    F: Включить/выключить "резинку".
    G: Включить/выключить гравитацию.
    V: Включить/выключить вектора.
    P.S. Все .dll файлы должны быть в одной папке с екзешником.

    Вложения:

      Вам запрещено скачивать вложения.Вам запрещено скачивать вложения.Вам запрещено скачивать вложения.
    Сообщение отредактировал MrKerbMan 16 апреля 2014 - 10:00


    GLORY TO KOLOBKI!!!

    15 апреля 2014 - 17:24 / #1
  2. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    Что, совсем нечего сказать?


    GLORY TO KOLOBKI!!!

    15 апреля 2014 - 20:10 / #2
  3. Оффлайн

    мститель

    Посетители

    Сообщений: 1017

    MrKerbMan, я в этом не разбираюсь, посмотреть на программу не могу, в общем, извини, и спокойной ночи... (11 часов вечера у меня)

    Гугл хром на андроиде зло! И по лагобагам сравнится только с КСП на 32х битной 7ке
    Планы на будующее:
    1) выспатся
    2) отдохнуть
    3) лень писать =)
    Ник в Robocraft: MSTITEL21 Skype: makcum216
    Если увидете мой крафт, не смейтесь, пожалуйста =) т.к возможна смерть

    15 апреля 2014 - 20:12 / #3
  4. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    посмотреть на программу не могу

    Если знаешь C , могу исходный код дать.


    GLORY TO KOLOBKI!!!

    15 апреля 2014 - 20:15 / #4
  5. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    Лякуша, где ты? Где твоя дружбомагия физика?


    GLORY TO KOLOBKI!!!

    15 апреля 2014 - 20:34 / #5
  6. Оффлайн

    ThePhobius

    Посетители

    Сообщений: 469

    Хм, теперь я начал понимать, как работают псипланы в ксп.
    15 апреля 2014 - 21:26 / #6
  7. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    Хм, теперь я начал понимать, как работают псипланы в ксп.

    Потому, что я их создал!
    Сообщение отредактировал MrKerbMan 15 апреля 2014 - 21:28


    GLORY TO KOLOBKI!!!

    15 апреля 2014 - 21:28 / #7
  8. Оффлайн

    Bradley_

    Хорошие люди

    Сообщений: 4166

    Эм, а что такое velosity? Нет, я серьёзно.

    Маленький шаг одного огурца - но гигантский скачок всего огорода!
    Канал на твиче:http://www.twitch.tv/bradley___
    А еще я у мамы писатель: ХОНК
    VIVA LA KOLOBKA

    16 апреля 2014 - 02:33 / #8
  9. Оффлайн

    Лякуша Уляпик

    Модераторы

    Сообщений: 6471

    Bradley_, Скорость. С другой стороны, speed тоже скорость, но скаляр, а velosity - вектор.

    Не люблю людей... ну или не умею толком их готовить.

    16 апреля 2014 - 02:40 / #9
  10. Оффлайн

    Tankuwi

    Хорошие люди

    Сообщений: 1479

    Bradley_,
    Лякуша Уляпик писал:
    Bradley_, Скорость. С другой стороны, speed тоже скорость, но скаляр, а veloscity - вектор.
    Вот так всё верно!

    Время бежит быстро. И вместе с ним постоянно обновляется KSP и постоянно слетают моды. Порой старые моды вообще не обновляются, т.к. разрабы бывают ленивы. Но найдется обязательно тот человек, который обновит этот мод уже под новым названием и присвоит себе этот мод.

    16 апреля 2014 - 02:48 / #10
  11. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    За ошибки извиняюсь, инглиш учил по играм.
    Сообщение отредактировал MrKerbMan 16 апреля 2014 - 08:50


    GLORY TO KOLOBKI!!!

    16 апреля 2014 - 08:47 / #11
  12. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    Вообще, кучу вопросов задал я, а вы так и ни на один не ответели.


    GLORY TO KOLOBKI!!!

    16 апреля 2014 - 09:14 / #12
  13. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    Уже сделал гравитацию между объектами, сейчас допиливаю.


    GLORY TO KOLOBKI!!!

    16 апреля 2014 - 10:12 / #13
  14. Оффлайн

    Bradley_

    Хорошие люди

    Сообщений: 4166

    MrKerbMan, Так что исправляй velosity на volocity

    Маленький шаг одного огурца - но гигантский скачок всего огорода!
    Канал на твиче:http://www.twitch.tv/bradley___
    А еще я у мамы писатель: ХОНК
    VIVA LA KOLOBKA

    16 апреля 2014 - 12:29 / #14
  15. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    Bradley_ писал:
    MrKerbMan, Так что исправляй velosity на volocity

    Уже исправил, просто скрин менять лень. Кстати, скоро обнова с окончательными расчётами поведения тел.


    GLORY TO KOLOBKI!!!

    16 апреля 2014 - 16:28 / #15
  16. Оффлайн

    konstantinua00

    Посетители

    Сообщений: 3257

    так отчего бешеные скорости были? раз уж разобрался, то расскажи

    Я владелец ковчега костей!
    Мои версии (на компьюторе, на данный момент):
    9; 13; 13.2; 13.3; 14.3; 14.4; 15; 15.2; 16; 17.1; 18; 18.2; 18.3(demo); 18.4; 19; 19.1; 20; 20.1; 20.2; 21; 21.1; 22; 23; 23.5; 24; 25; 90; 1; 04; 05
    forum.kerbalspaceprogram.com/threads/24858-Old-versions-of-KSP-(some-versions-still-wanted!) - почти все версии до 0.14

    кое-что затеваю :-p

    16 апреля 2014 - 18:20 / #16
  17. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    Вышло так, что я не правильно скомпилировал проект, и силы-то не обнулялись!


    GLORY TO KOLOBKI!!!

    16 апреля 2014 - 18:53 / #17
  18. Оффлайн

    konstantinua00

    Посетители

    Сообщений: 3257

    т.е. тело все притягивало и притягивало, но орбита все еще была той же? или объекты таки упали на поверхность?

    Я владелец ковчега костей!
    Мои версии (на компьюторе, на данный момент):
    9; 13; 13.2; 13.3; 14.3; 14.4; 15; 15.2; 16; 17.1; 18; 18.2; 18.3(demo); 18.4; 19; 19.1; 20; 20.1; 20.2; 21; 21.1; 22; 23; 23.5; 24; 25; 90; 1; 04; 05
    forum.kerbalspaceprogram.com/threads/24858-Old-versions-of-KSP-(some-versions-still-wanted!) - почти все версии до 0.14

    кое-что затеваю :-p

    16 апреля 2014 - 19:38 / #18
  19. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    konstantinua00 писал:
    т.е. тело все притягивало и притягивало, но орбита все еще была той же? или объекты таки упали на поверхность?

    При наличии силы скорость росла, а поскольку и сила постоянна росла, то скорость вдвойне росла, и в конце концов становилась просто огромной.

    или объекты таки упали на поверхность?

    Ты прогу скачивал? Какая поверхность у курсора?


    GLORY TO KOLOBKI!!!

    16 апреля 2014 - 21:09 / #19
  20. Оффлайн

    MrKerbMan

    Хорошие люди

    Сообщений: 5537

    У меня вопрос: центробежную силу надо отдельно пилить? Просто, вроде как она естественным путём возникает.


    GLORY TO KOLOBKI!!!

    17 апреля 2014 - 10:40 / #20

Статистика форума, пользователей онлайн: 0 (за последние 10 минут)

---

Администраторы | Модераторы | Хорошие люди | Посетители | Новичок

Создано тем1946 Всего сообщений158057 Пользователей19237 Новый участникKRAKENTOP
Loading...

Нашли ошибку?
Вы можете сообщить об этом администрации.
Выделив текст нажмите Ctrl+Alt