3d форум по Blender

Другое => Игровые 3d-движки (любые) => Игроделам - Blender Game Engine => Тема начата: Alex2016 от 27 Август 2016, 17:12:36

Название: pivot
Отправлено: Alex2016 от 27 Август 2016, 17:12:36
А pivot анимировать можно?
Название: Re: pivot
Отправлено: LanuHum от 27 Август 2016, 17:21:22
А pivot анимировать можно?
Без скриптинга, врядли. Анимировать можно то, что имеет поле ввода параметров. Это если мы о центре объекта...
А, если мы о центре объекта, то  есть арматура.
Название: Re: pivot
Отправлено: Alex2016 от 27 Август 2016, 17:24:26
Спсб. Тоже хорошо. А как его из скрипта достать?
Название: Re: pivot
Отправлено: Samovar от 27 Август 2016, 17:26:09
А в ограничителях есть хрень с названием  Pivot. Не подойдёт ?
а... да, ты ж чел-скриптописец :) Тогда дёргай Ланухумыча, он шарит.
Название: Re: pivot
Отправлено: Samovar от 27 Август 2016, 18:07:19
Alex2016, ты хоть отпишись, помогло тебе или нет?..
Но если ты мутишь это для BGE, то лучше пиши эти три волшебные буквы в своих сообщениях, а то нихера непонятно :)
Название: Re: pivot
Отправлено: Alex2016 от 27 Август 2016, 18:19:54
А я походу дела и туда и туда пишу... Молчал потому, что копал.....
Здесь пивот по ходу называют ориджин, так что вроде откопал:
bpy.ops.object.origin_set(type='GEOMETRY_ORIGIN', center='MEDIAN')
Название: Re: pivot
Отправлено: LanuHum от 27 Август 2016, 18:23:41
Alex2016, Тогда дёргай Ланухумыча, он шарит.
Но если ты мутишь это для BGE, то лучше пиши эти три волшебные буквы в своих сообщениях, а то нихера непонятно :)
Если ты мутишь для BGE, то лучше Ланухумыча ни дёргай. Я туда ни ногой.
Цитировать
Тоже хорошо. А как его из скрипта достать?
Ну, я не знаю твоих целей, а в общем это выглядит так. Тебе нужно создать FloatVectorProp для трёх осей, прикрутить это хозяйство  к сцене и к координатам каждой вершины добавлять эти три параметра. А  app.handlers нужно заставить следить за изменениями до рендера, до смены кадра, до загрузки сцены или как там тебе нужно, я ж не знаю...
Название: Re: pivot
Отправлено: LanuHum от 27 Август 2016, 18:25:36
А я походу дела и туда и туда пишу... Молчал потому, что копал.....
Здесь пивот по ходу называют ориджин, так что вроде откопал:
bpy.ops.object.origin_set(type='GEOMETRY_ORIGIN', center='MEDIAN')
Это вряд ли поможет в анимации, если ты хочешь смещать центр в произвольную точку...
Название: Re: pivot
Отправлено: Alex2016 от 27 Август 2016, 18:37:16
А вот если в bge можно поставить 3dcursor то очень даже все выходит, я еще не проверил, но по логике он должен фигурировать, если есть как вариант параметра, а здесь он есть как вариант параметра :)))
Название: Re: pivot
Отправлено: LanuHum от 27 Август 2016, 18:53:10
А вот если в bge можно поставить 3dcursor то очень даже все выходит, я еще не проверил, но по логике он должен фигурировать, если есть как вариант параметра, а здесь он есть как вариант параметра :)))
Я ж говорил, что BGE я не знаю. Я, просто прикинул, что бы я делал, если бы мне понадобилось нечто подобное, хотя, мне, вряд ли бы понадобилось. Какая мне разница, где находится центр объекта, если есть арматура?
Название: Re: pivot
Отправлено: LanuHum от 27 Август 2016, 19:00:43
cursor_location can not be animated - у меня так пишет при попытке вставить ключ в параметры позиции курсора..
Название: Re: pivot
Отправлено: Alex2016 от 27 Август 2016, 19:21:22
Пока тоже еще не покопал арматуру(интересует для bge), единственный пример который посмотрел арматура была прилинкована к dummy-кубу от которого получала вращение. Недолго думая я взял этот вариант на рассмотрение. У меня была поторебность анимировать здесь ориджин куба, чтобы все было круто...
А походу в БГЕ нет какого-нибудь готового шагоступа с костями по неровной поверхности?
Название: Re: pivot
Отправлено: LanuHum от 27 Август 2016, 20:02:39
Пока тоже еще не покопал арматуру(интересует для bge), единственный пример который посмотрел арматура была прилинкована к dummy-кубу от которого получала вращение. Недолго думая я взял этот вариант на рассмотрение. У меня была поторебность анимировать здесь ориджин куба, чтобы все было круто...
А походу в БГЕ нет какого-нибудь готового шагоступа с костями по неровной поверхности?
А, в BGE есть родители, потомки? Для смещения достаточно поместить родителя в нужные координаты, а потомка перемещать относительно родителя...
Название: Re: pivot
Отправлено: Alex2016 от 28 Август 2016, 10:37:27
Чего-то я сразу подумал про этот вариант и сразу его отмел, не подумав достаточно глубоко про вторую часть фразы, что потомка можно тоже перемещать. Да это тоже вариантец...
Название: Re: pivot
Отправлено: Alex2016 от 08 Июль 2017, 13:34:11
Вообщем по ходу проблема осталась. А суть в следующем: есть арматурный двуног. Если анимировать "как обычно" то при ходьбе персонаж поворачивается как стриптизерша вокруг шеста, а надо, чтобы он поворачивался вокруг точки той ноги которая в данный момент на земле. Первая мысль о contraint... И вот он блаженный pivot... А фигу. работает только в редакторе, при запуске игнорирует. Тыркался со скриптами, пока ни к чему не пришел. Идеи есть?
Название: Re: pivot
Отправлено: Николай Николаев от 08 Июль 2017, 14:02:38
... можешь показать текущее состояние проекта? выложи файл или видео ...
Название: Re: pivot
Отправлено: Samovar от 08 Июль 2017, 14:03:39
Николай Николаев, присоединяюсь к твоей просьбе разъяснить  вопрос более развёрнуто...
Цитировать
Идеи есть?
...ахренеть, почти год прошёл :o ... проблемный файл выложи, пожалуйста... трудно  понять твою идею, без примеров того, что есть, и чего тебе хочется...
Название: Re: pivot
Отправлено: Alex2016 от 08 Июль 2017, 15:04:14
Ну пока нет ни проекта, ни проблемного файла не состояния. Несколько раз проводил эксперименты, линковал кубики-думмики, писал скриптики. Ни к чему не пришел. Суть в том, что арматура, наверное должна быть прилинкована к кубику, позиция которого повторяет анимацию следов, при этом от кубика к арматуре наследуется только поворот, и не перемещение (это я тоже не нашел как сделать, вроде помнится в максе было...) Странно что в масс-индустрии поворот вокруг центра поставлен на поток и в большинстве игр нет нормального "шагоступа"...
Название: Re: pivot
Отправлено: Samovar от 09 Июль 2017, 07:18:25
ну если у тебя ничего нет, то вероятно, вряд ли ты здесь и реальной помощи дождёшься.. думай сам...
Название: Re: pivot
Отправлено: Alex2016 от 09 Июль 2017, 13:12:55
Ну тогда один маленький вопросец: можно ли после линковки сделать собственно так, чтобы потомок не наследовал перемещение, а только вращение?
Название: Re: pivot
Отправлено: Samovar от 09 Июль 2017, 13:23:52
для BGE попробуй поэкспериментировать с этим ограничителем:
 Rigid Body Joint Constraint
 https://docs.blender.org/manual/ru/dev/rigging/constraints/relationship/rigid_body_joint.html
