Вход/Регистрация
Введение в написание скриптов на Питоне для Блендера 2.5x. Примеры кода
вернуться

Larsson Thomas

Шрифт:

rig.location = origin

amt.show_names = True

# Привязка объекта к сцене

scn = bpy.context.scene

scn.objects.link(rig)

scn.objects.active = rig

scn.update

# Создание костей

bpy.ops.object.mode_set(mode='EDIT')

base = amt.edit_bones.new('Base')

base.head = (0,0,0)

base.tail = (0,0,1)

tip = amt.edit_bones.new('Tip')

tip.head = (0,0,1)

tip.tail = (0,0,2)

tip.parent = base

tip.use_connect = True

driver = amt.edit_bones.new('Driver')

driver.head = (2,0,0)

driver.tail = (2,0,1)

bpy.ops.object.mode_set(mode='POSE')

# Добавление управляющего элемента для вращения по Z кости Tip

# Tip.rotz = 1.0 - 1.0*x, где x = Driver.locx

fcurve = rig.pose.bones["Tip"].driver_add('rotation_quaternion', 3)

drv = fcurve.driver

drv.type = 'AVERAGE'

drv.show_debug_info = True

var = drv.variables.new

var.name = 'x'

var.type = 'TRANSFORMS'

targ = var.targets[0]

targ.id = rig

targ.transform_type = 'LOC_X'

targ.bone_target = 'Driver'

targ.use_local_space_transform = True

fmod = fcurve.modifiers[0]

fmod.mode = 'POLYNOMIAL'

fmod.poly_order = 1

fmod.coefficients = (1.0, -1.0)

# Добавление управляющего элемента для вращения по Z кости Base

# Base.rotz = z*z - 3*y, где y = Driver.locy и z = Driver.rotz

fcurve = rig.pose.bones["Base"].driver_add('rotation_quaternion', 3)

drv = fcurve.driver

drv.type = 'SCRIPTED'

drv.expression = 'z*z - 3*y'

drv.show_debug_info = True

var1 = drv.variables.new

var1.name = 'y'

var1.type = 'TRANSFORMS'

targ1 = var1.targets[0]

targ1.id = rig

targ1.transform_type = 'LOC_Y'

targ1.bone_target = 'Driver'

targ1.use_local_space_transform = True

var2 = drv.variables.new

var2.name = 'z'

var2.type = 'TRANSFORMS'

targ2 = var2.targets[0]

targ2.id = rig

targ2.transform_type = 'ROT_Z'

targ2.bone_target = 'Driver'

targ2.use_local_space_transform = True

return

if __name__ == "__main__":

run((0,0,0))

Другие типы данных

Текст

Эта программа добавляет текстовый объект в 3D-пространство и устанавливает некоторые атрибуты. Заметьте, что тип данных здесь используется TextCurve; тип Text применяется для текста в текстовом редакторе.

#----------------------------------------------------------

# File text.py

#----------------------------------------------------------

  • Читать дальше
  • 1
  • ...
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: