Foros 3DPoder.  

Bienvenido a Foros 3DPoder..

Usted esta viendo este foro como invitado, no esta registrado todavía, lo que limita su visión del foro. Si quiere unirse gratis a la mayor comunidad del diseño gráfico de habla hispana, tener acceso a publicar y responder mensajes, tener mensajes privados con otros miembros(PM), responder encuestas, publicar sus imágenes para que las vea el resto del mundo, tener acceso a los video_tutoriales, y muchas cosas más, no lo dude. Registrarse es rápido, simple y gratuito, agregate hoy a la mayor comunidad 3D de habla hispana! !

Si usted tiene algún problema con su registro, por favor , díganoslo aquí. 3d




Retroceder   Foros 3DPoder. > :: Técnicas 3d > Animación y Rigging
Foro3D Galeria Privada Video3D Blueprints Software Blog3DPoder Buscar Empleo Donaciones


Noticias, Anuncios y Publicidad

Respuesta
 
Herramientas
Antiguo 07 sep 2005   #1
promineo
reBorn
 
Avatar de promineo
 
Fecha de Ingreso: diciembre-2004
Ubicación: Tenerife
Mensajes: 2,842
Predeterminado Fisica, Matemáticas y maxscript.

Bueno, tengo una duda muy garnde llevo todo el santo dia intentando hacerme un pequeño script sencillito, tengo la manera d ehacerlo peor no la manera de aplicarlo a maxscript.

Lo que quiero conseguir no es facil de explicar, tengo dos objetos situados a diferentes alturas, quiero que el más alto se mueva hacia arriba cierta cantidad el otro le acompañe, pero que cuando baje no lo haga.

Vereis tengo dos objetos(obj1 y obj2) en max, obj2 está colocado en z=0 por ejemplo y obj1 en z=90, luego tengo una variable que es la distancia entre ellos inicial es decir v=90,luego tengo un dummy colocado en el 0,0,0, y dos variables mas dist1 que es la distancia del obj1 a el dummy y luego tengo dist2 que es la distancia del obj2 al dummy.

mejor os dejo un esquema echo en papel y a ver si alguien me puede echar una mano con maxscript.

Iker, larry Help!!
Miniatura de Adjuntos
Pulsar la imagen para la versión amplia
Nombre:  formula.jpg
Vistas: 228
Tamaño:  138.1 KB  
__________________
PromineoStudios
Cocoe

Sin riesgos en la lucha, no hay gloria en la victoria
promineo is offline   Responder Con Cita
Enlaces patrocinados
Antiguo 07 sep 2005   #2
exavi
como siempre...
 
Avatar de exavi
 
Fecha de Ingreso: julio-2005
Ubicación: vila-real
Mensajes: 359
Lightbulb Re: Fisica, Matemáticas y maxscript.

si lo que quieres lo he entendido bien solo tienes que hacer que al moverlo hacia arriba (alejarse del dummy, (la distancia al mismo será mayor)) obj1 y obj2 se muevan y obj2 conserve la distancia ocn obj1, y que al bajar obj1 sólo baje obj1, y obj2 no se mueva...

yo intentaría plantearlo de la forma que he dicho yo, al alejarse del dummy hacer que puedan moverse y que se guarde esta distancia (sólo se moveran los dos cuando la distancia al dummy aumente) y que en el momento en que disminuya la distancia (cuando lo bajes) este movimiento sólo afecte al obj1 y no al obj2 y que este se quede donde estaba...

no se la forma de hacerlo con maxscript pq no he probado a hacer nada nunca yo solo se programar en C, basic y algo de python, no he probado en maxscript pq supongo que será orientado a objetos y de eso no he dado nada por el momento así que sólo puedo decir la forma en que lo plantearía yo...

espero que te sirva de algo y suerte ;P.
exavi is offline   Responder Con Cita
Antiguo 07 sep 2005   #3
promineo
reBorn
 
Avatar de promineo
 
Fecha de Ingreso: diciembre-2004
Ubicación: Tenerife
Mensajes: 2,842
Predeterminado Re: Fisica, Matemáticas y maxscript.