он работает только специально в BGE, кстати остальные ограничители в BGE не работают...
Название: Re: pivot
Отправлено: Alex2016 от 09 Июль 2017, 14:25:46
Спсб. Констрэинт действительно классный, и перемещает пивот в указанную точку, что характерно действительно работает в БГЕ. Но как я понял его суть подвешивать объект за указанный пивот и раскачивать его. Проблему не решает, но весьма полезен будет :)))
Название: Re: pivot
Отправлено: Samovar от 09 Июль 2017, 14:34:31
Да, это ограничитель имитирующий разные типы шарнирных соединений... Там в инструкции есть файл примера. Если не нашел, то вот прямая ссылка:
https://wiki.blender.org/uploads/1/14/BGE-Physics-RigidBodyJoints.blend
Думал, если ты соображаешь в Python, то как-то сможешь извлечь из этого пользу. Я, увы, ни в Python, ни в персонажной анимации шибко не соображаю, а шарящая публика почему-то молчит... возможно, банально в отпусках ... :) Подожди, может помогут...

Ещё есть актуатор Parent в BGE, который динамически может создавать родительские связи и разрывать их...
Название: Re: pivot
Отправлено: Alex2016 от 09 Июль 2017, 15:28:29
Именно с парентом я и копался. Линковал по быстрому через скрипт и затем через скрипт делал ротэйт и анлинковал. Все вроде и получалось, но во первых как-то все запутанно, система выходила неудобная и громоздкая и на будущее видел перспективу, что во время скрипта ротэйта в прилинкованном виде какое-нибудь внешнее событие сделает мув или еще чего....
Хотя этот вариант у меня остался как возможный...