XSIforum.com
Foros 3D => Autodesk Softimage => Rigging y Scripting => Mensaje iniciado por: Eloihm en 03 Junio 2009, 12:21:53
-
Hola!:
Tengo un problemilla, he visto unos tutos en los que se instalaba un script con el cual se poede crear un botón que hace lo siguiente:
1- Seleccionas lo que quieras.
2- Al pulsar el botón, pone un null en cada uno de los puntos de la geometría (bien sea una curva, un nurbs o un polymesh...da igual).
3- Crea un cluster para cada punto.
4- Hace a cada cluster un Deform>Cluster Center a su correspondiente null.
Y con eso, al mover los nulls, deformamos la geometría. el problema es que se lo descarga desde la web oficial y no lo encuentro por ninguna parte (ni en la oficial, ni fuera)
¿hay alguien que me pueda decir de donde lo puedo sacar?
-
Ni idea de donde puede estar pero es relativamente fácil de hacer.
xsi = Application
def DeformWithNull(in_obj):
allNull = []
for eachPoint in in_obj.ActivePrimitive.Geometry.Points:
allNull.append( in_obj.AddNull("%s_vertex" % (in_obj.Name)) )
tm = XSIMath.CreateTransform()
tm.SetTranslation(eachPoint.Position)
allNull[-1].Kinematics.Local.Transform = tm
cluster = xsi.CreateCluster(eachPoint)[0]
xsi.ApplyOp("ClusterCenter", "%s;%s"%(cluster.FullName, allNull[-1].FullName))
return allNull
for each in xsi.Selection:
DeformWithNull(each)
-
T_T
Gracias, yo me he tirado toda la mañana dale que te pego y apenas he podido meter un null en escena, así que me imagino que te harás una idea de lo que significa para mí.
Muchas gracias!
-
César es especialista en hacer sentir inútil a uno mismo, lo digo por una experiencia parecida a la tuya ;D
-
Hey! yo sólo quiero ayudar :D
-
Hehe! Ojala en el mundo hubiera más "CesarSaezes" y "Alanfes" y "Unaidedes" etc que echaran una mano a los que lo necesitan, porque todos estariamos mucho mejor (por lo menos, yo) XD
-
por cierto, me he dado cuenta que hay una pequeña imprecisión, no sé a que es debida, pero me pone los nulls (una cosilla, que se renombren sólos es un detallazo que me ha llegado al alma y que no te puedo agradecer lo suficiente) a 0.0743 en "Y" global por encima del vértice.
Aprovechando que tenía que hacer un script para cambiar al shadow "diamond" y para ajustar el tamaño, le he añadido que lo mueva un poco p'abajo y ya está.
Muchas gracias de nuevo!
-
Ahora que lo miro creo que las transformaciones deberían ser locales ya que la posición de los puntos vienen dadas en el espacio del objeto.
No lo he probado pero quizás sea eso, prueba cambiar el Global por Local :)
-
ahora mismo te lo digo...
-
Exacto, eso era. Ahora cada uno de los nulls va clavadito al centro del vertice.
Una fiera.
Muchas gracias una vez más (y las que me quedan!)
-
De nada :)
He editado el código de la respuesta para que use transformaciones locales y asi si luego le sirve a alguien más lo tenga más fácil O0
-
Hola, Cesar:
Quisiera pedirte disculpas, ya que un error mio te ha hecho perder el tiempo y me sabe mal.
Me refiero a que me equivoqué, y en lugar de un "deform>Cluster Center", el proceso que necesitaba es igual (crear un cluster con cada punto, poner un null en cada punto en sus coordenadas locales), pero hay que hacer a cada null un "Constrain Object to cluster" a su respectivo vertice.
Esto último lo descubrí ayer.
En fin, escribo esto para disculparme y para todos aquellos que tenían el mismo problema que yo y que se abran encontrado el mismo escollo que me he encontrado yo.
De todos modos,muchas gracias por tu esfuerzo.
-
No hay problema O0
Lo lograste ajustar a lo que necesitas?
-
Si, al final lo conseguí, pero no lo arregle yo, un compañero encontró el script que estaba buscando y me lo pasó :-[
Si consigo que recuerde de donde lo sacó, lo pondré en este hilo.
De todas maneras, muchisimas gracias, estoy seguro de que este script que hiciste me será muy útil más adelante.
-
La pagina es esta. No os asusteis cuando la abrais, no se os ha roto el equipo ni se ha desconfigurado: La pagina está en japones, pero el título del script y la palabra "Donwload" están bien claritas, así que ánimo, valientes.
http://www.softimage.jp/xsi_net/xsi_script/xsi_net/animation/constraints/details/add_null_to_point.htm (http://www.softimage.jp/xsi_net/xsi_script/xsi_net/animation/constraints/details/add_null_to_point.htm)