exavi muchas gracias, pero si no te he entendido mal, me parece que lo tenemos planteado de la misma manera, para eso he puesto el dummy. Asi se la diferencia de distancia con este.

Solo me queda aplicarlo a Maxscript, o quiza sea más facil utilizar un float expression.
__________________
PromineoStudios
Cocoe

Sin riesgos en la lucha, no hay gloria en la victoria
promineo is offline   Responder Con Cita
Antiguo 07 sep 2005   #4
exavi
como siempre...
 
Avatar de exavi
 
Fecha de Ingreso: julio-2005
Ubicación: vila-real
Mensajes: 359
Predeterminado Re: Fisica, Matemáticas y maxscript.

Cita:
Escritos por promineo
Solo me queda aplicarlo a Maxscript, o quiza sea más facil utilizar un float expression.
yo diría que eso debe ser muuucho mas facil...
exavi is offline   Responder Con Cita
Antiguo 07 sep 2005   #5
Stewie
Método Polaco
 
Avatar de Stewie
 
Fecha de Ingreso: abril-2004
Mensajes: 3,174
Predeterminado Re: Fisica, Matemáticas y maxscript.

Yo en Maya hice una vez algo parecido, pero lo planteé de otra manera (te lo cuento por si te sirve... estoy recién formateado y no lo tengo instalado, mñn en el curro lo hago otra vez y te posteo el código).
Dos objetos, Cubo1 y Cubo2, queremos que cuando suba Cubo1 , Cubo2 suba con él, y cuando baje Cubo1, no afecte a Cubo2.
- $vertAnterior: almacenando el valor de posición en Y de Cubo1 en el frame Anterior al actual.
- $vertActual: variable con el valor en Y actual de Cubo1.

- Parent Constraint en el eje Y de Cubo2 a Cubo1. Aquí hacemos una variable $vertConst , que sea el Weight de la constraint (con 0 Cubo2 queda libre, y con 1 queda atado a Cubo1)

if ($vertAct > $vertAnt) {
$vertConst = 1;
}
else
{
$vertConst = 0;
}

Esa es la idea, fijo que la expresión tiene algún error porque hace ya algo que no toco MEL, pero la idea se pilla. Son distintas formas de hacerlo... yo veo la mia más "sencilla" porque no hay que andar metiendo distancias, seguro que se puede hacer de muchas otras también... ahí está la gracia del scripting jeje

Saludos!
Stewie is offline   Responder Con Cita
Antiguo 07 sep 2005   #6
promineo
reBorn
 
Avatar de promineo
 
Fecha de Ingreso: diciembre-2004
Ubicación: Tenerife
Mensajes: 2,842
Predeterminado Re: Fisica, Matemáticas y maxscript.

vale parece mucho mas sencillo, intentare pasarlo a maxscript y te cuento...

gracias stewie!!
__________________
PromineoStudios
Cocoe

Sin riesgos en la lucha, no hay gloria en la victoria
promineo is offline   Responder Con Cita
Antiguo 07 sep 2005   #7
Stewie
Método Polaco
 
Avatar de Stewie
 
Fecha de Ingreso: abril-2004
Mensajes: 3,174
Predeterminado Re: Fisica, Matemáticas y maxscript.

Vale, olvídate de la solución anterior porque obviamente está mal (en el momento en que el constraint valga 0, el cubo volverá a su posición inicial, no mantendrá la que tiene, vamos que "salta" al orígen cuando Weight = 0).

Otra solución, hacer que cuando Cubo1 sube, la distancia que sube del frame anterior al frame actual, se le sume al Cubo2, y cuando Cubo1 baja, no pase nada. La pega: que no ves el resultado al mover el objeto, sólo al darle a Play y al mover la barra de tiempos, y luego no puedes ponerlo a "0" porque está controlado por la expresión. Voy a ver si encuentro alguna manera, que tiene que ser sencillo pero estoy algo oxidado... pero funcionar funciona!

Ahí va el código:

// variable con el nº de frame anterior al actual
$timAnt = (`currentTime -q` -1);

// posición vertical en el frame anterior de Cubo1
$posAnt = `getAttr -t $timAnt Cubo1.ty`;

// posición actual de Cubo1
$posAct = `getAttr Cubo1.ty`;

