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. > :: Infografia y diseño grafico. > Script
Foro3D Galeria Privada Video3D Blueprints Software Blog3DPoder Buscar Empleo Donaciones


Noticias, Anuncios y Publicidad

Respuesta
 
Herramientas
Antiguo 04 jun 2008   #1
Cesar Saez
just another monkey
 
Avatar de Cesar Saez
 
Fecha de Ingreso: marzo-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 2,797
Contactar con Cesar Saez a través de MSN
3dsmax Reactor controllers?

Hola, estoy tratando de conectar mediante reactor controller una serie de morph a sus controladores, llevo una tarde peleandome con la documentación pero no hay forma de que el index de cada estado coincida con el orden de creación (tal como menciona la documentación) y por ende se me hace muy difícil/imposible setear los valores, alguien me podría dar una mano? pego un ejemplo muy simple para ejemplificar la clase de problemas con los que me encuentro.

Cita:
myMesh = $sphere --objeto con el morpher
myMorpher = myMesh.Modifiers[1] --modificador morpher
myController = $Circle01 --controlador que manejará los morph

myReactor1 = myMorpher[1].controller = float_reactor () --asigno controlador reaction al primer morph
reactTo myReactor1 myController.pos.controller.X_Position.controller --setteo que reaccione al movimiento en X de mi controlador

setReactionName myReactor1 1 "Primer estado" --renombro el primer estado
setReactionValue myReactor1 1 (0.0) --defino un valor para el master
setReactionState myReactor1 1 (0.0) --defino un valor para el esclavo en este estado

createReaction myReactor1 --creo un segundo estado
setReactionName myReactor1 2 "Segundo estado"
setReactionValue myReactor1 2 (5.0)
setReactionState myReactor1 2 (0.0)

createReaction myReactor1 --creo un tercer estado
setReactionName myReactor1 3 "Tercer estado"
setReactionValue myReactor1 3 (-5.0)
setReactionState myReactor1 3 (100.0)
Hasta ahí en teoría debería funcionar peeeeero resulta que los indices no coinciden con el orden de creación y pareciera que los asigna aleatoriamente ( ), el resultado al ejecutar el script es el siguiente (resultado que también varía aleatoriamente).



Alguien sabe que estoy haciendo mal? hay alguna forma de saber el índice del último estado creado?

Gracias
Miniatura de Adjuntos
Pulsar la imagen para la versión amplia
Nombre:  hace_lo_que_quiere.jpg
Vistas: 106
Tamaño:  51.0 KB  
__________________
Blog::Website
____________________
"Debes practicar hasta que lo dificil resulte fácil, luego practica hasta que lo fácil resulte hermoso"
Stephen Covey

Última edición por Cesar Saez fecha: 04 jun 2008 a las 09:14.
esta ahora conectado.   Responder Con Cita
Enlaces patrocinados
Antiguo 04 jun 2008   #2
ikerCLoN
8======D
 
Fecha de Ingreso: abril-2002
Ubicación: Granada
Mensajes: 13,373
Predeterminado Re: Reactor controllers?

Yo te recomendaría que pasaras de los 'reactor controllers' y directamente usaras expresiones para 'atar' todos los 'morphs' a sus controles.

Luego en casa, de todos modos, le echo un vistazo más en profundidad
__________________
-=: mi blog de desarrollo :=----- last update 10/07/08
ikerCLoN is offline   Responder Con Cita
Antiguo 04 jun 2008   #3
Cesar Saez
just another monkey
 
Avatar de Cesar Saez
 
Fecha de Ingreso: marzo-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 2,797
Contactar con Cesar Saez a través de MSN
Predeterminado Re: Reactor controllers?

Gracias Iker, tenía ganas de hacerlo con reaction controllers ya que me parece que son bastante más rápidos de evaluar pero pareciera que no soy el único que tiene esta clase de problemas
CGTalk - Scripted reactions Woe's

Es una lástima que no funcionen tan bien a la hora de scriptarlos, por ahora tendré que dejar standby el script y terminar de hacer las cosas a mano... no puede ser que maxscript tenga tantos agujeros...
__________________
Blog::Website
____________________
"Debes practicar hasta que lo dificil resulte fácil, luego practica hasta que lo fácil resulte hermoso"
Stephen Covey
esta ahora conectado.   Responder Con Cita
Antiguo 04 jun 2008   #4
phoelix
Senior Member
 
