目录
Blender 强大的特点是其对 Python 脚本的完美支持。
这意味着可以编写 Python 脚本来自动化各种任务和操作,从而节省时间和减少重复性工作:
使用:
如何使用blender的脚本功能:
第一步,我们打开blender,然后打开脚本:
打开脚本后,在脚本区域,也就是右侧点击一下新建:
在这里,我们就可以写python代码,来进行运行了,在写代码之前记得写上import bpy。
快速创建10个圆球:
如图所示,我们在场景中创建了一个球,在左下角会出现一行代码,这个代码就是球的创建代码。
我们只需要将其复制粘贴即可。
然后这里笔者做一个循环:
可以看到代码里面有创建球的位置和大小标量,这里我们只需要将i进行设置一下即可:
运行的位置就在新建右侧的三角形。
这里笔者将i*20在z轴,可以看到每一个球都是在i*20的位置生成。
python代码:
import bpy
for i in range(1,10):
bpy.ops.mesh.primitive_uv_sphere_add(enter_editmode=False, align='WORLD', location=(0, 0, i*20), scale=(1, 1, 1))
形态键快速创建和重命名:
在使用了以上功能后,我们可以发现,很多事情都已经开始简单起来了。
比如我们创建形态键后,还需要一个个进行改名,使用这种方法,就可以直接创建一大堆:
一样的流程【如果有需要,甚至可以在创建更改名字后进入编辑模式再返回物品模式】:
可能存在的问题
在这里可能会出现一个问题,在重命名的时候:
错误代码是:
key_name="Key"+str(i) #这里是为了将名字转为字符串
bpy.data.shape_keys["Key"].key_blocks[key_name].name = key_name
这样之所以是错误的是因为我们在重命名之后可以看见:
【】内的字符串是999,赋值的也是字符串999,所以一般会下意识的写上去。
但实际上这里需要的是一个引用:
所以这里改为:
bpy.data.shape_keys["Key"].key_blocks[i].name = key_name
python代码:
import bpy
for i in range(0,10):
bpy.ops.object.shape_key_add(from_mix=False)
if i ==0:
bpy.data.shape_keys["Key"].key_blocks[i].name = "base"
else:
key_name = "Key" + str(i)
bpy.context.object.active_shape_key_index = i
# bpy.data.shape_keys["Key"].key_blocks[key_name].name = key_name
bpy.data.shape_keys["Key"].key_blocks[i].name = key_name