Автор Тема: Знатоки Python, нужна помощь  (Прочитано 14406 раз)

Оффлайн Barabashka

  • Житель
Знатоки Python, нужна помощь
« : 28 Январь 2017, 20:08:25 »
Всем добрый день.
Помогите решить проблему. Есть плоскость, на которой лежит стандартный куб. Куб с помощью клавиш со стрелками можно перемещать по плоскости. На некотором от него расстоянии находится, например, сфера, которая с помощью worldPosition перемещается идентично кубу. Нужно как-то сделать, чтобы в случае вращения куба вокруг его оси Z сфера перемещалась, оставаясь против той же грани куба, напротив которой находилась изначально. Предполагаю, что этого можно добиться с помощью worldAngularVelocity, а вот как применить, что-то никак не придумаю, ведь в случае поворота куба сфера должна двигаться на равном удалении по кругу.

Оффлайн sungreen

  • ...
  • Житель
  • Kostroma mon amour
    • sungreen.github.io
Re: Знатоки Python, нужна помощь
« Ответ #1 : 28 Январь 2017, 20:45:16 »
... а почему нельзя установить родительское отношение? ...
Для Кота

Оффлайн Barabashka

  • Житель
Re: Знатоки Python, нужна помощь
« Ответ #2 : 29 Январь 2017, 07:46:53 »
... а почему нельзя установить родительское отношение? ...
В случае, если шар, например, находится от куба справа, то при одновременно выполняемыми поступательным движением и правым поворотом описывает окружность правее окружности описываемой кубом и при повороте на 180 градусов оказывается слева от куба. Надо чтобы он, в этом случае, находясь внутри окружности описываемой кубом просто отслеживал куб с незначительным перемещением и оставался справа от куба с теми же самыми углами что были при старте, ну что-то типа актуатора камеры, но только без инерции и не нужных её шараханий - нужна жёсткость и точность.

Оффлайн sungreen

  • ...
  • Житель
  • Kostroma mon amour
    • sungreen.github.io
Re: Знатоки Python, нужна помощь
« Ответ #3 : 29 Январь 2017, 08:13:20 »
... для наглядности, нарисуй картинку траектории куба и шара ...
Для Кота

Оффлайн Barabashka

  • Житель
Re: Знатоки Python, нужна помощь
« Ответ #4 : 29 Январь 2017, 10:09:56 »
Что-то типа:
Расстояние между кубом и шаром должно быть неизменно, но результат манёвров куба шар должен учитывать и следовать согласно манёврам куба, т.е. находясь внутри радиуса поворота шар как бы притормаживает, уменьшает количество движения, а находясь снаружи - увеличивает, выполняет большее количество движения, обгоняя куб.
Наверно не очень толково объясняю?

Оффлайн Striver

  • Житель
  • недоинженер, полупрограммист
    • http://striver00.ru
Re: Знатоки Python, нужна помощь
« Ответ #5 : 29 Январь 2017, 10:41:47 »
Извините, не сдержался...

Оффлайн Striver

  • Житель
  • недоинженер, полупрограммист
    • http://striver00.ru
Re: Знатоки Python, нужна помощь
« Ответ #6 : 29 Январь 2017, 10:53:21 »
Всё-таки неясно, чем эти описания отличаются от простого родительского отношения.

Может быть, стоит сказать что в конечном итоге должно получиться.

Оффлайн Barabashka

  • Житель
Re: Знатоки Python, нужна помощь
« Ответ #7 : 29 Январь 2017, 12:59:49 »
Всё-таки неясно, чем эти описания отличаются от простого родительского отношения.

Может быть, стоит сказать что в конечном итоге должно получиться.
Видно у меня язык дубовый - не могу донести свою мысль понятно.
Куб, а справа от него на некотором расстоянии находится шар. Двигаю куб вперёд - шар движется так же вперёд. Разворачиваю куб вокруг оси Z на 90 градусов: при родительской связи и шар развернётся вокруг той же оси, но останется на месте. Продолжая движение куба вперёд (в сторону той грани которая до сих пор была передом куба) мы получаем куб впереди которого движется шар. Шар уже не справа от куба, а впереди. Поворачиваю ещё на 90 градусов и получаю шар слевой стороны от куба по ходу движения. Может теперь понятнее получилось.
А должно быть так чтобы шар всё время следил за одной и той же гранью куба, вне зависимости от его манёвров. Получается что при повороте куба шар сохраняя расстояние до куба должен сместиться так чтобы находиться перпендикулярно или под каким-то определённым углом, к грани куба заданным в самом начале его движения.

Оффлайн Samovar

  • Житель
