Читаем Введение в написание скриптов на Питоне для Блендера 2.5x. Примеры кода полностью

    type='SMOKE')

    smod.smoke_type = 'FLOW'

    sfset = smod.flow_settings 

    # Настройки потока

    sfset.use_outflow = False

    sfset.temperature = 0.7

    sfset.density = 0.8

    sfset.initial_velocity = True

    sfset.particle_system = psys

    return flow 

def createVortexEffector(origin):

    bpy.ops.object.effector_add(type='VORTEX', location=origin)

    vortex = bpy.context.object

    return vortex 

def createVoxelTexture(domain):

    tex = bpy.data.textures.new('VoxelTex', type = 'VOXEL_DATA')

    voxdata = tex.voxel_data

    voxdata.file_format = 'SMOKE'

    voxdata.domain_object = domain

    return tex 

def createVolumeMaterial(tex):

    mat = bpy.data.materials.new('VolumeMat')

    mat.type = 'VOLUME'

    vol = mat.volume

    vol.density = 0.0

vol.density_scale = 8.0

    vol.scattering = 6.0

    vol.asymmetry = 0.3

    vol.emission = 0.3

    vol.emission_color = (1,1,1)

    vol.transmission_color = (0.9,0.2,0)

    vol.reflection = 0.7

    vol.reflection_color = (0.8,0.9,0)

    # Для удаления эффекта пикселизации

    vol.step_size = 0.05 

    # Добавление текстуры Voxel data

    mtex = mat.texture_slots.add()

    mtex.texture = tex

    mtex.texture_coords = 'ORCO'

    mtex.use_map_density = True

    mtex.use_map_emission = True

    mtex.use_map_scatter = False

    mtex.use_map_reflect = True

    mtex.use_map_color_emission = True

    mtex.use_map_color_transmission = True

    mtex.use_map_color_reflection = True

    mtex.density_factor = 1.0

    mtex.emission_factor = 0.2

    mtex.scattering_factor = 0.2

    mtex.reflection_factor = 0.3

    mtex.emission_color_factor = 0.9

    mtex.transmission_color_factor = 0.5

    mtex.reflection_color_factor = 0.6

    return mat 

def addFloor(origin):

    # Создание пола, который принимает прозрачные тени

    bpy.ops.mesh.primitive_plane_add(

        location = origin,

        rotation = (0, 0, pi/4))

    bpy.ops.transform.resize(value=(4, 4, 4))

    bpy.ops.transform.resize(value=(2, 2, 2),

        constraint_axis=(True, False, False),

        constraint_orientation='LOCAL')

    floor = bpy.context.object

    mat = bpy.data.materials.new('Floor')

    mat.use_transparent_shadows = True

    floor.data.materials.append(mat)

    return 

def setupWorld():

    scn = bpy.context.scene

    # Синее blend (смешанное) небо

    scn.world.use_sky_blend = True

    scn.world.horizon_color = (0.25, 0.3, 0.4)

    scn.world.zenith_color = (0, 0, 0.7)

# PAL 4:3 render

    scn.render.resolution_x = 720

    scn.render.resolution_y = 567

    return 

def run(origin):

    domain = createDomain(origin)

    flow = createFlow(origin-Vector((0,0,3.5)))

    vortex = createVortexEffector(origin)

    tex = createVoxelTexture(domain)

    mat = createVolumeMaterial(tex)

    domain.data.materials.append(mat)

    return 

if __name__ == "__main__":

    for ob in bpy.context.scene.objects:

    bpy.context.scene.objects.unlink(ob)

    addFloor(Vector((0,0,-4)))

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных