Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 al 10 de 13
  1. #1
    pythonized...
    Fecha de ingreso
    Mar 2004
    Mensajes
    3,762
    Gracias (Dadas)
    73
    Gracias (Recibidas)
    188

    Question Consulta maxscript: randomizer?

    Hola a todos, estoy con un problema en 3dsmax que me da la impresión que debe ser fácil de resolver con Maxscript, como yo ni idea dejo la consulta para ver si alguien me puede orientar o por último decirme si es muy complejo de hacer.

    El tema es el siguiente, me gustaría asignar transformaciones (rotación y escalado es lo que me apura en este momento) en un eje determinado de forma aleatoria a un grupo de objetos seleccionados, sería ideal poder darle un rango y que max se encargue de randomizar el valor que le asigna a cada elemento en su respectivo eje.

    No sé cómo se hace en 3dsmax (quizás existe una herramienta ya diseñada para ello y no es necesario maxscript? ni idea) pero me imagino que no debería ser tan complicado basándome en la forma en que se puede randomizar en XSI (donde basta con escribir directamente en la coordenada r(a;b) donde a y b son los rangos), si llegara a ser algo muy avanzado no hay problema y me pongo con la faena a mano que tampoco es que sean tantos elementos esta vez.

    De antemano muchas gracias.

  2. #2
    pythonized...
    Fecha de ingreso
    Mar 2004
    Mensajes
    3,762
    Gracias (Dadas)
    73
    Gracias (Recibidas)
    188

    Lightbulb Consulta maxscript: randomizer?

    Nada, que encontré justo lo que necesitaba ya hecho (de hecho, mejor de lo que esperaba), gracias de todos modos. http://www.pxfactory.eu/scripts/rand...andomizer.html. Saludos.
    debo buscar más antes de preguntar, debo buscar más antes de preguntar, debo buscar más antes de preguntar.

  3. #3
    El cabreador
    Fecha de ingreso
    Oct 2002
    Mensajes
    8,779
    Gracias (Dadas)
    1589
    Gracias (Recibidas)
    1328

    Consulta maxscript: randomizer?

    No cersar está bien, sobre todo porque cuando encontraste la respuesta la publicaste, yo de pardillo probaría con un controlador de ruido, se lo metería en escala y rotación, y después cuando tenga lo que me guste le haría un snapshot al objeto, pero si ya hay un script hecho genial. Saludos.

  4. #4
    reBorn
    Fecha de ingreso
    Dec 2004
    Mensajes
    3,402
    Gracias (Dadas)
    129
    Gracias (Recibidas)
    84

    Consulta maxscript: randomizer?

    Por ejemplo: Random 1 100. En Maxscript te devolverá un valor aleatorio entre 1 y 100, esto lo puedes aplicar a cualquier cosa, incluido orientación y posiciones.
    PromineoStudios

    Sin riesgos en la lucha, no hay gloria en la victoria

  5. #5
    pythonized...
    Fecha de ingreso
    Mar 2004
    Mensajes
    3,762
    Gracias (Dadas)
    73
    Gracias (Recibidas)
    188

    Consulta maxscript: randomizer?

    Hola, gracias a todos por las sugerencias. Fiz, lo del ruido también lo pensé, pero el problema es que ya tengo los objetos en su posición (que es bastante rígida, tiene que ser esa) por lo que el snapshot no me funcionaría o no supe cómo hacerlo para dejar una copia en un lugar tan determinado de la animación. Gracias Promineo, eso es más o menos lo que buscaba, ahora tendría que hacer un for para que repita la operación en cada objeto seleccionado y debería funcionar ¿no? Para salir del paso seguramente usaré el script, pero es una buena excusa para meterme un poco con Maxscript. Gracias.

  6. #6
    H = E + L
    Fecha de ingreso
    Mar 2004
    Mensajes
    870
    Gracias (Dadas)
    0
    Gracias (Recibidas)
    10

    Consulta maxscript: randomizer?

    Ahí van unas funciones que, aplican distintas transformaciones aleatoriamente:
    Código:
    Fn randomtranslation deltax deltay deltaz = (t- Recorremos todos los objetos seleccionados tfor obj in selection do (t - El desplazamiento inicial será de 0.0 local dispx = 0.0, dispy = 0.0, dispz = 0.0 t - Determinamos aleatoriamente el desplazamiento para cada eje if deltax.= 0.0 do dispx = random -deltax deltax if deltay.= 0.0 do dispy = random -deltay deltay if deltaz.= 0.0 do dispz = random -deltaz deltaz t - Aplicamos el desplazamiento move obj [dispx, dispy, dispz] t)).
    Fn randomrotation deltax deltay deltaz = (t- Recorremos todos los objetos seleccionados tfor obj in selection do (t - El ángulo de rotación inicial será de 0.0 local anglex = 0.0, angley = 0.0, anglez = 0.0 t - Determinamos aleatoriamente el ángulo para cada eje if deltax.= 0.0 do anglex = random -deltax deltax if deltay.= 0.0 do angley = random -deltay deltay if deltaz.= 0.0 do anglez = random -deltaz deltaz t - Aplicamos la rotación rotate obj (eulerangles anglex angley anglez) t)).
    Fn randomscale deltax deltay deltaz = (t- Recorremos todos los objetos seleccionados tfor obj in selection do (t - La escala inicial será 1.0 local scalex = 1.0, scaley = 1.0, scalez = 1.0 t - Determinamos aleatoriamente el factor de escala if deltax.= 1.0 do scalex = random -deltax deltax if deltay.= 1.0 do scaley = random -deltay deltay if deltaz.= 1.0 do scalez = random -deltaz deltaz t - Aplicamos la escala scale obj [1.0 + scalex, 1.0 + scaley, 1.0 + scalez] t).
    )
    Ejemplo de uso:
    Código:
    - Aplicamos una rotación aleatoria de 10º en x y z.
    Randomrotation 10.0 0.0 10.0.
    Aplicamos una traslación aleatoria de 2.0 en y, y 3.0 en z.
    Randomtranslation 0.0 2.0 3.0.
    Aplicamos una escala aleatoria en x, y, y z.
    Randomscale 0.1 0.2 0.3
    Evidentemente quedaría mejor con una UI, pero es totalmente funcional. Saludos.

    Edito: he modificado una cosa en la función randomscale.
    Última edición por HalfVector; 12-10-2006 a las 17:25

  7. #7
    pythonized...
    Fecha de ingreso
    Mar 2004
    Mensajes
    3,762
    Gracias (Dadas)
    73
    Gracias (Recibidas)
    188

    Consulta maxscript: randomizer?

    Vaya, gracias half.

  8. #8
    Usuario a moderar
    Fecha de ingreso
    Apr 2009
    Mensajes
    8
    Gracias (Dadas)
    1
    Gracias (Recibidas)
    0

    Consulta maxscript: randomizer?

    Hola, necesito saber cómo se hace una rotación aleatoria de un cubo, gracias.

  9. #9
    pythonized...
    Fecha de ingreso
    Mar 2004
    Mensajes
    3,762
    Gracias (Dadas)
    73
    Gracias (Recibidas)
    188

    Consulta maxscript: randomizer?

    Lo tienes en la respuesta de Halfvector.
    Código:
    rotate $ (eulerangles (random 0 360) (random 0 360) (random 0 360))

  10. #10
    Usuario a moderar
    Fecha de ingreso
    Apr 2009
    Mensajes
    8
    Gracias (Dadas)
    1
    Gracias (Recibidas)
    0

    Consulta maxscript: randomizer?

    Gracias por responder, no sé cómo se aplica el script para rotar el objeto en random, me podrías explicar, gracias.

Página 1 de 2 12 ÚltimoÚltimo

Temas similares

  1. Blender Addon Oscurart randomize vértices
    Por oscurart en el foro Plugins
    Respuestas: 0
    Último mensaje: 08-08-2011, 01:08
  2. Maxscript
    Por Marc3d en el foro Videojuegos
    Respuestas: 3
    Último mensaje: 11-08-2010, 13:14
  3. Clone randomize para 3ds Max
    Por Kuatrox en el foro Programación y Scripts
    Respuestas: 3
    Último mensaje: 28-05-2007, 18:57
  4. Maxscript
    Por juako en el foro Peticiones y Búsquedas
    Respuestas: 5
    Último mensaje: 08-12-2006, 01:17
  5. Maxscript
    Por grio en el foro Animación y Rigging
    Respuestas: 3
    Último mensaje: 15-03-2006, 23:28