Blender 3D:从新手到专业/高级教程/Python 脚本/外部脚本
适用于 Blender 版本:2.49。 |
将脚本嵌入 Blender 文档对于某些特殊目的很有用,但通常您希望能够在任何数量的 Blender 文档中重复使用它,并且可能将其分发给其他人以便与他们的 Blender 项目一起使用。为此,您需要将脚本另存为一个文本文件,该文件可以复制到您的 Blender 用户首选项中。它还需要插入一些额外的信息。
为了使您的脚本可安装,它需要以以下内容作为其第一行
#!BPY
在此之后,添加一个多行 Python 字符串来定义脚本在脚本菜单中显示的名称和其他信息
"""
Name: 'Add Tetrahedron'
Blender: 249
Group: 'Add'
Tooltip: 'Creates a tetrahedron object'
"""
"Blender:" 行指定了脚本兼容的 Blender 的最低要求版本;这里我们指定 "249" 表示它需要 Blender 版本 2.49。 "Group:" 表示脚本将在脚本菜单的哪个子菜单中显示:它必须与现有子菜单名称之一匹配,否则脚本将进入 "Misc" 子菜单。 "Name:" 是将添加用于调用此脚本的菜单项的名称,而 "Tooltip:" 将在用户将鼠标悬停在该菜单项上时显示。
因此,您完整的脚本如下所示
#!BPY
"""
Name: 'Add Tetrahedron'
Blender: 249
Group: 'Add'
Tooltip: 'Creates a tetrahedron object'
"""
from __future__ import division
import math
import Blender
NewMesh = Blender.Mesh.New("Tetrahedron")
NewMesh.verts.extend \
(
[
(0, -1 / math.sqrt(3),0),
(0.5, 1 / (2 * math.sqrt(3)), 0),
(-0.5, 1 / (2 * math.sqrt(3)), 0),
(0, 0, math.sqrt(2 / 3)),
]
)
NewMesh.faces.extend \
(
[[0, 1, 2], [0, 1, 3], [1, 2, 3], [2, 0, 3]]
)
TheObj = Blender.Object.New("Mesh", "Tetrahedron")
TheObj.link(NewMesh)
TheScene = Blender.Scene.GetCurrent()
TheScene.link(TheObj)
TheScene.update()
Blender.Window.Redraw()
您的脚本内容现已完成。在文本编辑器中,找到 "Text" 菜单下的 "Save As" 选项,并选择一个文件名来保存您的脚本 - 可能将其命名为 TetrahedronMaker.py。
就这样。此保存的文本文件现在已准备好安装到您的 Blender 用户设置中,或分发给其他人以便安装到他们的设置中。
要安装脚本,只需将您之前保存的文件复制到 Blender 用户设置中的用户脚本目录。
对于不同的操作系统,它是
- Linux/Unix: ~/.blender/scripts
- Windows XP: C:\Program Files\Blender Foundation\Blender\.blender\scripts
- Windows XP (alt): C:\Documents and Settings\USERNAME\Application Data\Blender Foundation\Blender\.blender\scripts
- Windows Vista: C:\Users\USERNAME\AppData\Roaming\Blender Foundation\Blender\.blender\scripts
- Mac OS X
- 在 Mac OSX 下,路径实际上隐藏在 blender.app 中,因此要了解路径,您需要知道脚本文件夹实际上隐藏在 blender.app 本身中。假设 Blender 位于应用程序目录中,路径将是 "/Applications/blender/blender.app/Contents/MacOS/.blender/scripts"。如果您尝试从 Finder 打开 .app 内容,您会注意到路径的 .blender 部分不可见,而 Blender 仍然可以导航到此文件夹。
- 右键单击(或 Ctrl-单击)文件 "blender",然后在弹出菜单中选择 "Show Package Contents"。它将显示 blender 文件夹下所有隐藏的文件,然后选择其中的 "scripts" 文件夹。
- 要在 OSX 终端中查看此文件夹,请在列出的路径的 MacOS 文件夹中使用 ls -a 命令(列出所有文件夹/文件,即使是隐藏的)。在 "/Applications/blender-2.37a-OSX-10.3-powerpc" 文件夹中为脚本文件夹创建一个别名可能是好主意,以便可以通过 Finder 轻松操作脚本。我知道将 Blender 的脚本文件夹埋藏在应用程序内部很令人困惑,但这是为了保持应用程序的可移植性,并且不需要安装。
- 比上面更安全的方法是将您的脚本保存在您的主文件夹中的某个位置:使用此方案,当您升级 Blender 应用程序时,您不会有删除脚本的风险,因为它们没有包含在应用程序文件夹中。遵循此原则的一种方法如下:在您自己的主目录中创建一个包含您的脚本(或其中一些脚本)的文件夹;然后,不要将您的文件直接放在上面讨论的 .../.blender/scripts/ 文件夹中,只需在 .../.blender/scripts/ 文件夹中添加指向您脚本目录的链接(例如,使用 "ln -s" Unix 命令,或者通过执行 "open /Applications/blender-2.37a-OSX-10.3-powerpc/blender.app/Contents/MacOS/.blender/scripts/" [根据您的 Blender 版本进行调整],然后通过 Finder 创建一个链接,使用文件 -> 创建别名)。Blender 现在将找到您放在主目录中的所有脚本:它将按照您在其 .../.blender/scripts/ 文件夹中创建的链接进行操作,转到您自己目录中的相应文件夹,并找到您放置在那里的所有 Python 脚本。
要使用已安装的脚本,请打开一个新的 Blender 文档。摆脱默认的立方体以避免它遮挡视线。将 3D 视图水平分成两部分,并将其中一部分更改为脚本窗口。转到 "Scripts" 菜单,看看您的 "Add Tetrahedron" 项目是否出现在 "Add" 子菜单中;如果没有,请选择 "Update Menus"("Scripts" 菜单中的最后一个项目)并再次查看。选择新的菜单项,观察您的四面体物体出现在 3D 视图中!