3d форум по Blender
Другое => Игровые 3d-движки (любые) => Игроделам - Blender Game Engine => Тема начата: Alex2016 от 27 Август 2016, 17:12:36
-
А pivot анимировать можно?
-
А pivot анимировать можно?
Без скриптинга, врядли. Анимировать можно то, что имеет поле ввода параметров. Это если мы о центре объекта...
А, если мы о центре объекта, то есть арматура.
-
Спсб. Тоже хорошо. А как его из скрипта достать?
-
А в ограничителях есть хрень с названием Pivot. Не подойдёт ?
а... да, ты ж чел-скриптописец :) Тогда дёргай Ланухумыча, он шарит.
-
Alex2016, ты хоть отпишись, помогло тебе или нет?..
Но если ты мутишь это для BGE, то лучше пиши эти три волшебные буквы в своих сообщениях, а то нихера непонятно :)
-
А я походу дела и туда и туда пишу... Молчал потому, что копал.....
Здесь пивот по ходу называют ориджин, так что вроде откопал:
bpy.ops.object.origin_set(type='GEOMETRY_ORIGIN', center='MEDIAN')
-
Alex2016, Тогда дёргай Ланухумыча, он шарит.
Но если ты мутишь это для BGE, то лучше пиши эти три волшебные буквы в своих сообщениях, а то нихера непонятно :)
Если ты мутишь для BGE, то лучше Ланухумыча ни дёргай. Я туда ни ногой.
Тоже хорошо. А как его из скрипта достать?
Ну, я не знаю твоих целей, а в общем это выглядит так. Тебе нужно создать FloatVectorProp для трёх осей, прикрутить это хозяйство к сцене и к координатам каждой вершины добавлять эти три параметра. А app.handlers нужно заставить следить за изменениями до рендера, до смены кадра, до загрузки сцены или как там тебе нужно, я ж не знаю...
-
А я походу дела и туда и туда пишу... Молчал потому, что копал.....
Здесь пивот по ходу называют ориджин, так что вроде откопал:
bpy.ops.object.origin_set(type='GEOMETRY_ORIGIN', center='MEDIAN')
Это вряд ли поможет в анимации, если ты хочешь смещать центр в произвольную точку...
-
А вот если в bge можно поставить 3dcursor то очень даже все выходит, я еще не проверил, но по логике он должен фигурировать, если есть как вариант параметра, а здесь он есть как вариант параметра :)))
-
А вот если в bge можно поставить 3dcursor то очень даже все выходит, я еще не проверил, но по логике он должен фигурировать, если есть как вариант параметра, а здесь он есть как вариант параметра :)))
Я ж говорил, что BGE я не знаю. Я, просто прикинул, что бы я делал, если бы мне понадобилось нечто подобное, хотя, мне, вряд ли бы понадобилось. Какая мне разница, где находится центр объекта, если есть арматура?
-
cursor_location can not be animated - у меня так пишет при попытке вставить ключ в параметры позиции курсора..
-
Пока тоже еще не покопал арматуру(интересует для bge), единственный пример который посмотрел арматура была прилинкована к dummy-кубу от которого получала вращение. Недолго думая я взял этот вариант на рассмотрение. У меня была поторебность анимировать здесь ориджин куба, чтобы все было круто...
А походу в БГЕ нет какого-нибудь готового шагоступа с костями по неровной поверхности?
-
Пока тоже еще не покопал арматуру(интересует для bge), единственный пример который посмотрел арматура была прилинкована к dummy-кубу от которого получала вращение. Недолго думая я взял этот вариант на рассмотрение. У меня была поторебность анимировать здесь ориджин куба, чтобы все было круто...
А походу в БГЕ нет какого-нибудь готового шагоступа с костями по неровной поверхности?
А, в BGE есть родители, потомки? Для смещения достаточно поместить родителя в нужные координаты, а потомка перемещать относительно родителя...
-
Чего-то я сразу подумал про этот вариант и сразу его отмел, не подумав достаточно глубоко про вторую часть фразы, что потомка можно тоже перемещать. Да это тоже вариантец...
-
Вообщем по ходу проблема осталась. А суть в следующем: есть арматурный двуног. Если анимировать "как обычно" то при ходьбе персонаж поворачивается как стриптизерша вокруг шеста, а надо, чтобы он поворачивался вокруг точки той ноги которая в данный момент на земле. Первая мысль о contraint... И вот он блаженный pivot... А фигу. работает только в редакторе, при запуске игнорирует. Тыркался со скриптами, пока ни к чему не пришел. Идеи есть?
-
... можешь показать текущее состояние проекта? выложи файл или видео ...
-
Николай Николаев, присоединяюсь к твоей просьбе разъяснить вопрос более развёрнуто...
Идеи есть?
...ахренеть, почти год прошёл :o ... проблемный файл выложи, пожалуйста... трудно понять твою идею, без примеров того, что есть, и чего тебе хочется...
-
Ну пока нет ни проекта, ни проблемного файла не состояния. Несколько раз проводил эксперименты, линковал кубики-думмики, писал скриптики. Ни к чему не пришел. Суть в том, что арматура, наверное должна быть прилинкована к кубику, позиция которого повторяет анимацию следов, при этом от кубика к арматуре наследуется только поворот, и не перемещение (это я тоже не нашел как сделать, вроде помнится в максе было...) Странно что в масс-индустрии поворот вокруг центра поставлен на поток и в большинстве игр нет нормального "шагоступа"...
-
ну если у тебя ничего нет, то вероятно, вряд ли ты здесь и реальной помощи дождёшься.. думай сам...
-
Ну тогда один маленький вопросец: можно ли после линковки сделать собственно так, чтобы потомок не наследовал перемещение, а только вращение?
-
для BGE попробуй поэкспериментировать с этим ограничителем:
Rigid Body Joint Constraint
https://docs.blender.org/manual/ru/dev/rigging/constraints/relationship/rigid_body_joint.html
он работает только специально в BGE, кстати остальные ограничители в BGE не работают...
-
Спсб. Констрэинт действительно классный, и перемещает пивот в указанную точку, что характерно действительно работает в БГЕ. Но как я понял его суть подвешивать объект за указанный пивот и раскачивать его. Проблему не решает, но весьма полезен будет :)))
-
Да, это ограничитель имитирующий разные типы шарнирных соединений... Там в инструкции есть файл примера. Если не нашел, то вот прямая ссылка:
https://wiki.blender.org/uploads/1/14/BGE-Physics-RigidBodyJoints.blend (http://blender-3d.ru/forum/go.php?url=aHR0cHM6Ly93aWtpLmJsZW5kZXIub3JnL3VwbG9hZHMvMS8xNC9CR0UtUGh5c2ljcy1SaWdpZEJvZHlKb2ludHMuYmxlbmQ=)
Думал, если ты соображаешь в Python, то как-то сможешь извлечь из этого пользу. Я, увы, ни в Python, ни в персонажной анимации шибко не соображаю, а шарящая публика почему-то молчит... возможно, банально в отпусках ... :) Подожди, может помогут...
Ещё есть актуатор Parent в BGE, который динамически может создавать родительские связи и разрывать их...
-
Именно с парентом я и копался. Линковал по быстрому через скрипт и затем через скрипт делал ротэйт и анлинковал. Все вроде и получалось, но во первых как-то все запутанно, система выходила неудобная и громоздкая и на будущее видел перспективу, что во время скрипта ротэйта в прилинкованном виде какое-нибудь внешнее событие сделает мув или еще чего....
Хотя этот вариант у меня остался как возможный...