XSIforum.com

l_fcv( ctr_dist( <elem1> , <elem2> ) ) = ERROR

0 Usuarios y 1 Visitante están viendo este tema.

Quel

  • **
  • 223
  • Si la vida no te sonrrie, cuentale un buen chiste.
l_fcv( ctr_dist( <elem1> , <elem2> ) ) = ERROR
« en: 26 Septiembre 2011, 09:39:36 »
Seguro que mas de uno se ha encontrado a veces con el deseo/necesidad de hacer un enlazar el valor de una variable, con una curva comandada por la distancia entre otros 2 objetos. La expresión que pondríamos como ... l_fcv( ctr_dist( <elem1> , <elem2> ) ).
No parece una expresión tan complicada. Pero el XSI nunca me la acepta.

Sin embargo, si uso una variable de intermediario, después no me da ningún problema.
Por poner un ejemplo. Creo un Null y le pongo que en el Null.kine.local.posx = ctr_dist( <elem1> , <elem2> ). Después, en el objeto que inicialmente queria modificar, le enchufo un l_fcv( Null.kine.local.posx ). Y ahora si funciona.

Mi pregunta es ... :
¿ Existe alguna forma de lograr que eso funcione sin ese Null ejerciendo de mediador entre el l_fcv y el ctr_dist ?

No es que sea un problema existencial que no me permite seguir trabajando, pero pregunto por curiosidad. Porque si tienes que hacer esta chapuzada 100 veces en un rig, al final acabas con un ejército de nulls a un costado que resultan molestos y quedan "feos". Como poco profesionales.

Gracias.

Re:l_fcv( ctr_dist( <elem1> , <elem2> ) ) = ERROR
« Respuesta #1 en: 26 Septiembre 2011, 12:30:07 »
En la documentación está bastante claro, los linked parameters son una pseudo expresión que sirve para relacionar parámetros mediante una fcurve, un ctrl_dist() y/o cualquier expresión matemática no es un parámetro y lógicamente fallará.

Citar
Linked parameters provide you with a quick and easy way to create relationships between parameters without having to work out the mathematical expressions involved. They are especially useful with custom parameters, such as when you create a custom control panel with sliders to control a rig (see Custom and Proxy Parameters [Customization]).

Linked parameters are similar to expressions (in fact they create a special type of expression: l_fcv), but the value of driving parameter controls the linked parameter as dictated by a function curve rather than by a mathematical formula (see Editing Linked Parameter Fcurves).

While you usually only link one parameter to one driving parameter, you can link several parameters to the same driving parameter. You can also create multiple sets of “one-to-one” links at the same time. No matter how you create the links, an l_fcv expression is created for each linked parameter. As well, when a parameter is linked, its animation icon displays an “L” to indicate this state  .

eduardito

  • *****
  • 3064
  • hola holita
Re:l_fcv( ctr_dist( <elem1> , <elem2> ) ) = ERROR
« Respuesta #2 en: 26 Septiembre 2011, 18:04:15 »
En la documentación está bastante claro, los linked parameters son una pseudo expresión que sirve para relacionar parámetros mediante una fcurve, un ctrl_dist() y/o cualquier expresión matemática no es un parámetro y lógicamente fallará.


pues no estoy deacuerdo, un parametro es cualquier cosa desde una variable a una expresion matematica o lo que sea.
lo que pasa es que a lo mejor el sdk no permite eso.

Re:l_fcv( ctr_dist( <elem1> , <elem2> ) ) = ERROR
« Respuesta #3 en: 26 Septiembre 2011, 18:52:18 »
Pues no estoy de acuerdo...
Filosóficamente podría ser lo que quieras, pero en el contexto de Softimage hay que regirse a lo que él entiende por parámetro (que por supuesto viene perfectamente explicado en la documentación).

Me parece que no es algo discutible...

Citar
What is a Parameter?

Parameters (sometimes called properties) are the “atomic” elements of a property set whose values determine the behavior of something. For example, the posx parameter in Cone.kine.local.posx represents the local position in X of the cone object, whereas the viewvis parameter in Camera_Root.visibility.viewvis determines whether or not the camera root is hidden in the UI.

You can view and set parameter values through property editors in the UI. You can also get and set parameters through scripted or compiled code.

If you want to add your own parameters to an object you can use a CustomProperty object. For more information, see Custom Properties.

Re:l_fcv( ctr_dist( <elem1> , <elem2> ) ) = ERROR
« Respuesta #4 en: 26 Septiembre 2011, 20:12:38 »
Yo en lo de "atomic" ya me he perdido.

alanf

  • *****
  • 6026
  • Pipeline Developer @ Felix & Paul Studios
Re:l_fcv( ctr_dist( <elem1> , <elem2> ) ) = ERROR
« Respuesta #5 en: 30 Septiembre 2011, 04:28:20 »
Lo de "atomic" solo significa que no existen elementos mas basicos de una propiedad que sus parametros, tal como pone en Ingles ahi.