Páginas

jueves, 28 de julio de 2011

Shake it! baby...



Hoy definitivamente no hablaremos del ultimo tema de Dady Yankee, sino de como hacer un Vumetro (mal llamado Equalizador) en 3D, para eso vamos a usar 3D max y alguna que otra expresión básica, esto se puede aplicar a cualquier herramienta 3D, ya sea maya, softimage o la que gusten (siempre y cuando esta tenga un sistemas de expresiones o scripting básico).

Para ello nos plantearemos 5 objetivos
  1. Preparar el audio
  2. Crearemos un Rig básico.
  3. Agregaremos un control para animar manualmente.
  4. Agregaremos una "Propiedad Customizada" que nos permitirá cargar un archivo de audio como referencia.
  5. Ajustaremos los valores de la expresión. 
Preparar el audio
buscaremos el tema que mas nos guste, por una cuestión de preferencia y por que tiene unos bajos interesantes decidí usar "Freestylers - Cracks (Flux Pavilion Remix", pero si ustedes gustan pueden usar "Dejame Soñar de Nicole Neuman" yo no lo recomiendo, pero va en gustos.

Una vez que tenemos nuestro tema musical, utilizando alguna aplicacion de audio (yo use soundforge) vamos a separar las diferentes bandas de frecuencias. para ello vamos a usar un efecto equalizar en el cual vamos a bajar todas las bandas, luego subir una a una y guardando en diferentes archivos de audio cada banda.

yo utilizare un vuemtro de 10 valores por eso utilizo un eq. de 10 bandas
Crear Rig Básico
Una vez que tenemos el tema separado en bandas (10 archivos de audi diferentes) podemos ir al max y empezar a armar el Vumetro (el equalizador es el instrumento para modular las bandas el Vumetro es el instrumento que representa graficamente el conportamiento de cada una de ellas). Para ello crearemos como muestra la imagen un Helper Point que llamaremos 28_00.


Agregar Control de animación manual
En el visor front creamos una lina vertical que llamaremos "ln_28" y una caja como muestra la imagen, y la llamaremos "Ctrl_28", acto seguido seleccionamos la caja, abrimos el menú animation/constraints/path constraint. nos va a pedir seleccionar una linea o path y seleccionamos ln_28. Una vez echo esto notaremos que en el ojeto Ctrl_28 aparecieron 2 keyframes, uno al inicio de la animación y otro al final de las misma, borradlos.

Borrar los dos keyframes que se generaron el el objeto Ctrl_28
Agregar Propiedad Customizada
Para ello agregaremos un modificador "Atribute holder" a Ctrl_28 los siguientes custom parameters
  1. Float - spiner - llamado "wave"
  2. Boolean - checkbox - llamada "manual"

Debería quedar mas o menos así

 
en el track View buscamos las dos nuevas pistas que se crearon y a la pista wave presionando la letra "C"  le agregamos un controlador "Audio Float" del menú emergente.

una vez cargado el archivo de  audio veremos la onda en el trak editor
En la conflagración de audio float cargaremos el audio de la banda de menor frecuencia, o sea la de 28Khz y setearemos el valor máximo en 100. Acto seguido, seleccionamos el Point Helper "28_00", abrimos el editor de curvas y vamos a Tracks/Visivility Track/Add. esto agregara al objeto un track de visibilidad que por defecto no tiene ningún objeto en max.
una vez que tengamos el track de visibilidad habilitado a este le agregaremos un control scripteado, para ello seleccionamos la pista visivility y presionamos la tecla "C" que nos presentara el siguiente dialogo donde elegiremos la opción float script.
Elegimos "Float Script" y presionamos ok

Bueno señores, llego la hora de romperse los cuernos e intentar delucidar que es esto que nos apareció, no es ni mas ni menos que el editor de expresiones del max aquí pueden hacer lo que le venga en gana con un poco de conocimientos en matemáticas y programacion.

en la casillero variable escribiremos val y luego presionaremos create. una vez hecho esto presionamos el boton "asingn track" que se encuentra mas abajo, donde nos aparece un cuadro de dialogo, acto seguido urgamos entre los objetos hasta encontrar "Ctrl_28" accedemos a su controlador de posicion y dentro de el pat constraint elegimos la pista percent y le damos doble click.