// variación de posición del frame anterior al actual
$varPos = $posAct - $posAnt;

// expresión, si la posición vertical actual de Cubo1 es mayor que la posición anterior,
// sumamos a la posición Y de Cubo2, la variación de posición de Cubo1

if ($posAct > $posAnt)
{
Cubo2.translateY = Cubo2.translateY + $varPos;
}



Saludos!
Stewie is offline   Responder Con Cita
Antiguo 07 sep 2005   #8
promineo
reBorn
 
Avatar de promineo
 
Fecha de Ingreso: diciembre-2004
Ubicación: Tenerife
Mensajes: 2,842
Predeterminado Re: Fisica, Matemáticas y maxscript.

ey stewie muchas gracias por molestarte, la verdad es que estoy investigando bastante, alguien me dijo que se puede hacer, pero no como... de todas maneras me cojo tu script. jejeje

muchas gracias
__________________
PromineoStudios
Cocoe

Sin riesgos en la lucha, no hay gloria en la victoria
promineo is offline   Responder Con Cita
Antiguo 07 sep 2005   #9
Rayado
Miembro
 
Fecha de Ingreso: noviembre-2003
Ubicación: 3d
Mensajes: 72
Predeterminado Re: Fisica, Matemáticas y maxscript.

stewie haber sinos recomendais algunos links. :-)
Rayado is offline   Responder Con Cita
Antiguo 08 sep 2005   #10
larryvm
Senior Member
 
Avatar de larryvm
 
Fecha de Ingreso: octubre-2004
Ubicación: salamanca
Mensajes: 690
Predeterminado Re: Fisica, Matemáticas y maxscript.

tambien lo puedes hacer mirando el valor de la curva de animacion en Y en el fotograma anterior y comparandolo con el valor actual, no se cual sera la instruccion en maxscript pero fijo que la tiene.

stewie, mejor que almacenar los valores en variables te recomiendo que crees un atributo nuevo en el transform del objeto y lo vayas almacenando alli, te da menos problemas. habria otros modos de hacerlo, como crear una curva de animacion nueva e ir sumando valores que creo que podria dar mejores resultados ya que una expresion dependiente de valores temporales puede engañar muchas veces.
__________________

Pipeline developer
enne entertainment
larryvm is offline   Responder Con Cita
Antiguo 08 sep 2005   #11
Stewie
Método Polaco
 
Avatar de Stewie
 
Fecha de Ingreso: abril-2004
Mensajes: 3,174
Predeterminado Re: Fisica, Matemáticas y maxscript.

Gracias por los consejos larry . Soy algo "vago" y si es para hacer alguna prueba rápida suelo utilizar variables, si es para algo más serio hago atributos, si no con 4 cosas te vuelves loco.

A ver si luego tengo un rato y busco algún link sobre maxscript, aunque seguro que Promineo conoce bastantes más, que yo soy mayero jeje
Stewie is offline   Responder Con Cita
Antiguo 08 sep 2005   #12
Fiz3d
El cabreador
 
Fecha de Ingreso: octubre-2002
Mensajes: 4,387
Predeterminado Re: Fisica, Matemáticas y maxscript.

A mi se me ha ocurrido esto, soy un inexperto en esto del maxsript pero bueno.

if a < $box02.pos.z do ($box01.pos.z =$box02.pos.z)
a = $box01.pos.z

Creo que no hace falta explicarlo, puesto que es simple con ganas.

Es una tonteria, solo funciona como script como es logico da fallos si lo pones como expresión, sería cuestión de adaptarlo, y como no, si lo pones como wire te casca por todos los lados, ahora no tengo tiempo pero esta noche si eso le echaré un ojo a ver que se puede hacer...

Saluditos..
P.D mira que es vicioso esto de los scripts eh?¿a ver si me pongo en serio con ellos.
__________________

Fiz3d is offline   Responder Con Cita
Antiguo 08 sep 2005   #13
promineo
reBorn
 
Avatar de promineo
 
Fecha de Ingreso: diciembre-2004
Ubicación: Tenerife
Mensajes: 2,842
Predeterminado Re: Fisica, Matemáticas y maxscript.

