Gracias Gracias:  2
Resultados 1 al 2 de 2

Tema: Crear armadura mediante script en Blender

  1. #1
    estejorge
    Fecha de ingreso
    Jun 2010
    Mensajes
    4

    Crear armadura mediante script en Blender.

    Hola, tengo dudas respecto a la creación de una armadura mediante un script, a ver si alguien tiene alguna idea sobre esto. He empezado intentando generar un par de huesos dentro de una armadura nueva, creo que he seguido todos los pasos para ello, pero no consigo hacer que se muestre en la ventana "3D view".
    Lo primero que hago es eliminar todos los objetos que se generan por defecto cuando abrimimos blender y después creo la armadura en si y el objeto armadura que tendrá linkeada la armadura, por último edito los huesos que quiero añadir a la armadura y los añado a la misma. Dejo el codigo, abajo. Si alguien tiene alguna idea de cual es el fallo le estaré agradecidisimo...

    Gracias de antemano.

    Código:
     scn= Blender.Scene.GetCurrent()
    
     #Eliminamos todos los objetos cargados por defecto de la escena inicial.
     for ob in scn.objects:
     scn.objects.unlink(ob)
     print 'Elimina'
    
     arm = Blender.Armature.New('Armadura_jorge')
     print 'Crea armadura.'
     armObj = Blender.Object.New('Armature')
     print 'Crea objeto armadura.'
     armObj.link (arm)
     #Asignamos espacio a el objeto armadura.
     arm_mat= armObj.matrixWorld
     print 'Crea link Armadura ---> ObjArmadura.'
     arm.drawType = Blender.Armature.OCTAHEDRON
     print 'Definimos tipo del bones.'
     arm.makeEditable()
     print 'Cambiamos a edit mode.'
     
     # Edicion de un hueso.
     print 'Inicio edición hueso.'
     editb = Blender.Armature.Editbone()
     editb.roll = 10
     editb.head = Blender.Mathutils.Vector(0.0,0.0,0.57)
     editb.tail = Blender.Mathutils.Vector(0.0,0.75,0.57)
     editb.options = [Blender.Armature.HINGE]
     arm.bones['cabeza'] = editb
     
    
     print 'Fin edición hueso.'
     # Edicion de un hueso.
     print 'Inicio edición hueso.'
     editb1 = Blender.Armature.Editbone()
     editb1.roll = 10
     editb1.head = Blender.Mathutils.Vector(0,0,100)
     editb1.tail = Blender.Mathutils.Vector(0,300,100)
     editb1.options = [Blender.Armature.HINGE, Blender.Armature.CONNECTED]
     editb1.parent = editb
     arm.bones['tronco'] = editb1
     arm.update()
     Blender.Redraw()
     print 'Fin edición hueso.

  2. #2
    estejorge
    Fecha de ingreso
    Jun 2010
    Mensajes
    4

    Re: Crear armadura mediante script en Blender.

    Hola finalmente encontré la solución al problema, ahí la dejo:

    Solo había que añadir al siguiente línea al final del codigo, antes del Blender.Redraw.

    --> scn.objects.link(armObj)

    Para crear el link entre la escena y el nuevo objeto creado.

Temas similares

  1. Blender cambiar fuente mediante script
    Por Juandi3 en el foro Programación y Scripts
    Respuestas: 0
    Último mensaje: 13-12-2013, 23:45
  2. Mover, rotar, escalar y animar un arbol mediante script en 3ds Max
    Por 3dpoder en el foro Programación y Scripts
    Respuestas: 2
    Último mensaje: 14-06-2013, 04:52
  3. After Effects Tutos : Green screen con Primatte animar mediante Script
    Por ale iron en el foro After Effects
    Respuestas: 0
    Último mensaje: 16-03-2012, 15:02
  4. Blender sticky uv en blender mediante script
    Por jor1980 en el foro Programación y Scripts
    Respuestas: 4
    Último mensaje: 07-07-2009, 22:29
  5. acelerar la carga de bitmaps en 3ds max , mediante script
    Por maestrosaintgermain en el foro Programación y Scripts
    Respuestas: 0
    Último mensaje: 11-09-2008, 17:02

Actualmente estos son sus permisos de publicación en el foro.

  • -No puedes crear nuevos temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes responder temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes subir archivos adjuntos al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes editar tus mensajes al no estar registrado o no haber iniciado sesión en el foro.
  •