Página 1 de 3 123 ÚltimoÚltimo
Resultados 1 al 10 de 25

Tema: Disperser script for XSI

  1. #1
    Usuario completo
    Fecha de ingreso
    Nov 2002
    Mensajes
    252
    Gracias (Dadas)
    0
    Gracias (Recibidas)
    0

    Softimage Xsi Disperser script for xsi

    Hola, como no hay sección de scripting por ningún lado, asalte está sección. En el proceso de aprendizaje estoy trabajando sobre un script, dada una incertidumbre que surgió en el foro de modelado, que era colocar una copia de un objeto x sobre una malla, me puse a jugar con el código y ahí van saliendo cosas interesantes.

    Disperser 0.9.0.

    He tocado algunos puntos:
    1) un poco más rápido.
    2) añadido: cuadros de mensajes.
    3) añadido: color de wire de objetos dispersos.
    4) añadido: cuadro de propiedades, ahora se puede espesificar el nombre que se desea para los objetos a dispersar, el número de objetos a dispersar, y seleccionar si se desea clonar en lugar de duplicar solamente.

    Posdata: ya no es necesario tener un objeto llamado Cube solo pikar objeto a dispersar y el grid donde se dispersara.

    Trabajando sobre:
    1) randomize (posición, orientación, escalado).
    2) disperse by (edge-poly) (actualmente solo by points).

    He de destacar que estoy aprendiendo mientras lo hago por lo que el script no es perfecto, quisiera también sus feedback al respecto y que utilidades especificas se le podrían añadir. Saludos scripta2.

    Ver, actual 0.9.0.
    Archivos adjuntados Archivos adjuntados
    "Siempre sueña y apunta más alto de lo que
    sabes puedes hacer. No te preocupes por ser mejor que tus contemporáneos o predecesores.
    Trata de ser mejor que tú" William Faulkner

  2. #2
    tiruri....
    Fecha de ingreso
    Apr 2005
    Mensajes
    3,159
    Gracias (Dadas)
    2
    Gracias (Recibidas)
    12

    Disperser script for xsi

    Bien, gracias Nexen por abrir este hilo. Luego vengo y comoneto más, que voy con prisa, ta luego. Posdata: te lo estás trabajando de veras.
    En la vida se pueden hacer muchas cosas.
    Después ya no.

  3. #3
    BlenderAdicto
    Fecha de ingreso
    Dec 2004
    Mensajes
    14,487
    Gracias (Dadas)
    174
    Gracias (Recibidas)
    771

    Disperser script for xsi

    Esto va teniendo mejor pinta. Una feature que no tiene Blender y que siempre he echado en falta, es poder seleccionar varios objetos y que se repartan todos aleatoriamente en lugar de elegir uno solo.

  4. #4
    Destilado artesanalmente
    Fecha de ingreso
    Jul 2004
    Mensajes
    1,458
    Gracias (Dadas)
    0
    Gracias (Recibidas)
    2

    Disperser script for xsi

    Podrías mirarte la posibilidad de conectar un whight map a script, y en la Zonda donde este pintado (valor 1) cree una cantidad de nulls dependiendo del nuemero de copias especificadas. Me encanta la idea compañero, eres un crack.
    Pajaros en mi cabeza y cerveza en mi riñon, amo el arte...

    www.goldpiece.net

  5. #5
    tiruri....
    Fecha de ingreso
    Apr 2005
    Mensajes
    3,159
    Gracias (Dadas)
    2
    Gracias (Recibidas)
    12

    Disperser script for xsi

    Vale Nexen, ya lo he probado, un buen avance, hasta te diré que en mí escena tocha (ya tu sabes) ha funcionado (yuju (a medias)).
    1º- Me ha hecho la dispersión, pero fuera del Grid, en la otra punta de mi escena.
    2º- He descubierto que si hay más de 1 objeto a dispersar con el mismo nombre, pero numerado, es decir: objeto a dispersar = caja, otro objeto por ahí = caja23, al realizar la dispersión da errores referente a caja23, la usa para dispersar éstas y la dispersión de la original caja se montan encima.

    Eso es todo por ahora, voy a seguir probando.
    En la vida se pueden hacer muchas cosas.
    Después ya no.

  6. #6
    Usuario completo
    Fecha de ingreso
    Nov 2002
    Mensajes
    252
    Gracias (Dadas)
    0
    Gracias (Recibidas)
    0

    Softimage Xsi Disperser script for xsi ver 1-5-0

    Hola muchachos los pocos que os sigueis este topic. A ver os cuento un poco, en mí afán por aprender scripting en XSI, de primera mano con vbs, me he decepcionado y con toda la razón, quizás para aprender el usar vbs tiene su gracia, pero luego cuando exigues velocidad y acceso más profundo se queda muy corto, por lo que el script disperser se quedará en esta versión 1.5.0, para poder olvidar el lento vbs y meterme de lleno en lo que es el desarrollo con C++, y definir de una ves dll, y empaquetar addons.

    Ahora que hay de nuevo en disperser 1.5.0? Bien, os cuento:
    * primero lo malo que fue reparado el bug de generación de objetos solo en el centro del mundo, escena, etc fue fixeado ahora lo genera en las coordenadas globales de cualquier mapa de dispersión.

    Los features:
    *- Ahora podemos pikar más de un objeto a dispersar previa espesificación en la cantidad de objetos que queremos aleatoriamente, 1, 5, 10 o x objetos. (gracias a él comentario de Caronte).
    *- El mapa de dispersión como lo llamo donde se colocaran los objetos, puede ser cualquier objeto polygonal.
    *- Diferentes opciones de dispersión.
    *- Randomize de rotaciones y escalado.
    *- Randomize de wire color.
    *- Barra de progreso de los procesos realizados.

    El menú de opciones presenta 4 tabs que son:
    Dispers, randomize rotation, randomize scale, wire color.

    Dispers:
    *- Disper name -> nombre que se desea para los objetos dispersos.
    *- Disper number -> cantidad de objetos que se desea (actualmente está limitado al número de points que contiene la malla solamente).
    *- Disperse by -> disperse by ofrece cuatro caminos de dispersión los cuales son:
    Points: por cada punto de la malla.

    Edges: por cada Edge de la malla.

    Edges by curve system: un medio que me pensé alterno que es a través de la creación de nulls dispersos en una curva creada a partir de todos los Edges de la malla y luego cada objeto es aplicado un constraint de cada null para ubicarlos (la curva y los nulls son eliminados al terminar el proceso).

    Polygons: por cada polígono de la malla.
    *-method -> ofrece dos métodos de dispersión por duplicado y por clonado.
    *-type -> by cluster significa la creación de un clúster ya sea por punto Edge o polígono, y simple (pos) por simple valores de su ubicación en el espacio (solo aplicable para points).
    *-constrains -> permite definir constrains de posición y orientación del objeto padre.
    *- Subdivisión -> (solo aplicable para disperse by (Edges by curve system)), esto significa que si utilizamos esta forma de dispersión sobre una malla que está suavizada la creación de la curva se adactara al suavizado de la malla y de esta forma la ubicación es más precisa.

    Randomize rotation:
    *-rotation by cluster -> permite añadir un valor de roll a los clusters por un valor aleatorio generado de una entrada mínima y máxima.
    *-rotation by simple (pos-root) -> permite añadir valores de rotación mínimos y máximos para cada eje, el valor final se genera de un random entre el mínimo y el máximo escojido.

    Randomize scale:
    *- Scale -> aquí definimos igualmente el random para el escalado de cada uno de los objetos a dispersar, por defecto este siempre es uno por lo que si el objeto a dispersar ha sido escalado a un valor negativo y mayor debe ser colocado este valor dentro del valor mínimo o máximo del scale para tomar esa referencia, si no se desea randomizado en el escalado simplemente se pone en ambos campos el mismo valor actual de escalado del objeto.
    Wire color.
    *- Randomize wire colors -> simplemente si así se desea genera un color aleatorio para el wire de cada objeto disperso.

    Bueno a priori esto es lo que he avanzado, el script no está libre de fallos así que, cualquier bug dejenmelo saber, Rasheck el weight map queda para la versión de C++ quiero hacerlo en forma de plugin con muchas otras opciones he ideas que se me han venido mientras lo hacia.

    La idea era aprender y compartir con ustedes y eso lo he logrado, he de admitir que el script se pone lento dado que ya maneja muchas opciones y crea bastante cosas en el proceso, pero que tanto se le puede pedir a un lenguaje de script? Por eso voy a por C++.

    Aquí os dejo una imagen con unas muestras.
    Miniaturas adjuntas Miniaturas adjuntas Clic en la imagen para ver su versión completa. 
