Hola tengo un par de scripts en Blender, uno para importar un objeto y el otro para exportarlo, el problema es que una vez le importa cuando voy a exportarlo con la siguiente sentencia:
For v in datosobjeto, vértices:
X=v, co[0] y=v, co[1] z=v, co[2].
Me devuelve las coordenadas de los vértices sin ningún cambio, es decir, aunque mueva algún vértice, me sigue devolviendo la posición que tenía al importarlo.
Alguien puede echarme una mano.
Igual habría que ver el resto del código, porque de ahí no se puede deducir demasiado. O eso o se me está pasando algo porque no veo nada raro. Como mucho que estés usando siempre las mismas variables (x y, z) para todos los vértices y se sobrescriban, pero es problema no lo comentas. Un saludo.
No había que actualizar la malla o algo así vaya, a ver si me jubilo ya de una vez y tengo tiempo para todo.
Caronte si que me suena lo de actualizar la malla, pero no sé cómo hacerlo. Tienes idea de cómo se hace. Gracias.
Ni idea, pero por probar, intenta.update () después del nombre que estés usando como variable de la malla.
He probado con update, pero me da un error de sintaxis, estoy buscando información sobre la sintaxis, pero no encontré nada aún.
Para obtener la Maya deformada, debes usar getrawfromobject, está en el módulo nmesh. Seria algo así:
[code]Import Blender.
From Blender import nmesh, window.
Editmode = window. Editmode () # estamos en modo de edición?
If editmode: window. Editmode (0) # si es así, salimos.
Datosobjeto = nmesh. Getrawfromobject(objeto, name) # obtiene la Autodesk Maya, debes pasar el nombre del objeto.
For v in datosobjeto, vértices:
X=v, co[0].
Y=v, co[1].
Z=v, co[2].
#haces lo que sea con los vértices x y, z.
#.
#.
If editmode: window. Editmode (1) # opcional, si estamabos en editmode, vuelve (solo para dejar todo como estaba).
[/code]
Gracias, lo descubrí hace unos días y no pude publicarlo porque mi PC se estropeó. Efectivamente para que los cambios se hagan efectivos al exportar mediante script hay que abandonar el modo edición.