hecho esto le indicamos al programa que la variable "Val" es igual a la posicion del control con respecto al path.

Creamos 2 variables mas llamada:

  1. wave - que el asignaremos como track la pista de ctrl_28 del mismo nombre en

  2. manual - que el asignaremos como track la pista de ctrl_28 del mismo nombre en

En la ventana "expresion" introduciremos el sigiente texto.


 Lo que significa que si la variable "VAL" es mayor o igual que "0" entonces la visibilidad es "1" en caso contrario la visibilidad es "0" 


Ajustar valores de la expresion
por fin hemos llegado al ultimo paso de este, como decirle... tutorial? bue. la cosa es que aca es done se pone un poco pesado el asunto por que vamos a tener que reemplazar manualmente varios valores.
primero que nada seleccionamos el point 28_00 y lo duplicamos hacia arriba presionando shift como copy. la cantidad de copias va a depender de cantos niveles quieran de audio, en mi caso voy a elegir 4 copias para tener un total de 5 niveles de audio.
hecho esto, vamos a tener que hacer la siguente cuentita 100/"cantidad de niveles deseados" en mi caso seria algo como 100/4 lo que me da un resultado de 20, eso significa que vamos a hacer saltos de 20 en 20 para llegar a el maximo de audio.






dicho esto, selecionamos uno a uno en el track view todos los points y les cambiamos el valor de 0 por 20, 40, 60 y asi sucesivamente, como muestra el ejemplo.


el valor de la comparacion de wave y val que antes era 0 se cambio por 20
una vez hecho esto seleccionamos todos los objetos en la escena y los duplicamos horizontalmente 9 veces (en mi caso por que decidi hacer 10 bandas) y luego solo resta cambiar la pista de audio del nodo wave de cada uno de los controles para el modo automatico. una vez que el rig esta teminado, linkeamos a los points los objetos que queremos que aparezcan o desaparezcan, gracias a la propiedad inherit visiblity desapareceran siguiendo el ritmo de la musica.




 Hora si con el estupendo tema de brigada Cola me despido de ustedes y hasta la proxima edicion, y recuerden traten de no usar temas de mierda por que no garpa.
Esteban Ponce


miércoles, 27 de julio de 2011

Hot... Very very Hot!

Tan hot como la paloma de cualcerdo, hoy vamos a atender un pedido muy especial de los amigos comedores de pizza europeos, al parecer los están haciendo modelar como afro americanos (recordemos que este no es un blog xenófobo) y necesitan optimizar sus tiempos ya que cada segundo perdido es un piropo facebookero menos, así que manos a la obra.

Primero que nada, encendemos la compu (si esta no enciende chequear que este conectada al toma corriente y que la ultima factura de luz este al día) abrimos el amigo de todos los niños (hablo del 3D max no del padre grassi) y vamos a la pestaña "Customize" como vemos en la siguiente imagen.

Seleccionamos Customize "User Interface" que nos mostrara el siguiente menú.

este menu no necesita explicacion ni aqui ni en kasajtan
Luego en el caso de usar "editable poly" que no es lo mismo que "edit poly" ya que este ultimo es un modificador y el anterior es una clase, seleccionamos la categoría y buscamos las herramientas que necesitamos (en caso de loop y ring en el menú de acciones bajamos hasta "selection edge loop" o ring dependiendo de nuestras necesidades) una vez seleccionado en el cuadro que dice Hotkey introducimos el valor deseado pudiendo usar el "control" y el "alt" o ambos a la vez (para los que no saben, sufren el síndrome de homero simpson o les gusta que les explique bien las cosas, "control" es la tecla que dice Ctrl), Y Awawiwa podemos sentirnos como los reyes del castillo si tenemos una silla, ahora con nuestro hermoso Hotkey vamos a hacer todo rapidito e irnos a casa temprano.....

A todos los lectores, sientanse libres de escribir si necesitan ayuda, consejos, un hombro en que apoyarse o algún script (pelotudeces no, y nada de mariconadas).

sin mas me despido hasta la próxima. y recuerden las palabras de mahatma minujin quien dijo
 "es mas fácil que un camello pase por el ojo de una aguja que una aguja por el ojo de un camello (eso si, previamente engrasado)"

Esteban Ponce