Nombre: muestra.GIF 
Visitas: 108 
Tamaño: 33.5 KB 
ID: 14014  
    Archivos adjuntados Archivos adjuntados
    Última edición por nexen; 06-06-2005 a las 07:17
    "Siempre sueña y apunta más alto de lo que
    sabes puedes hacer. No te preocupes por ser mejor que tus contemporáneos o predecesores.
    Trata de ser mejor que tú" William Faulkner

  7. #7
    tiruri....
    Fecha de ingreso
    Apr 2005
    Mensajes
    3,159
    Gracias (Dadas)
    2
    Gracias (Recibidas)
    12

    Disperser script for xsi

    Te lo has currado Nexen, de veras, me funciona y es una maravilla. Como tú dices algún que otro fallo puede haber, me he tropezado con alguno, pero hasta que sepa explicarlo, creo que más bien era por no saber usar el menú de opciones que creaste, ahora ya casi lo domino y me está funcionando del todo.

    Vas a hacerlo en C++? Vas a hacer addons tío, estas no paras ¿eh? Bueno, tienes mi apoyo en lo que quieras, si quieres usarme de tester, adelante.
    En la vida se pueden hacer muchas cosas.
    Después ya no.

  8. #8
    Tresmiltornillero
    Fecha de ingreso
    Oct 2004
    Mensajes
    10,974
    Gracias (Dadas)
    26
    Gracias (Recibidas)
    47

    Disperser script for xsi

    Vaya. Que tío. Nexen. Suerte con el C++, vale la pena, no lo lamentaras.

  9. #9
    BlenderAdicto
    Fecha de ingreso
    Dec 2004
    Mensajes
    14,487
    Gracias (Dadas)
    174
    Gracias (Recibidas)
    771

    Disperser script for xsi

    Muy bueno, muchas gracias y suerte con el C++.

  10. #10
    Destilado artesanalmente
    Fecha de ingreso
    Jul 2004
    Mensajes
    1,458
    Gracias (Dadas)
    0
    Gracias (Recibidas)
    2

    Disperser script for xsi

    Vaya, tío, eres la historia caña. Posdata: se me ha ocurrido otra idea, hacer bloques, es decir, que tome por referencia el tamaño en bounding box del objeto y puedas colocar un montón de objetos juntos definiendo hacia donde quieres que, aparezcan, por ejemplo, tienes un bloque de una muralla y que con esa opción puedas hacer todas las copias necesarias para hacer la muralla o que tengas una teja y puedas crear un plano de tejas juntas una a la otra.
    Ánimo que te lo estás trabajando como nadie.
    Pajaros en mi cabeza y cerveza en mi riñon, amo el arte...

    www.goldpiece.net

Página 1 de 3 123 ÚltimoÚltimo

Temas similares

  1. Script 3ds Max md2
    Por Jhonatan00_00 en el foro Programación y Scripts
    Respuestas: 4
    Último mensaje: 21-10-2016, 10:53
  2. Respuestas: 2
    Último mensaje: 07-05-2015, 23:08
  3. Cómo cambiar un script a un macro script
    Por Miguel-Arte-3D-1990 en el foro Programación y Scripts
    Respuestas: 11
    Último mensaje: 11-03-2012, 23:07
  4. Blender Script
    Por nuck en el foro Programación y Scripts
    Respuestas: 2
    Último mensaje: 25-03-2010, 09:49
  5. Script en 3ds Max
    Por bealobo en el foro Partículas y Dinámicas
    Respuestas: 67
    Último mensaje: 13-12-2006, 22:42

Etiquetas para este tema