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

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

Жанры

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

Larsson Thomas

Шрифт:

bl_description = 'Export from simple OBJ file format (.obj)'

bl_label = "Export simple OBJ"

bl_space_type = "PROPERTIES"

bl_region_type = "WINDOW"

# Из ExportHelper. Фильтрация имён файлов.

filename_ext = ".obj"

filter_glob = StringProperty(default="*.obj", options={'HIDDEN'})

filepath = bpy.props.StringProperty(

name="File Path",

description="File path used for exporting the simple OBJ file",

maxlen= 1024, default= "")

rot90 = bpy.props.BoolProperty(

name = "Rotate 90 degrees",

description="Rotate mesh to Y up",

default = True)

scale = bpy.props.FloatProperty(

name = "Scale",

description="Scale mesh",

default = 0.1, min = 0.001, max = 1000.0)

def execute(self, context):

print("Load", self.properties.filepath)

from . import simple_obj_export

simple_obj_export.export_simple_obj(

self.properties.filepath,

context.object,

self.rot90,

1.0/self.scale)

 return {'FINISHED'}

def invoke(self, context, event):

context.window_manager.fileselect_add(self)

return {'RUNNING_MODAL'}

#

#
Регистрация

#

def menu_func_import(self, context):

self.layout.operator(IMPORT_OT_simple_obj.bl_idname, text="Simple OBJ (.obj)...")

def menu_func_export(self, context):

self.layout.operator(EXPORT_OT_simple_obj.bl_idname, text="Simple OBJ (.obj)...")

def register:

bpy.utils.register_module(__name__)

bpy.types.INFO_MT_file_import.append(menu_func_import)

bpy.types.INFO_MT_file_export.append(menu_func_export)

def unregister:

bpy.utils.unregister_module(__name__)

bpy.types.INFO_MT_file_import.remove(menu_func_import)

bpy.types.INFO_MT_file_export.remove(menu_func_export)

if __name__ == "__main__":

register

Симуляции

В

этом разделе мы обращаемся к потенциалу симуляций Блендера из Питона. Некоторые из примеров были вдохновлены книгой Bounce, Tumble and Splash Тони Муллена (ищите в Сети великолепный перевод от Morthan'а, пользуясь случаем, передаю ему большое СПАСИБО!
– прим. пер.)
. Однако, большинство рендеров не выглядят так же хорошо, как в книге Муллена, так как целью этих заметок не было найти оптимальный способ для настройки параметров, а скорее чтобы показать, как их можно настраивать из Питона.

Частицы

Эта программа добавляет две системы частиц.

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

# File particle.py

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

import bpy, mathutils, math

from mathutils import Vector, Matrix

from math import pi

def run(origo):

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

origin = Vector(origo)

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

emitter = bpy.context.object

# --- Система частиц 1: Падение и сдувание капель ---

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

bpy.ops.object.particle_system_add

psys1 = emitter.particle_systems[-1]

psys1.name = 'Drops'

# Эмиссия, испускание

pset1 = psys1.settings

pset1.name = 'DropSettings'

pset1.frame_start = 40

pset1.frame_end = 200

pset1.lifetime = 50

pset1.lifetime_random = 0.4

pset1.emit_from = 'FACE'

pset1.use_render_emitter = True

pset1.object_align_factor = (0,0,1)

# Физика

pset1.physics_type = 'NEWTON'

pset1.mass = 2.5

pset1.particle_size = 0.3

pset1.use_multiply_size_mass = True

# Веса эффекторов

ew = pset1.effector_weights

ew.gravity = 1.0

ew.wind = 1.0

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

Моя на одну ночь

Тоцка Тала
Любовные романы:
современные любовные романы
короткие любовные романы
5.50
рейтинг книги
Моя на одну ночь

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

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

Измена. Отбор для предателя

Лаврова Алиса
1. Отбор для предателя
Фантастика:
фэнтези
5.00
рейтинг книги
Измена. Отбор для предателя

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

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

Шаг в бездну

Муравьёв Константин Николаевич
3. Перешагнуть пропасть
Фантастика:
фэнтези
космическая фантастика
7.89
рейтинг книги
Шаг в бездну

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

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

Вечная Война. Книга II

Винокуров Юрий
2. Вечная война.
Фантастика:
юмористическая фантастика
космическая фантастика
8.37
рейтинг книги
Вечная Война. Книга II

Хроники странного королевства. Вторжение. (Дилогия)

Панкеева Оксана Петровна
110. В одном томе
Фантастика:
фэнтези
9.38
рейтинг книги
Хроники странного королевства. Вторжение. (Дилогия)

Часовой ключ

Щерба Наталья Васильевна
1. Часодеи
Фантастика:
фэнтези
9.36
рейтинг книги
Часовой ключ

Инвестиго, из медика в маги

Рэд Илья
1. Инвестиго
Фантастика:
фэнтези
городское фэнтези
попаданцы
5.00
рейтинг книги
Инвестиго, из медика в маги

Кротовский, может, хватит?

Парсиев Дмитрий
3. РОС: Изнанка Империи
Фантастика:
попаданцы
альтернативная история
аниме
7.50
рейтинг книги
Кротовский, может, хватит?

Драконий подарок

Суббота Светлана
1. Королевская академия Драко
Любовные романы:
любовно-фантастические романы
7.30
рейтинг книги
Драконий подарок

Очешуеть! Я - жена дракона?!

Амеличева Елена
Фантастика:
юмористическая фантастика
5.43
рейтинг книги
Очешуеть! Я - жена дракона?!

Идеальный мир для Лекаря 9

Сапфир Олег
9. Лекарь
Фантастика:
боевая фантастика
юмористическое фэнтези
6.00
рейтинг книги
Идеальный мир для Лекаря 9