Skip to content

Instantly share code, notes, and snippets.

@wakarase
wakarase / .py
Last active March 12, 2023 09:01
# Blender 質感・マテリアル設定実践テクニック 2-02-1.blend
import bpy
def init_engine():
"""レンダリングエンジンの設定をします。"""
bpy.context.scene.render.engine = 'CYCLES'
bpy.context.scene.cycles.samples = 1_024
def init_material():
"""マテリアルの設定をします。"""
material = bpy.data.materials['Material']
assert isinstance(material, bpy.types.Material)
# BlenderユーザーのためのPython入門
# 第22節 ランダムな色の複数の球を並べる
import bpy
import random
def delete_all():
"""既存のメッシュとマテリアルを削除します。"""
for mesh in bpy.data.meshes:
assert isinstance(mesh, bpy.types.Mesh)
bpy.data.meshes.remove(mesh)
for material in bpy.data.materials:
# BlenderユーザーのためのPython入門
# 第23節 トーラスの各面にマテリアルインデックスをセットする
import bmesh
import bpy
import random
def delete_all():
"""既存のメッシュとマテリアルを削除します。"""
for mesh in bpy.data.meshes:
assert isinstance(mesh, bpy.types.Mesh)
bpy.data.meshes.remove(mesh)
# BlenderユーザーのためのPython入門
# 第24節 複数のキューブをsinで並べてグラデーションする
import colorsys
import bpy
import math
import random
def delete_all():
"""既存のメッシュとマテリアルを削除します。"""
for mesh in bpy.data.meshes:
assert isinstance(mesh, bpy.types.Mesh)
@wakarase
wakarase / .py
Last active March 15, 2023 10:37
# Blender 質感・マテリアル設定実践テクニック 3-02-1.blend
import bpy
object = bpy.data.objects['export3dcoat'] # シーンに配置済みのオブジェクト
slot = object.material_slots[0] # そのマテリアルスロット
material = slot.material # に設定されているマテリアル
node_tree = material.node_tree # のノードネットワーク
nodes = node_tree.nodes # にある各ノード
def delete():
"""過去に生成したノードを削除します。"""
for node in nodes:
# BlenderユーザーのためのPython入門
# 第25節 ボーンを作成してボーンアニメーションさせる
import bpy
import math
import mathutils
class BoneAnimation():
def __init__(self):
"""既存のアーマチュアとメッシュを削除します。"""
for armature in bpy.data.armatures:
assert isinstance(armature, bpy.types.Armature)
"""Makes all objects' material metallic."""
import bpy
USE_TRANSMISSION = False
def remove():
"""Removes previously created materials."""
for material in bpy.data.materials:
if material.name == 'MyMaterial':
bpy.data.materials.remove(material)
def create_material():
"""Creates a metallic material and returns it."""
# BlenderユーザーのためのPython入門
# 第26節 ギャグマシーンを作成する
import bpy
import math
import random
# 人体を構成する10個のオブジェクトです。
objs = []
# 身体の各部分に許容する回転角です。
rot_range = (10, 45, 90, 90, 90, 90, 90, 90, 90, 90)
def make_cube(parent, loc, scale, pivot, name):
# Blender 質感・マテリアル設定実践テクニック 3-03-1.blend
import bpy
object = bpy.data.objects['export3dcoat'] # シーンに配置済みのオブジェクト
slot = object.material_slots[0] # そのマテリアルスロット
material = slot.material # に設定されているマテリアル
node_tree = material.node_tree # のノードネットワーク
nodes = node_tree.nodes # にある各ノード
def delete():
"""過去に生成したノードを削除します。"""
for node in nodes:
# Blender 質感・マテリアル設定実践テクニック 3-03-1.blend
import bpy
object = bpy.data.objects['export3dcoat'] # シーンに配置済みのオブジェクト
slot = object.material_slots[0] # そのマテリアルスロット
material = slot.material # に設定されているマテリアル
node_tree = material.node_tree # のノードネットワーク
nodes = node_tree.nodes # にある各ノード
def delete():
"""過去に生成したノードを削除します。"""
for node in nodes: