Чтение онлайн

на главную

Жанры

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

Larsson Thomas

Шрифт:

tex.progression = 'SPHERICAL'

tex.intensity = 1.0

tex.contrast = 1.0

tex.use_color_ramp = True

elts = tex.color_ramp.elements

elts[0].color = (0, 0, 0, 1)

elts[0].position = 0.56

elts[1].color = (1, 1, 1, 0)

elts[1].position = 0.63

#
материал Rubber (Резиновый)

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

mat.diffuse_color = (1,0,0)

mat.use_transparency = True

mat.alpha = 0.25

mtex = mat.texture_slots.add

mtex.texture = tex

mtex.texture_coords = 'STRESS'

mtex.use_map_color_diffuse = True

mtex.diffuse_color_factor = 0.25

mtex.use_map_alpha = True

mtex.alpha_factor = 1.0

mtex.blend_type = 'ADD'

# Добавление материала к плоскости

plane.data.materials.append(mat)

# Анимация кольца

ring.location = center

ring.keyframe_insert('location', index=2, frame=1)

ring.location = origin - Vector((0,0,0.5))

ring.keyframe_insert('location', index=2, frame=20)

ring.location = center

return

if __name__ == "__main__":

bpy.ops.object.select_by_type(type='MESH')

bpy.ops.object.delete

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

scn = bpy.context.scene

scn.frame_current = 1

bpy.ops.screen.animation_play

Мягкие тела

Эта программа добавляет конус с модификатором softbody (мягкое тело) и плоскость-препятствие.

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

# File softbody.py

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

import bpy

import mathutils

from mathutils import Vector

def run(origin):

#
Добавление материала

red = bpy.data.materials.new('Red')

red.diffuse_color = (1,0,0)

blue = bpy.data.materials.new('Blue')

blue.diffuse_color = (0,0,1)

# Добавление конуса

bpy.ops.mesh.primitive_cone_add(

vertices=4,

radius=1.5,

cap_end=True)

ob1 = bpy.context.object

me1 = ob1.data

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

bpy.ops.mesh.subdivide(number_cuts=5, smoothness=1, fractal=1)

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

# Странно, нужен новый меш, который является копией

verts = []

faces = []

for v in me1.vertices:

verts.append(v.co)

for f in me1.faces:

faces.append(f.vertices)

me2 = bpy.data.meshes.new('Drop')

me2.from_pydata(verts, [], faces)

me2.update(calc_edges=True)

# Установка гладкости граням (smooth)

for f in me2.faces: f.use_smooth = True

# Добавление нового объекта и его активация

ob2 = bpy.data.objects.new('Drop', me2)

scn = bpy.context.scene

scn.objects.link(ob2)

scn.objects.unlink(ob1)

scn.objects.active = ob2

# Добавление групп вершин

top = ob2.vertex_groups.new('Top')

bottom = ob2.vertex_groups.new('Bottom')

for v in me2.vertices:

w = v.co[2] - 0.2

if w < 0:

if w < -1:

w = -1

bottom.add([v.index], -w, 'REPLACE'
)

elif w > 0:

if w > 1:

w = 1

top.add([v.index], w, 'REPLACE')

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

ob2.location = origin

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

Черный Маг Императора 13

Герда Александр
13. Черный маг императора
Фантастика:
попаданцы
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Черный Маг Императора 13

Последняя Арена 4

Греков Сергей
4. Последняя Арена
Фантастика:
рпг
постапокалипсис
5.00
рейтинг книги
Последняя Арена 4

Маяк надежды

Кас Маркус
5. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Маяк надежды

Великий перелом

Ланцов Михаил Алексеевич
2. Фрунзе
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Великий перелом

Сопротивляйся мне

Вечная Ольга
3. Порочная власть
Любовные романы:
современные любовные романы
эро литература
6.00
рейтинг книги
Сопротивляйся мне

Инквизитор Тьмы 2

Шмаков Алексей Семенович
2. Инквизитор Тьмы
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Инквизитор Тьмы 2

Мастер Разума V

Кронос Александр
5. Мастер Разума
Фантастика:
городское фэнтези
попаданцы
5.00
рейтинг книги
Мастер Разума V

Бандит 2

Щепетнов Евгений Владимирович
2. Петр Синельников
Фантастика:
боевая фантастика
5.73
рейтинг книги
Бандит 2

Истребители. Трилогия

Поселягин Владимир Геннадьевич
Фантастика:
альтернативная история
7.30
рейтинг книги
Истребители. Трилогия

Гардемарин Ее Величества. Инкарнация

Уленгов Юрий
1. Гардемарин ее величества
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
фантастика: прочее
5.00
рейтинг книги
Гардемарин Ее Величества. Инкарнация

Падение Твердыни

Распопов Дмитрий Викторович
6. Венецианский купец
Фантастика:
попаданцы
альтернативная история
5.33
рейтинг книги
Падение Твердыни

"Дальние горизонты. Дух". Компиляция. Книги 1-25

Усманов Хайдарали
Собрание сочинений
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Дальние горизонты. Дух. Компиляция. Книги 1-25

Ох уж этот Мин Джин Хо 2

Кронос Александр
2. Мин Джин Хо
Фантастика:
попаданцы
5.00
рейтинг книги
Ох уж этот Мин Джин Хо 2

Энфис 6

Кронос Александр
6. Эрра
Фантастика:
героическая фантастика
рпг
аниме
5.00
рейтинг книги
Энфис 6