Gracias, Gracias, seguire probando cosillas a ver si doy con la solución, Fiz3d, esto se ajusta más a lo que buscaba .


Gracias otra vez.
__________________
PromineoStudios
Cocoe

Sin riesgos en la lucha, no hay gloria en la victoria
promineo is offline   Responder Con Cita
Antiguo 25 dic 2005   #14
HalfVector
H = E + L
 
Fecha de Ingreso: marzo-2004
Ubicación: Entre dos vectores
Mensajes: 877
Predeterminado Re: Fisica, Matemáticas y maxscript.

Ya sé que han pasado casi 4 meses desde el último mensaje de este hilo pero estaba revisando mensajes referentes a MAXScript y éste me ha llamado la atención. Así que he intentado hacer algo similar a lo que se pedía.

En concreto he creado una utilidad que permite especificar dos nodos. Uno será el nodo "maestro" y el otro el "esclavo". Entonces lo que hace el script es crear un "script controller" para la posición del nodo "esclavo", de forma que si el nodo "maestro" sube, el esclavo le seguirá pasada una distancia máxima (que también se puede especificar en el cuadro de diálogo de la utilidad), mientras que si el nodo "maestro" baja, el "esclavo" no lo hará salvo que el nodo "maestro" llegue a su altura, en cuyo caso ambos nodos descenderán conjuntamente.

Si os fijáis, también se crea un dummy que "envuelve" al nodo "esclavo". Esto lo he hecho así porque necesitaba una forma de recoger la posición del nodo "esclavo", pero como dentro del script del controlador no se puede hacer referencia al nodo que tiene aplicado dicho controlador, pues me he creado el dummy. Por si os estáis preguntando por qué no he "linkado" el dummy al nodo "esclavo", la razón es que en dicho caso, el "script controller" consideraría al dummy como si fuera el nodo mismo ya que dependen el uno del otro. Lo mismo ocurre si al dummy se le asigna un "Position Constraint" apuntando al nodo "esclavo".

En fin, he adjuntado un video para que veáis el funcionamiento. Es bastante simple. El código también va incluído. Espero que lo encontréis, al menos, interesante. A mí me ha servido para aprender cosas nuevas.

Saludos.

ACTUALIZACIÓN: he actualizado una cosilla del código...
Descargar Directa de Archivos ...
Tipo de Archivo: rar ScriptControllerCreator.rar (388.4 KB, 63 visitas)

Última edición por HalfVector fecha: 25 dic 2005 a las 01:13.
HalfVector is offline   Responder Con Cita
Antiguo 25 dic 2005   #15
Bodhisattva
Senior Member
 
Avatar de Bodhisattva
 
Fecha de Ingreso: julio-2004
Mensajes: 362
Predeterminado Re: Fisica, Matemáticas y maxscript.

Bastante interesante el comportamiento...que bien se ve....muy buen trabajo..

Saludos.
__________________
""Todo lo que existe, no existe más que en dependencia de causas""
Bodhisattva is offline   Responder Con Cita
Respuesta


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

Normas de Publicación
Usted no puede publicar nuevos mensajes.
Usted no puede responder mensajes
Usted no puede publicar archivos adjuntos
Usted no puede editar sus mensajes

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are deshabilitado
Pingbacks are deshabilitado
Refbacks are deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
MAXScript 3dpoder 3DStudio Max 0 13 ago 2005 15:28
urbansimulations :: character studio - maxscript experto lrivero Ofertas de Empleo 0 16 ago 2004 12:16
fisica y rv dreamaker Hardware 2 18 jun 2004 11:09
Maxscript rummi Tutoriales, Libros y Manuales. 2 08 jun 2002 13:38
Maxscript rummi Infografía General 4 11 may 2002 08:28

google adsense



La franja horaria es GMT. Ahora son las 06:42.


Powered by: vBulletin, para 3DPoder.com Versión 3.7.0 Beta 4
Derechos de Autor ©2000 - 2008, Jelsoft Enterprises Ltd.
3DPoder.com Foro3d.com © Al servicio de la infografia y el 3D desde 1997.
Loans | Web Hosting | Final Fantasy Wallpapers | Outsourcing | Remortgage
Content Relevant URLs by vBSEO 3.2.0