RetargetModifier3D
Успадковує: SkeletonModifier3D < Node3D < Node < Object
Модифікатор для передачі поз батьківського скелета (або глобальних поз) дочірнім скелетам у просторі моделі з різними відпочинками.
Опис
Отримує позу (або глобальну позу) відносно спокою батьківського скелета в просторі моделі та передає її дочірньому скелету.
Цей модифікатор переписує позу дочірнього скелета безпосередньо в процесі оновлення батьківського скелета. Це означає, що він перезаписує відображену позу кістки, встановлену у звичайному процесі на цільовому скелеті. Якщо ви хочете встановити позу цільової кістки скелета після перенацілювання, вам потрібно буде додати дочірнього елемента SkeletonModifier3D до цільового скелета та таким чином змінити позу.
Примітка: коли use_global_pose увімкнено, навіть якщо це невідставлена кістка, це може спричинити проблеми із візуальним виглядом, оскільки глобальна поза застосовується, ігноруючи позу батьківської кістки, якщо вона має відображені дочірні кістки. Дивіться також use_global_pose.
Властивості
BitField[TransformFlag] |
|
|
|
Методи
is_position_enabled() const |
|
is_rotation_enabled() const |
|
is_scale_enabled() const |
|
void |
set_position_enabled(enabled: bool) |
void |
set_rotation_enabled(enabled: bool) |
void |
set_scale_enabled(enabled: bool) |
Переліки
flags TransformFlag: 🔗
TransformFlag TRANSFORM_FLAG_POSITION = 1
Якщо встановлено, дозволяє перенацілювати позицію.
TransformFlag TRANSFORM_FLAG_ROTATION = 2
Якщо встановлено, дозволяє перенацілити обертання.
TransformFlag TRANSFORM_FLAG_SCALE = 4
Якщо встановлено, дозволяє змінити націлювання масштабу.
TransformFlag TRANSFORM_FLAG_ALL = 7
Якщо встановлено, дозволяє змінити націлювання позиції/обертання/масштабу.
Описи властивостей
BitField[TransformFlag] enable = 7 🔗
void set_enable_flags(value: BitField[TransformFlag])
BitField[TransformFlag] get_enable_flags()
Прапори для керування процесом окремих елементів трансформації, коли use_global_pose вимкнено.
SkeletonProfile profile 🔗
void set_profile(value: SkeletonProfile)
SkeletonProfile get_profile()
SkeletonProfile для перенацілювання кісток із назвами, що відповідають списку кісток.
bool use_global_pose = false 🔗
Якщо false, у випадку, якщо цільовий скелет має менше кісток, ніж вихідний скелет, перетворення батьківської кістки вихідної кістки буде проігноровано.
Натомість можна перенацілюватися між моделями з різними формами тіла, а положення, обертання та масштаб можна перенацілювати окремо.
Якщо true, ретаргетинг виконується з урахуванням глобальної позиції.
Якщо цільовий скелет має менше кісток, ніж вихідний скелет, до уваги береться перетворення вихідної кістки. Однак довжина кісток між скелетами повинна точно збігатися, інакше кістки будуть змушені розширюватися або зменшуватися.
Це корисно для використання фіктивної кістки довжиною 0, щоб узгодити пози під час перенацілювання між моделями з різною кількістю кісток.
Описи методів
bool is_position_enabled() const 🔗
Повертає true, якщо enable має TRANSFORM_FLAG_POSITION.
bool is_rotation_enabled() const 🔗
Повертає true, якщо enable має TRANSFORM_FLAG_ROTATION.
bool is_scale_enabled() const 🔗
Повертає true, якщо enable має TRANSFORM_FLAG_SCALE.
void set_position_enabled(enabled: bool) 🔗
Встановлює TRANSFORM_FLAG_POSITION у enable.
void set_rotation_enabled(enabled: bool) 🔗
Встановлює TRANSFORM_FLAG_ROTATION у enable.
void set_scale_enabled(enabled: bool) 🔗
Встановлює TRANSFORM_FLAG_SCALE у enable.