Exemplo n.º 1
0
def load_sculptie(filename):
    time1 = Blender.sys.time()
    Blender.SaveUndoState("Import Sculptie")
    #print "--------------------------------"
    print 'Importing "%s"' % filename
    scene = Blender.Scene.GetCurrent()
    for ob in scene.objects.selected:
        ob.sel = False
    in_editmode = Blender.Window.EditMode()
    # MUST leave edit mode before changing an active mesh:
    if in_editmode:
        Blender.Window.EditMode(0)
    else:
        try:
            in_editmode = Blender.Get('add_editmode')
        except:
            pass
    f, e = Blender.sys.splitext(filename)
    e = e.lower()
    if e == '.dae':
        import_collada(filename)
    elif e == '.obj':
        import_obj(filename)
    else:
        try:
            ob = sculpty.open(filename)
        except:
            Blender.Draw.PupBlock(
                "Sculptie Import Error",
                ["Unsupported file type", "Use .dae or an image file"])
    if in_editmode:
        Blender.Window.EditMode(1)
    Blender.Redraw()
    print 'Loaded Sculptmap "%s" in %.4f sec.' % (filename,
                                                  (Blender.sys.time() - time1))
Exemplo n.º 2
0
def runAsTextPlugin():
    '''Called when run as a text plugin.'''

    import Blender
    from Blender import Window, sys, Draw
    import BPyTextPlugin, bpy

    message = ("Convert Game Engine script from 4.48 API to 2.49 API%t|"
               "Run on active script only%x1|"
               "Run on ALL text buffers%x2")
    convertAllBuffers = Draw.PupMenu(message) == 2

    Window.WaitCursor(1)
    try:
        nconverted = 0
        nerrors = 0

        if convertAllBuffers:
            texts = bpy.data.texts
        else:
            if not bpy.data.texts.active:
                Draw.PupMenu("No active buffer.")
                return
            texts = [bpy.data.texts.active]

        Blender.SaveUndoState('Convert BGE 2.49')

        for txt in texts:
            bufName = txt.name
            if txt.lib:
                bufName = txt.lib + '/' + bufName
            lines = txt.asLines()
            for i in range(0, len(lines)):
                if not lines[i].endswith('\n'):
                    lines[i] = lines[i] + '\n'

            nc, ne = convert248to249(lines, fileName=bufName)
            nconverted = nconverted + nc
            nerrors = nerrors + ne
            txt.clear()
            for line in lines:
                txt.write(line)

    finally:
        Window.WaitCursor(0)

        message = "Converted %d attributes." % nconverted
        if nerrors == 1:
            message = message + " There was 1 error (see console)."
        if nerrors > 1:
            message = message + " There were %d errors (see console)." % nerrors
        message = message + "|Please review all the changes."
        Draw.PupMenu(message)
Exemplo n.º 3
0
def main():

    scene = Blender.Scene.GetCurrent()
    success = False
    Blender.Window.WaitCursor(1)
    Blender.SaveUndoState("Sculptify")
    for ob in scene.objects.selected:
        if sculptify(ob):
            success = True
    #Blender.Window.WaitCursor(0)

    if not success:
        Blender.Draw.PupBlock("Conversion Error",
                              ["No suitable objects", "are selected"])
    Blender.Redraw()