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

Larsson Thomas

Шрифт:

fset.use_render_emitter = True

# Скорость

fset.normal_factor = 5.0

fset.factor_random = 2.5

# Физика

fset.physics_type = 'NEWTON'

fset.mass = 1.0

# Не рендерить

fset.draw_method = 'CROSS'

fset.render_type = 'NONE'

# Модификатор Explode

mod = ball.modifiers.new(name='Explode', type='EXPLODE')

mod.use_edge_cut = True

mod.show_unborn = True

mod.show_alive = True

mod.show_dead = True

mod.use_size = False

# ---- Скрытый пол с модификатором collision (столкновения)

hidden = addFloor('Hidden', origin+Vector((0,0,-3.9)), True)

mod = hidden.modifiers.new(name='Collision', type='COLLISION')

mset = mod.settings

mset.permeability = 0.01

mset.stickness = 0.1

mset.use_particle_kill = False

mset.damping_factor = 0.6

mset.damping_random = 0.2

mset.friction_factor = 0.3

mset.friction_random = 0.1

addFloor('Floor', Vector((0,0,-4)), False)

return

if __name__ == "__main__":

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

bpy.ops.object.delete

# Камера, освещение

bpy.ops.object.camera_add(

location = Vector((12,-12,4)),

rotation = Vector((70,0,45))*math.pi/180)

cam = bpy.context.object.data

cam.lens = 35

bpy.ops.object.lamp_add(type='POINT',

location = Vector((11,-7,6)))

bpy.ops.object.lamp_add(type='POINT',

location =Vector((-7,-10,2)))

run(Vector((0,0,0)))

Частицы огня и дыма

Эта программа добавляет две системы частиц для огня и дыма. Частицы отображаются в виде билбордов с процедурными текстурами.

< image l:href="#"/>

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

# File fire.py

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

import bpy, mathutils, math

from mathutils import Vector, Matrix

from math import pi

def createEmitter(origin):

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

emitter = bpy.context.object

bpy.ops.mesh.uv_texture_add

return emitter

def createFire(emitter):

# Добавление первой системы частиц — огня

bpy.context.scene.objects.active = emitter

bpy.ops.object.particle_system_add

fire = emitter.particle_systems[-1]

fire.name = 'Fire'

fset = fire.settings

# Эмиссия

fset.name = 'FireSettings'

fset.count = 100

fset.frame_start = 1

fset.frame_end = 200

fset.lifetime = 70

fset.lifetime_random = 0.2

fset.emit_from = 'FACE'

fset.use_render_emitter = False

fset.distribution = 'RAND'

  • Читать дальше
  • 1
  • ...
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • ...

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

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

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

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