如何从命令行运行Blender导出器脚本?

我正在尝试将某些对象从Blender导出为专有格式。我希望编写的脚本能够从“文件”下拉列表和命令行中的Blender中导出对象。我在Ubuntu 12.04 LTS上使用Blender 2.66。以下是我当前试图运行的文件。


# Required Blender information.

bl_info = {

           "name": "My Exporter",

           "author": "",

           "version": (1, 0),

           "blender": (2, 65, 0),

           "location": "File > Export > Test (.tst)",

           "description": "",

           "warning": "",

           "wiki_url": "",

           "tracker_url": "",

           "category": "Import-Export"

          }


# Import the Blender required namespaces.

import bpy

from bpy_extras.io_utils import ExportHelper



# The main exporter class.

class MyExporter(bpy.types.Operator, ExportHelper):

   bl_idname       = "test.tst";

   bl_label        = "My Exporter";

   bl_options      = {'PRESET'};


   filename_ext    = ".tst";


   object_count    = 0;


   def __init__(self):

      pass


   def execute(self, context):

      print("Execute was called.");


      # Parse all the objects in the scene.

      return {'FINISHED'};


   def export_object(self, gameObject):

      if (gameObject.type != "MESH"):

         print("Object was not of type mesh.");

      else:

         object_count += 1;


      return;



# Define a function to create the menu option for exporting.

def create_menu(self, context):

   self.layout.operator(MyExporter.bl_idname,text="test (.tst)");


# Define the Blender required registration functions.

def register():

   """

   Handles the registration of the Blender Addon.

   """

   bpy.utils.register_module(__name__);

   bpy.types.INFO_MT_file_export.append(create_menu);


def unregister():

   """

   Handles the unregistering of this Blender Addon.

   """

   bpy.utils.unregister_module(__name__);

   bpy.types.INFO_MT_file_export.remove(create_menu);


 

MyExporter类的execute函数似乎从未被调用。我什至尝试直接调用execute函数,但是,如果您阅读该区域上方的注释,那么我似乎也丢失了一些东西。


将脚本作为附加程序添加到Blender时,一切工作正常。它调用完美执行。所以至少我有一半在工作。


预先感谢您能给我的任何帮助。如果我道歉了一个愚蠢的错误,那么在编写此脚本的同时,我正在学习python。


精慕HU
浏览 319回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python