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



be straight always was better! :)

Y no estoy hablando de preferencias sexuales! simplemente de alpha premultiplicado y composición en Nuke.
Muchas veces cuando componemos en nuke y somos novatos como quien escribe estas lineas nos encontramos con dificultades a la hora de integrar CGI de fondo negro con cualquier otro background, ya sea CGI o vídeo de acción real, obteniendo los desagradables bordes negros en nuestros elementos CGI. En este punto tenemos dos opciones, aceptar que somos novatos para dejarlos alli rogando que el cliente no los vea y arriesgandonos a que nunca mas nos vuelvan a llamar, o investigar un poco y bajar el video de digital tutors (que para algunas cosas son medios novatos también) en el que te muestran como eliminar este borde con la herramienta erode (lo que no te explican es como solucionar todos los problemas que esto acarrea ya que estamos eliminado información) que da resultados aceptables, pero señores "somos profesionales".




Ventana de Opciones de formato Targa (TGA) 3D Max.
   

Ahora bien, si nosotros generamos el CGI o tenemos influencia sobre quien lo genera hay una tercera opción que parece ser la correcta, y esa señores es be straight!, si y repito no estoy hablando de no tirarse bajo el escritorio del jefe a conseguir un aumento, o de aceptar la cariñosa caricia en la pierna de un productor de la Chiqui Legrand, pueden continuar con todo eso por que les estoy hablando de las opciones de alfa de muchas de las aplicaciones de 3D.


Combustion
 



After Effects
 
Nuke

 En la imagen anterior vemos que aparecen tres checkbox y una de ellas dice Pre-Multiplied Alpha, normalmente si estamos acostumbrados a trabajar con After Effects, o herramientas mas profesionales como "Combustion", nos veríamos tentados a checkear esta opción ya que nos daría una imagen con el RGB premultiplicado por el alpha con unos bordes suaves como el cabello de la Klosterboer, pero señores no todo lo que brilla es pantene (a veces es un poco de scratch y la mano habilidosa de algún colorista) ya que esta imagen esconde el fantasma de la premultiplicacion. 
 






Izq. Straight  - der. premultiplicado Classic...
   
Muchas de las aplicaciones de composición están preparadas para manejarlo, pero el querido nuke por mas que tenga las herramientas, parecieran no funcionar de la forma esperada ya que al aplicar correcciones de color o gamma empezamos a encontrarnos con el alliasing de la imagen que es el resultado de la premultiplicacion por pixeles semitransparentes.




Muchos dirán, "este flaco esta en pedo", muchos tendrán razón si lo dicen un Viernes 02:00 am (UTC-3), otros conocerán otras cosas que no se ya que paso muchos jueves en el bar, y puedan decirme que no es así!, pero esto esta probado empíricamente y funciona. 




Aaaawawiwa... the king in the casttle
 En caso de no tener control en la generación de el footage CGI, lo que se puede hacer es interpretar el nodo "READ" como premultiplied luego aplicar un nodo "UNPREMULT" la corrección de color y luego otro nodo "PREMULT", y obtendremos el siguiente resultado.


Nice!
sin mas me despido y espero no haber herido suceptibilidades, y a esos que se ganan el aumento paseándose debajo del escritorio del jefe, Ponganse a laburar atorrantes!!!

Esteban Ponce.

lunes, 25 de julio de 2011

Bienvenidos a Dillinger Hide-out, en este espacio planeo compartir mi trabajo con ustedes así como información técnica acerca de Efectos Visuales Digitales.

Mi nombre es Esteban Ponce y soy un artista Argentino con 8 años de experiencia profesional en el campo de la publicidad, soy adicto a mi trabajo(es al trabajo o a alguna otra porquería, me quedo con el trabajo) ya que me trae muchas satisfacciones.

En la primera entrada de mi blog les voy a dejar de regalo un pequeño script que forma parte de un conjunto de herramientas de render que me encuentro desarrollando en este momento para 3D studio max.

Este pequeño script permite generar elementos de render automática mente con solo presionar un botón.

Algunos pases requieren de cierto conocimiento previo para su uso o inclusive de activar algunas funciones ocultas de la aplicación dependiendo de que versión estemos usando.

Point Position: para generar este pase van a necesitar activar una función que se encuentra oculta, que más abajo explicare, este pase es recomendable guardarlo en 32 Bits al igual que el Zdepth.

En el caso de light Pass al presionar el botón se creara una escena que podrán visualizar a través del scene state, para enviarla a renderear.

Sin más, me despido hasta otra ocasión.
Esteban Ponce.


Como Desbloquear XYZ Generator?
1 - Buscar y abrir con el editor de texto el archivo 3dmaxshaders.mi
2 - Alli dentro buscar "max_base_XYZGenerator" 
3 -delante de la palabra "hidden" añadir "#", quedando de la sig. manera. 


    gui "gui_max_base_XYZGenerator" {
        control "Global" "Global" (
            "uiName"  "XYZ Generator",
   "helpCHM" "max/max help.chm",
            "category"  "Texture Space Mapping",
           # "hidden"