Avatar de phoelix
 
Fecha de Ingreso: mayo-2005
Ubicación: Bogotá, Colombia
Mensajes: 236
Contactar con phoelix a través de MSN
Predeterminado Re: Reactor controllers?

Hola Cesar,

El problema recide en que el indice de los estados no esta en el mismo orden en que fueron creados como dice en la documentación.

El orden de los indices de los estados depende del valor del master en cada estado, algo que obviamente parece ser un error de programacion por parte de los desarrolladores de max.

Afortunadamente hay una solución y es tener eso en cuenta a la hora de asignar los estados. En tu script parecia que asignara los valores aleatoriamente, ya que inicialmente el valor del master en la creación de una reacción adquiere un valor por default (que es igual al valor del controlador master en el momento de su asignacion en el reactor controller), al tener varios el mismo valor inicialmente, tendrian el mismo indice, y max asignaria los parametros aleatoriamente.

Yo lo que haria es crear los estados según un orden definido por el valor del master en los estados, pero antes de asignar este master al controlador de reacción cambiar su valor al mayor valor que pueda tener en los estados. De esta forma si se hace por este orden, el estado que se vaya asignando siempre va a tener un valor menor al siguiente, mayor al anterior y por lo tanto un orden equivalente a su creación.

Que rollo mas feo, pero ni modos, muchas veces hay que conformarse con cogerle la mañita a este max.

aqui hago la modificación:
Código:
myMesh = $sphere --objeto con el morpher
myMorpher = myMesh.Modifiers[1] --modificador morpher
myController = $Circle01 --controlador que manejará los morph


myController.pos.controller.X_Position=5 --maximo valor para el master


myReactor1 = myMorpher[1].controller = float_reactor () --asigno controlador reaction al primer morph
reactTo myReactor1 myController.pos.controller.X_Position.controller --setteo que reaccione al movimiento en X de mi controlador

setReactionName myReactor1 1 "Primer estado" --renombro el primer estado
setReactionValue myReactor1 1 (-5) --defino un valor para el master
setReactionState myReactor1 1 (0) --defino un valor para el esclavo en este estado

createReaction myReactor1 --creo un segundo estado
setReactionName myReactor1 2 "Segundo estado"
setReactionValue myReactor1 2 (0)
setReactionState myReactor1 2 (0)

createReaction myReactor1 --creo un tercer estado
setReactionName myReactor1 3 "Tercer estado"
setReactionValue myReactor1 3 (5)
setReactionState myReactor1 3 (100)
__________________
www.immersionsoftware.com

Última edición por phoelix fecha: 04 jun 2008 a las 20:41.
phoelix is offline   Responder Con Cita
Antiguo 04 jun 2008   #5
Cesar Saez
just another monkey
 
Avatar de Cesar Saez
 
Fecha de Ingreso: marzo-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 2,797
Contactar con Cesar Saez a través de MSN
Thumbs up Re: Reactor controllers?

Muchísimas gracias phoelix, vaya poder de deducción!!! con tu modificación/lógica funciona perfecto

Como sufro con maxscript...
__________________
Blog::Website
____________________
"Debes practicar hasta que lo dificil resulte fácil, luego practica hasta que lo fácil resulte hermoso"
Stephen Covey
esta ahora conectado.   Responder Con Cita
Antiguo 05 jun 2008   #6
phoelix
Senior Member
 
Avatar de phoelix
 
Fecha de Ingreso: mayo-2005
Ubicación: Bogotá, Colombia
Mensajes: 236
Contactar con phoelix a través de MSN
Predeterminado Re: Reactor controllers?

Vale Cesar, aqui estamos para servir
__________________
www.immersionsoftware.com
phoelix is offline   Responder Con Cita
Respuesta

Etiquetas Identificativas
3dsmax, reactor manager, scripting


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

google adsense



La franja horaria es GMT. Ahora son las 05:40.


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.
Song Lyrics | Online Loans | Free Ringtones | Loans | Loans
Content Relevant URLs by vBSEO 3.2.0