你如何在Eclipse和PyDev中调试Blender Python?
我尝试过以下方法:
http://www.luxrender.net/wiki/LuxBlend25_Debugging_with_eclipse
http://www.blender.org/forum/viewtopic.php?t=3914&sid=717a127d12596f89e4aea0c54938ef80
但是似乎没有一个有效?
致敬
你如何在Eclipse和PyDev中调试Blender Python?
我尝试过以下方法:
http://www.luxrender.net/wiki/LuxBlend25_Debugging_with_eclipse
http://www.blender.org/forum/viewtopic.php?t=3914&sid=717a127d12596f89e4aea0c54938ef80
但是似乎没有一个有效?
致敬
以下是我设置调试的方法,它与lux-render教程略有不同。
首先,创建一个.py文件,我们称之为debug.py,其中包含一个函数,稍后我们将调用它来设置调试。将此文件放在模块的主__init__.py
文件所在的相同文件夹中。根据lux-renderer教程,添加以下代码,更新PYDEV_SOURCE_DIR。
import sys
def startdebug():
try:
# set the PYDEV_SOURCE_DIR correctly before using the debugger
PYDEV_SOURCE_DIR = 'C:\Program Files\eclipse\plugins\org.python.pydev.debug_2.5.0.2012040618\pysrc'
# test if PYDEV_SOURCE_DIR already in sys.path, otherwise append it
if sys.path.count(PYDEV_SOURCE_DIR) < 1:
sys.path.append(PYDEV_SOURCE_DIR)
# import pydevd module
import pydevd
# set debugging enabled
pydevd.settrace(None, True, True, 5678, False, False)
except:
pass
当设置PYDEV_SOURCE_DIR时,请确保将其指向org.python.pydev.debug_xxxxx。还有另一个类似于此的文件夹。为确保您拥有正确的文件夹,它将包含/pysrc文件夹。
现在,在您的主要__init__.py中,这必须位于任何其他导入语句之前才能正常工作。在bl_info部分下直接添加以下内容,因为奇怪的是,blender会自己解析它。
DEBUGGING = True
if(DEBUGGING):
import debug
debug.startdebug()
在这里使用它可以避免像Lux-render教程那样为每个文件添加跟踪。
我发现人们常遇到的问题:
有一本由Witold Jaworski撰写的非常好的电子书,关于Blender插件编程。其中包括一些章节,详细介绍了如何使用PyDev设置Eclipse来调试Blender插件。 为Blender 2.5编写插件
有关设置Blender和Eclipse进行调试的说明非常全面。 http://wiki.blender.org/index.php/User:Z0r/PyDevAndProfiling
虽然这是针对Blender游戏引擎的,但其中很多内容也适用于普通的Blender。