以前、別の記事でマテリアル設定のことを書きました。
そのやり方は本で見たものだったのですが、私には難しく少し理解しづらいものでした。
別のサイトでもっとシンプルで理解しやすいものがで残します。理解しやすいけど使い勝手は悪そうです。けど、わかることは重要です。
コードを書いてみる
単純に書くと以下のようになります。
ma = bpy.data.materials.new('color') ma.diffuse_color = (1, 0, 0, 1)
しかし、マテリアルは1つではないと思うので、リストに入れます。
ma = []
ma.append(bpy.data.materials.new('color'))
新規作成したマテリアルに色を付ける(ディフューズで設定)。
ma[0].diffuse_color = (0, 1, 1, 1)
そして、オブジェクトに新規作成&ディフューズ設定したマテリアルを設定する。
bpy.ops.mesh.primitive_cube_add()
bpy.context.object.data.materials.append(ma[0])
コードの全体はこちら
最初にオブジェクトとマテリアルを削除しています。
import bpy for m in bpy.data.meshes: bpy.data.meshes.remove(m) for m in bpy.data.materials: bpy.data.materials.remove(m) ma = [] ma.append(bpy.data.materials.new('color')) ma[0].diffuse_color = (0, 1, 1, 1) bpy.ops.mesh.primitive_cube_add() bpy.context.object.data.materials.append(ma[0])
だいぶ基本的な部分が理解できてきました。
けど、応用して作成しようとすると、すぐにつまづきます。
引き続きBlenderのPythonをがんばろうと思います。
https://yuuuha.hatenablog.com/entry/bpy_materialyuuuha.hatenablog.com
参考サイト→ http://www3.muroran-it.ac.jp/yt-lab/Blender/blender28.pdf