天天看點

[Blender] 在 腳本中建立 Mesh

有時候需要在 Blender 中建立一些 Mesh 進行下步操作,這個資料的來源是多要的,甚至可能是網絡傳輸過來的 Mesh 的資訊,是以需要在腳本中動态的建立 Mesh,這裡簡單記錄一些如何在 Blender 的腳本中建立 Mesh。

https://github.com/MangoWAY/BlenderDemo/tree/main/createMesh

import bpy  

# 首先定義頂點的資訊
verts = [
    (1.0, 1.0, -1.0),
    (1.0, -1.0, -1.0),
    (-1.0, -1.0, -1.0),
    (-1.0, 1.0, -1.0),
    (1.0, 1.0, 1.0),
    (1.0, -1.0, 1.0),
    (-1.0, -1.0, 1.0),
    (-1.0, 1.0, 1.0)
]

# 定義面索引,這裡用的不是三角形,而是多邊形,對應正方體的 6 個面
faces = [
    (0, 1, 2, 3),
    (4, 7, 6, 5),
    (0, 4, 5, 1),
    (1, 5, 6, 2),
    (2, 6, 7, 3),
    (4, 0, 3, 7)
]  

# 建立 mesh 對象
mesh_data = bpy.data.meshes.new("cube_mesh_data")
mesh_data.from_pydata(verts, [], faces)
mesh_data.update()

# 建立 object 對象
obj = bpy.data.objects.new("My_Object", mesh_data)

# 将 object 放進 某個 Collection 中
col =  bpy.data.collections["Collection"]
col.objects.link(obj)
           

繼續閱讀