Blender 2.7 MacOS控制台错误


问题内容

我在Mac(OS 10.9.2)上使用Blender
2.7,但无法正确打开控制台。如果我打开blender.app/Contents/MacOS/blender,会出现一个新的终端窗口,但其中充满了清晰易读的字符,例如“
–˙Ì˛Ä&àÖÄH__PAGEZERO__TEXTÃÔ。Blender也不会在其中记录任何打印语句或错误。

有人知道发生了什么吗?

谢谢!

编辑:我也是终端机的新手,并且正在尝试使用/ Contents / MacOS目录:P中的“ open blender”。如果您在父目录中键入“
./blender”,它就可以正常工作。

如果任何人都可以了解正在发生的事情,或者键入“ ./filename”和“ open filename”之间的区别是什么,那真是太棒了。


问题答案:

Blender具有与二进制文件位于同一文件夹中的各种需要运行的资源,它在启动Blender时从当前工作目录开始以查找它们。

在正在键入命令的终端中,有一个搜索命令的顺序(在PATH变量中定义),在命令之前加上前缀./是要在当前工作目录中运行该命令,而不是在PATH列表中进行搜索它。

命令open的意思是在合适的编辑器中打开可编辑的文件,似乎可以使用终端来处理它,只是新的终端将在您的主目录中启动,从而使Blender无法找到其资源。自从我使用OSX已有几年了,但它可能还试图将Blender
Binary作为Shell脚本运行。无论哪种方式,open都不处理可运行的二进制文件,也不是专门为处理而设计的。

因此,区别open blender在于您要编辑文件,但./blender实际上是从命令行运行应用程序。

您可能还发现创建一个Applescript告诉终端更改工作目录并启动Blender相当容易。可以轻松地将其另存为可从查找器启动的应用程序。我认为(未测试)-

tell application "Terminal"
 do script "cd /Applications/blender/blender.app/Contents/MacOS && ./blender"
end tell

而且,如果您只想在运行脚本时输出python输出,则可以在此处尝试该脚本-它使您可以在Blender的python控制台中运行脚本以捕获输出。

当您需要Blender特定的python脚本帮助时,请在blender.stackexchange中询问