Книги онлайн » Книги » Программирование » Введение в написание скриптов на Питоне для Блендера 2.5x. Примеры кода - Larsson Thomas

Введение в написание скриптов на Питоне для Блендера 2.5x. Примеры кода - Larsson Thomas

Читать онлайн книгу «Введение в написание скриптов на Питоне для Блендера 2.5x. Примеры кода».
Введение в написание скриптов на Питоне для Блендера 2.5x. Примеры кода - Larsson Thomas
Название: Введение в написание скриптов на Питоне для Блендера 2.5x. Примеры кода
Автор: Larsson Thomas
ISBN: Нет данных
Год: Не указан
Читать онлайн

Введение в написание скриптов на Питоне для Блендера 2.5x. Примеры кода - Larsson Thomas — читать книгу онлайн

Страница 75 из 77

Настройте размер и шрифт текста, включите тёмную тему для удобного чтения. Переходить между страницами можно стрелками внизу или сочетанием Ctrl + ← / →.

Страница 75 из 77

return outflow

def createFluidParticle(name, origin, data):

# Частицы жидкости

bpy.ops.mesh.primitive_monkey_add(location=origin)

monkey = bpy.context.object

monkey.name = name

# Добавление модификатора жидкости-частиц

bpy.ops.object.modifier_add(type='FLUID_SIMULATION')

mod = monkey.modifiers[-1]

mod.settings.type = 'PARTICLE'

(drops, floats, tracer) = data

mod.settings.use_drops = drops

mod.settings.use_floats = floats

mod.settings.show_tracer = tracer

# Настройка типа частиц созданной системы частиц

psys = monkey.modifiers[-1].particle_system

psys.name = name+'Psys'

#psys.settings.name = name+'Pset'

return (mod.settings, None)

def run(origin):

domain = createDomain(origin)

fluid = createFluid(origin)

obst = createObstacle(origin)

inflow = createInflow(origin)

outflow = createOutflow(origin)

(settings, pset) = createFluidParticle('Drops',

origin+Vector((-2,7,0)), (True, False, False))

settings.particle_influence = 0.7

settings.alpha_influence = 0.3

(settings, pset) = createFluidParticle('Floats',

origin+Vector((0,7,0)), (False, True, False))

(settings, pset) = createFluidParticle('Tracer',

origin+Vector((2,7,0)), (False, False, True))

settings.particle_influence = 1.5

settings.alpha_influence = 1.2

return

if __name__ == "__main__":

bpy.ops.object.select_all(action='SELECT')

bpy.ops.object.delete run(Vector((0,0,0)))

#bpy.ops.fluid.bake

Ноды

Эта программа создаёт нодовую сеть.

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

# File nodes.py

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

import bpy, math

# Включение нодов

bpy.context.scene.use_nodes = True

tree = bpy.context.scene.node_tree

links = tree.links

# Удаление нодов по-умолчанию

for n in tree.nodes:

tree.nodes.remove(n)

# Создание входного нода Render layer

rl = tree.nodes.new('R_LAYERS')

rl.location = 0,200

# Создание нода SEP_RGBA

sep = tree.nodes.new('SEPRGBA')

sep.name = "Split"

sep.location = 200,200

links.new(rl.outputs[0],sep.inputs[0])
# image-image

# Создание нода VIEWER

viewer = tree.nodes.new('VIEWER')

viewer.label = "Alpha"

viewer.location = 400,400

links.new(sep.outputs[3],viewer.inputs[0])
# A-image

# Создание нода COMBRGBA

comb = tree.nodes.new('COMBRGBA')

comb.label = "Cyan"

comb.location = 400,200

links.new(sep.outputs[1],comb.inputs[2])
# G - B

Избранные книги

↑