+bl_info = {
+ "name": "Msp GL format",
+ "author": "Mikko Rasa",
+ "location": "File > Export",
+ "description": "Export Msp GL meshes and objects",
+ "category": "Import-Export" }
+
+if "bpy" in locals():
+ import imp
+ for sub in "export_mspgl", "mesh", "util":
+ if sub in locals():
+ imp.reload(locals()[sub])
+
import bpy
from io_utils import ExportHelper
class ExportMspGL(bpy.types.Operator, ExportHelper):
- bl_idname = "export.mspgl"
+ bl_idname = "export_mesh.mspgl"
bl_label = "Export Msp GL data"
filename_ext = ".mesh"
optimize_cache = bpy.props.BoolProperty(name="Optimize cache", description="Optimize element order for vertex cache", default=True)
cache_size = bpy.props.IntProperty(name="Cache size", description="Simulated vertex cache size used in optimization", default=64, min=8, max=1024)
export_lines = bpy.props.BoolProperty(name="Export lines", description="Export edges without faces as lines", default=False)
+ export_uv = bpy.props.EnumProperty(name="Export UV", description="Export UV coordinates", default="UNIT0",
+ items=(("NONE", "None", "No UV coordinates are exported"),
+ ("UNIT0", "Unit 0", "UV coordinates for unit 0 are exported"),
+ ("ALL", "All", "All UV coordinates are exported")))
tbn_vecs = bpy.props.BoolProperty(name="TBN vectors", description="Compute tangent and binormal vectors for vertices", default=False)
+ tbn_uvtex = bpy.props.StringProperty(name="TBN UV layer", description="UV layer to use as basis for TBN vectors", default="")
compound = bpy.props.BoolProperty(name="Compound", description="Combine all selected objects into one for exporting", default=False)
object = bpy.props.BoolProperty(name="Object", description="Export an object instead of a mesh", default=False)
material_tex = bpy.props.BoolProperty(name="Material texture", description="Generate a texture based on material colors", default=False)
+ smoothing = bpy.props.EnumProperty(name="Smoothing", description="Smoothing method to use", default="MSPGL",
+ items=(("NONE", "None", "No smoothing"),
+ ("BLENDER", "Blender", "Use Blender's vertex normals"),
+ ("MSPGL", "MspGL", "Compute vertex normals internally")))
def execute(self, context):
from . import export_mspgl
self.layout.operator(ExportMspGL.bl_idname, text="Msp GL")
def register():
+ bpy.utils.register_module(__name__)
+
bpy.types.INFO_MT_file_export.append(menu_func_export)
+def unregister():
+ bpy.utils.unregister_module(__name__)
+
+ bpy.types.INFO_MT_file_export.remove(menu_func_export)
+
if __name__=="__main__":
register()