Re: Знатоки Python, нужна помощь
« Ответ #8 : 29 Январь 2017, 13:07:04 »
Цитировать
А должно быть так чтобы шар всё время следил за одной и той же гранью куба, вне зависимости от его манёвров
Сделай чтоб следил за активной (последней выбранной в меше) вершиной. {Ctrl+P}->Vertex
Вот ещё интересного: Slow Parent https://youtu.be/GkbgdKZdJTQ

Тоже не вполне понял, что требуется...



Оффлайн sungreen

  • ...
  • Житель
  • Kostroma mon amour
    • sungreen.github.io
Re: Знатоки Python, нужна помощь
« Ответ #9 : 29 Январь 2017, 14:30:13 »
>> А должно быть так чтобы шар всё время следил за одной и той же гранью куба, вне зависимости от его манёвров
... но это же и есть родительская связь, устанавливаемая жестко в редакторе при выделении потомка-родителя и Ctrl+P ...
Для Кота

Оффлайн Barabashka

  • Житель
Re: Знатоки Python, нужна помощь
« Ответ #10 : 29 Январь 2017, 15:06:26 »
Посмотрите файл. Отправляю вам файл. В нём куб связан с шаром родительской связью. Погоняйте его и увидите что шар то слева от куба, то справа если вынудить движение куба по кругу.
Порвите родительскую связь и подключите скрипт. Увидите то же самое, но со скриптом.
Придумал аналог. Куб это авто, а шар это камера - сколько времени в этом случае камера будет видеть авто? Кроме того, если авто будет двигаться не поворачивая а прямо, но пойдёт по уклону вверх или вниз, то через камеру не будет понятно что авто движется по уклону, а будет впечатление что движется по ровной поверхности ведь камера примет тот же угол что и авто.
Мне надо чтобы этот шар (камера) жёстко следила за конкретной точкой куба (авто) в любой ситуации сохраняя постоянно свою вертикальность независимо от уклона, и направления уклона по осям Х и Y.
Потому я и решил через скрипты это сделать. Перемещения добился и упёрся в возможность поворотов. Не хватает знаний и опыта - потому и прошу помощь или идеи.

Оффлайн Barabashka

  • Житель
Re: Знатоки Python, нужна помощь
« Ответ #11 : 29 Январь 2017, 15:24:11 »
Цитировать
А должно быть так чтобы шар всё время следил за одной и той же гранью куба, вне зависимости от его манёвров
Сделай чтоб следил за активной (последней выбранной в меше) вершиной. {Ctrl+P}->Vertex
Вот ещё интересного: Slow Parent https://youtu.be/GkbgdKZdJTQ

Тоже не вполне понял, что требуется...
С актуатором "камера" пробовал, но там при наезде на крутой склон, из-за того что камера становится в тот же угол что и куб, склон падает и становится ровной поверхностью а ровная поверхность вся становится уклоном (камера-то изменила угол). С английским у меня большие проблемы... Что он там в самом конце лопочет? Очень похоже, что это то, что я ищу. Однако очень бы хотелось увидеть, как можно с помощью скрипта добиться.

Оффлайн sungreen

  • ...
  • Житель
  • Kostroma mon amour
    • sungreen.github.io
Re: Знатоки Python, нужна помощь
« Ответ #12 : 29 Январь 2017, 18:24:00 »
... попробуй в том файле который ты выложил выставить у шара в редакторе свойств активного объекта в секции Relations Extras чек Slow Parent ...
Для Кота

Оффлайн Striver

  • Житель
  • недоинженер, полупрограммист
    • http://striver00.ru
Re: Знатоки Python, нужна помощь
« Ответ #13 : 29 Январь 2017, 18:42:43 »
Как теперь понял я: положение должно копироваться полностью, а повороты только вокруг оси Z.
Если так, то вот вариант через пустышку и пару ограничений.

Оффлайн Barabashka

  • Житель
Re: Знатоки Python, нужна помощь
« Ответ #14 : 29 Январь 2017, 18:44:49 »
... попробуй в том файле который ты выложил выставить у шара в редакторе свойств активного объекта в секции Relations Extras чек Slow Parent ...
Действительно заработало, медленный родитель выручает. Не дадите ссылку ознакомиться с этим чудом поближе? Не понятен параметр "Смещение", что он даёт?
Тем не менее хотелось бы и в скрипте добиться.
Высылаю более наглядный файл с вашим изменением.

 


Яметрика

* По форуму

* Рекламный блок

* Последние вложения

1 (1).png
Скачано: 68
Автор: LEXA ANЭGROWND
blender.png
Скачано: 78
Автор: ipv2007
4.png
Скачано: 102
Автор: hiroyukiss
2.png
Скачано: 122
Автор: hiroyukiss

Скачано: 113
Автор: Dilifa12