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

на главную - закладки

Жанры

Введение в написание скриптов на Питоне для Блендера 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

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

Кодекс Крови. Книга III

Борзых М.
3. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга III

Мастер темных Арканов

Карелин Сергей Витальевич
1. Мастер темных арканов
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Мастер темных Арканов

Измена. Испорченная свадьба

Данич Дина
Любовные романы:
современные любовные романы
короткие любовные романы
5.00
рейтинг книги
Измена. Испорченная свадьба

Блуждающие огни

Панченко Андрей Алексеевич
1. Блуждающие огни
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Блуждающие огни

Пышка и Герцог

Ордина Ирина
Фантастика:
юмористическое фэнтези
историческое фэнтези
фэнтези
5.00
рейтинг книги
Пышка и Герцог

Затерянные земли или Великий Поход

Михайлов Дем Алексеевич
8. Господство клана Неспящих
Фантастика:
фэнтези
рпг
7.89
рейтинг книги
Затерянные земли или Великий Поход

Адвокат Империи 2

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

Газлайтер. Том 6

Володин Григорий
6. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 6

Часовая битва

Щерба Наталья Васильевна
6. Часодеи
Детские:
детская фантастика
9.38
рейтинг книги
Часовая битва

Невеста снежного демона

Ардова Алиса
Зимний бал в академии
Фантастика:
фэнтези
6.80
рейтинг книги
Невеста снежного демона

Законы Рода. Том 3

Flow Ascold
3. Граф Берестьев
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Законы Рода. Том 3

Случайная свадьба (+ Бонус)

Тоцка Тала
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Случайная свадьба (+ Бонус)

Болотник 2

Панченко Андрей Алексеевич
2. Болотник
Фантастика:
попаданцы
альтернативная история
6.25
рейтинг книги
Болотник 2

Пипец Котенку! 2

Майерс Александр
2. РОС: Пипец Котенку!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Пипец Котенку! 2