Archivo de Categoría: Tutoriales 3D

Tutorial 07, parte 3: Iluminación Fotométrica

3dsmax_fotometricaEn el mundo real, la iluminación afecta nuestras vidas desde ángulos muy variados: permite distinguir siluetas y formas, afecta nuestros estados de ánimo (por ejemplo, las luces de una discoteca), nos alerta sobre peligros u otras indicaciones (semáforo, sirenas, etc.), nos entretiene, etc. Existen muchas fuentes de luz natural y artificial que nos generan muchas variables de iluminación. Intentar emular esas variables en un espacio 3D es el objetivo de las herramientas de iluminación en 3DSMAX. El programa basa a su representación de la iluminación en el ángulo que inciden los rayos en las caras de los objetos. Si este ángulo es perpendicular la iluminación es máxima, en ángulos menores esta irá decreciendo hasta desaparecer cuando los rayos queden tangentes a la superficie.

En esta tercera parte del tutorial de iluminación veremos las luces de tipo fotométrico y sus propiedades más importantes.

Luces fotométricas

Las luces fotométricas son tipos de luces que utilizan valores fotométricos (energía de luz) que permiten definir las luces con más precisión, igual que si fuesen reales. En ellas podemos definir la distribución, intensidad, temperatura de color y otras características propias de las luces reales. También se pueden importar archivos fotométricos específicos de fabricantes de luces para diseñar la iluminación de acuerdo con las luces disponibles en el mercado. Estos archivos poseen extensión IES.

A diferencia de las luces standard, las luces fotométricas utilizan valores reales de iluminación y por ende, podemos asignar valores en las unidades propias de Fotometría Internacional:

– Candelas.
– Luminancias o lumen.
– Luxes.

La Candela (símbolo cd) es la unidad básica del SI de intensidad luminosa, es decir, la energía emitida por una fuente de luz en una dirección particular, ponderado por la función de luminosidad. Una vela común emite luz con una intensidad lumínica de aproximadamente una candela. Si las emisiones en algunas direcciones es bloqueado por una barrera opaca, la emisión todavía sería de aproximadamente una candela en las direcciones que no están oscurecidas.

El Lumen (símbolo lm) es la unidad del Sistema Internacional de Medidas para medir el flujo luminoso y básicamente es una medida de la potencia luminosa emitida por la fuente. El flujo luminoso se diferencia del flujo radiante en que el primero contempla la sensibilidad variable del ojo humano a las diferentes longitudes de onda de la luz y el último involucra toda la radiación electromagnética emitida por la fuente sin considerar si tal radiación es visible o no.

El Lux (símbolo lx) es la unidad derivada del Sistema Internacional de Unidades para la iluminancia o nivel de iluminación y equivale a un lumen/m². Se usa en la fotometría como medida de la luminancia, tomando en cuenta las diferentes longitudes de onda según la función de luminosidad, un modelo estándar de la sensibilidad a la luz del ojo humano. El lux se define como la iluminación de 1 m por una fuente de luz que emite un flujo luminoso de 1 lumen.

La diferencia entre el lux y el lumen consiste en que el lux toma en cuenta la superficie sobre la que el flujo luminoso se distribuye. 1.000 lúmenes, concentrados sobre un metro cuadrado, iluminan esa superficie con 1.000 lux. Los mismos mil lúmenes, distribuidos sobre 10 metros cuadrados, producen una iluminancia de sólo 100 lux.

Si aplicamos esto en un ejemplo práctico, una iluminancia de 500 lux nos bastaría para iluminar una cocina con un simple tubo fluorescente. Pero si quisiéramos iluminar una fábrica al mismo nivel, se pueden requerir decenas de tubos. En otras palabras, iluminar un área mayor al mismo nivel de lux requiere un número mayor de lúmenes.

Podemos apreciar mejor esta diferencia en el siguiente esquema:

fotometria01

Diferencia entre Lumen y Lux, en 1 mde superficie.

Luces fotométricas en 3DSMAX

En 3DSMAX, las luces fotométricas comparten parámetros similares a las ya estudiadas luces standard como la atenuación lejana o el tipo de sombra, pero estas además tienen sus propias variables entre las cuales podemos destacar las siguientes:

Light distribution: especifica el tipo de distribución de la luz en la superficie o espacio. Esta puede ser de tipo red fotométrica o Photometric Web, Spotlight o Spot, Uniform Diffusse y Uniform Spherical:

3dsmax_gi009

Tipos de distribución de luz fotométrica. De izquierda a derecha: Photometric Web con un archivo IES cargado (donde notamos que la forma de la lámpara cambia), Spotlight, Uniform Spherical/diffuse y Photometric Web sin un archivo IES cargado.

fotometric000

Luz aplicada con distribución tipo Photometric Web, con un archivo IES cargado.

fotometric001

Luz aplicada con distribución tipo Spotlight.

fotometric001b

Luz aplicada con distribución tipo Uniform Diffuse.

fotometric001c

Luz aplicada con distribución tipo Uniform Spherical.

3dsmax_gi008Cuando estamos en el tipo de distribución llamado Photometric Web, podremos cargar archivos del fabricante de luces (usualmente de extensión IES) presionando el botón <point_street> (en las versiones antiguas de 3DSMAX) o en <Choose Photometric file> (en las versiones modernas) en la persiana Distribution (Photometric Web). Una vez que presionamos el botón podremos elegir el archivo IES que queramos y este se cargará en la luz, reemplazando a la “ampolleta” o forma de la lámpara que aparece por defecto, tal como se ve en la imagen de las distribuciones de luz de más arriba.

fotometric002

Luz aplicada con distribución tipo Photometric Web, con archivo IES cargado.

Intensity/color/attenuation: En este caso podremos asignar la cantidad de intensidad en las unidades lumínicas correspondientes (luminancias o lúmenes, candelas o luxes). El valor por defecto asignado es de unas 1.500 Candelas. También podemos elegir colores de luces provenientes de distintos tipos de configuraciones lumínicas como tubos fluorescentes, halógenos, lámparas incandescentes u otros. también podremos asignar el color de la luz según los grados Kelvin que establezcamos. Los valores de Kelvin fluctúan entre 1.000 y 20.000 y establecer el valor mínimo el mínimo implicará una luz muy cálida, mientras que el valor máximo será una luz muy fría. El valor por defecto de los grados Kelvin es 3.600.

fotometric003

Render aplicado con 1.000 Grados Kelvin.

fotometric003b

Render aplicado con 3.500 Grados Kelvin.

fotometric003c

Render aplicado con 10.000 Grados Kelvin.

fotometric003d

Render aplicado con 20.000 Grados Kelvin.

En el caso de la atenuación (Attenuation), podremos definir sólo la atenuación lejana (Far Attenuation) ya que en la realidad, no existe la atenuación cercana o Near Attenuation de la luz. Esta se configura de igual forma que con las luces standard.

Shape/Area Shadows: en esta opción podremos definir la forma en la que se proyecta la luz desde el emisor mediante la persiana Emit light from (shape). En esta tenemos las siguientes opciones:

– Point: proyecta una luz de punto, de forma similar a una ampolleta. Es la opción que viene por defecto y que utiliza la mayoría de los archivos IES al ser cargados.

fotometric004

– Line: proyecta la luz en forma lineal y es el ideal para simular, por ejemplo, tubos fluorescentes. Podremos configurar su largo mediante la opción Lenght.

fotometric004b

– Rectangle: proyecta la luz en forma de rectángulo. Podremos configurar el tamaño de este mediante las opciones Lenght y Width.

fotometric004c

– Disc: proyecta la luz en forma de disco. Podremos configurar su radio mediante la opción Radius.

fotometric004d

– Sphere: proyecta la luz en forma de esfera. Podremos configurar su radio mediante la opción Radius.

fotometric004e

– Cylinder: proyecta la luz en forma de cilindro. Podremos configurar su radio mediante la opción Radius y su altura mediante Height.

fotometric004f

fotometric007En los casos de distribución de tipo Rectangle, Disc, Sphere y cylinder podremos ver la forma de la distribución de la luz en el render si activamos la casilla Light Shape visible in Rendering.

fotometric008b

Render aplicado con Light Shape Visible in Rendering, con la distribución tipo Rectangle visible (Logarithmic Exposure Control activado).

fotometric008a

Render aplicado con Light Shape Visible in Rendering, con la distribución tipo Disc visible (Logarithmic Exposure Control activado).

fotometric008

Render aplicado con Light Shape Visible in Rendering, con la distribución tipo Sphere visible (Logarithmic Exposure Control activado).

Templates: en esta interesante opción podremos elegir de forma directa los tipos de configuraciones de luz realistas ya que tenemos por ejemplo las ampolletas de 40, 60 y 100 Watts, faros halógenos y otras luces exteriores y fuertes, como las luces de calle o incluso de un estadio.

fotometric005

Template 100W bulb (ampolleta de 100 watts).

fotometric005b

Template 4ft Cover Fluorescent (fluorescente).

fotometric005d

Template Street 400W Lamp (lámpara de calle de 400 watts).

fotometric005c

Template Stadium 1000W Lamp (lámpara de estadio de 1.000 watts).

Las luces fotométricas son recomendadas para ser utilizadas preferentemente con el motor de render Mental Ray ya que producen resultados más realistas y satisfactorios. También debemos tomar en cuenta que siempre debemos modelar nuestros objetos con medidas reales ya que las luces trabajan con estos valores y por ende los resultados son más precisos. Por último, en escenas interiores se recomienda aplicar GI mediante Mental Ray o Radiosity (Default Scanline Renderer) para generar la iluminación indirecta.

fotometric006

Render realizado con 4 luces fotométricas y aplicando el Plugin Radiosity.

fotometric006b

Render realizado con 4 luces fotométricas y aplicando GI de Mental Ray.


Bibliografía utilizada:

– Wikipedia en español: http://es.wikipedia.org.

– Web Iluminación Arquitectónica (imagen esquema Lumen/Lux):
http://editorial.cda.ulpgc.es/instalacion/7_OPTATIVAS/LAU/LAU0_introduccion/lau01_fundamentos.htm

– Tutorial GI Standard y Mental Ray del profesor Sebastián Huenchual H., Carrera Animación Digital 3D, Instituto DGM.

– 3DSMAX User Guide reference.

– Manuales USERS 3DSMAX por Daniel Venditti. Ediciones MP, Buenos Aires, Argentina.


Descargar Tutorial (PDF) y Archivos Base (MAX 2013):

3dsmax_download

Tutorial 03b: Herramienta Array (matriz)

3dsmax_arrayEn este tutorial conoceremos las diversas herramientas de matrices que nos ofrece 3DSMAX como Array. array nos permite realizar copias mediante filas y columnas, pero además podremos realizar las copias en pisos (eje Z). Comenzaremos conociendo las funciones de Array mediante la construcción de primitivas base y luego aplicando la herramienta correspondiente.

Para comenzar, Abrimos 3DSMAX (no necesitaremos modificar ningún parámetro por ahora).

Aplicando Array:

Antes de comenzar a utilizar esta herramienta previamente dibujaremos una línea ortogonal (presionando Shift) mediante los shapes de 3DSMAX y dibujaremos un cilindro que tendrá los siguientes parámetros:

Radius: 5, Height: 100.

Centramos el cilindro en el punto de origen y guardamos. Ahora procederemos a aplicar Array a este cilindro, seleccionándolo previamente. Como su nombre lo indica, Array (matriz) nos permite crear matrices de objetos mediante filas y columnas que definirán copias tanto en los ejes X, Y y/o Z. Podemos seleccionar esta herramienta en Tools >> Array. En el caso de nuestra escena, primeramente seleccionamos el cilindro y luego ejecutamos Array. Nos aparecerá el siguiente cuadro:

Donde tenemos lo siguiente:

Incremental/Totals X, Y y Z: si seleccionamos Incremental nos permite incrementar los valores de las distancias, rotaciones o escalas entre cada elemento, en Totals estableceremos los valores totales dependiendo del número de elementos. Ambos parámetros están relacionados entre sí ya que por ejemplo, si tenemos 4 elementos en Count y en Totals X establecemos la distancia 100, la distancia entre cada elemento en Incremental X será 25 de (ya que 25 x 4 = 100).

Move, Rotate y Scale: estas flechas son muy importantes pues nos permitirán seleccionar las variables que queramos incrementar, tanto entre elementos como en los totales. Presionando cada flecha podemos establecer si elegimos Incremental o Totals en cada transformación.

De esto se desprende que podremos ejecutar matrices de tipo rectangular, polar y escalada.

En el caso de los Incrementals y Totals, las unidades serán las siguientes: en el caso de move los valores serán los que trabajamos por defecto o la unidad de medida que le asignemos a 3DSMAX. En el caso de Rotate la unidad será en grados (degrees) y en el caso de Scale, será de porcentaje (percent).

Array Dimensions: nos permite establecer el tipo de matriz y el o los ejes en los cuales se crearán las copias. Si elegimos 1D, las copias se crearán en una dimensión según los valores que definamos en Incrementals. Si elegimos 2D agregaremos una segunda dimensión o eje y si elegimos 3D, tendremos las copias en las 3 dimensiones del espacio 3D.

Podremos ver la previsualización de nuestras copias presionando el botón Preview. En Total in Array veremos el total de los elementos que compondrán nuestra matriz y si hacemos click en Display as Box las copias se mostrarán como una caja en lugar de las formas 3D. Cuando hayamos configurado los parámetros presionamos OK para confirmar o Cancel para cancelar la operación. También podemos elegir el tipo de objeto resultante (Copy, Instance o Reference).

Aunque en principio parece un poco difícil entender este cuadro, realizaremos algunos ejercicios donde nos quedará claro el uso de esta herramienta.

Para ello volvemos a nuestro cilindro, ahora coloquemos el valor 20 a Incremental X en Move y en 1D asignemos el valor 6, junto con presionar Preview para ver el resultado, el cual debiera verse tal como en la foto de abajo:

Notaremos que el cilindro se ha copiado 5 veces en el eje X lo que nos da un total de 6 copias, y la distancia entre el punto de pivote de cada uno de los cilindros es de 20, lo que hace un total de 120 si vemos el valor de Totals en X.

Ahora coloquemos -10 a Incremental Y sin cambiar el resto de los parámetros. Esto hará que los elementos de la matriz se muevan en diagonal y hacia nosotros ya que ahora hemos agregado en el eje Y la distancia de -10 entre cada elemento, tal como se ve en la imagen de abajo. Esto es así porque recordemos que en el plano cartesiano, las distancias negativas en Y van hacia abajo. Si el valor fuera positivo las formas formarían una diagonal pero hacia arriba de la línea de origen.

Notaremos que las copias se mantienen en la diagonal ya que como hemos elegido la opción 1D, no crea más copias que en una sola “dimensión” aún cuando podemos manejar los valores de X, Y y Z, pero afectarán sólo a esta fila o columna de copias.

Para corroborar esto, asignemos ahora el valor -10 a Incremental Z. Esto hará que la distancia entre cada elemento de la matriz tome el valor -10 en el eje Z y por ende las formas bajan. Notaremos también que el valor Totals en Z es de -60, tal como se ve en la imagen de abajo:

De esto se desprende que si queremos realizar copias en el eje X sólo basta colocar la cantidad de elementos en 1D y luego la distancia entre los elementos en Incremental X, en el caso de Y lo hacemos en Incremental Y y en el caso de Z lo realizamos en Incremental Z.

En el caso que utilicemos la opción Rotate, es mejor utilizar los valores en Totals ya que como se expresan en grados, es más fácil realizar las divisiones si se conoce el ángulo total. En este caso la matriz será de tipo polar y tomará como base el punto de pivote del primer cilindro, y la rotación se efectuará en torno al eje que escojamos, en la foto de abajo por ejemplo, la rotación se efectúa en X.

Y aquí está el resultado de la rotación en torno a los ejes Y y Z, aplicando el valor 360. En caso que realicemos la rotación en Z, debemos tener el cilindro en posición horizontal para ver el resultado, tal como se ve en la imagen de más abajo:

Para el caso que utilicemos la opción Scale, es exactamente igual que en los casos anteriores, la diferencia es que los valores estarán expresados en porcentaje y los incrementos se aplicarán uno sobre otro. Es decir, si por ejemplo en nuestro cilindro aplicamos el valor 16 en incremental X y 111 (111%) en Incremental X Scale, la siguiente copia se escalará con ese valor, y la subsiguiente será la copia anterior ya escalada y se le volverá a aplicar ese 111%. El resultado en X en nuestro cilindro es el siguiente:

El resultado en Y, esta vez utilizando un 128% será el siguiente:

 El resultado en Z, esta vez utilizando un 82% será el siguiente: nótese que esta vez, la escala disminuye y por ende el tamaño de los objetos de la matriz.

Debemos recordar que en el caso de Scale, el valor 100 corresponderá al tamaño real de la forma 3D, y bajo ese margen estaremos reduciendo. Por el contrario, valores superiores al 100 agrandarán las dimensiones y por ende el objeto.

Y por supuesto, y al igual que en el caso de Spacing Tool, podemos combinar estos valores para formar diversos efectos en la matriz como podemos ver en la foto de al lado donde se han modificado los valores en Move, Rotate y Scale logrando este curioso efecto en el total de la matriz 1D:

Ahora bien, ya somos capaces de entender el manejo de las matrices en 1D, pero ahora ¿cómo creamos una matriz en 2 o 3 dimensiones? La respuesta está en el cuadro Array Dimensions y para activar la matriz en 2D simplemente cambiamos el modo a 2D y en el valor de Count asignamos la cantidad de copias. Sin embargo debemos tener en cuenta la opción Incremental Row donde además debemos asignar la distancia entre los elementos de esta segunda dimensión.

Para aclarar esto, volvemos a nuestro cilindro y esta vez asignamos el valor 20 en incremental en X (move), cambiamos a 2D y asignamos el valor 5 en Count. En Incremental Row Y escribimos el valor 20 y activamos Preview. Hemos creado una matriz en 2D y el resultado es el de la foto de la derecha. Como apreciamos, se crean 5 columnas en el eje Y y la distancia entre los objetos es de 20.

Al igual que en el caso de las matrices 1D, podemos modificar el movimiento de esta matriz simplemente manipulando los valores de Incremental Row. Si en el caso de nuestro cilindro modificamos el valor de Incremental Row en X a 10, notaremos como la matriz 2D se mueve en diagonal hacia el eje X tomando como referencia la distancia 10 entre los objetos.

También podemos realizar lo mismo en Z pero en este caso, la matriz subirá o bajará en diagonal tomando como referencia la distancia entre objetos en Z. En el caso de la imagen de abajo, se han modificado los parámetros de Incremental Row colocando el valor -29 en Z y manteniendo el valor de Y en 20.

Finalmente, si queremos obtener una matriz en 3 dimensiones simplemente cambiamos el modo de Array Dimensions a 3D, además de cambiar los valores de Count y la distancia de Incremental Row en Z para ver el resultado. En el caso de este ejercicio, en el modo 3D el valor de Count será 2 y la distancia en Z será de 120 para ver el resultado, el cual es el de la foto de abajo:

Debemos tomar en cuenta que si en el modo 3D cambiamos los valores de Count en 1D y 2D, esto afectará a los elementos de toda la matriz. Y al igual que en los casos anteriores, los valores que escribamos en X, Y y Z en Incremental Row moverán los elementos de la matriz 3D en torno a X, Y y Z. En la imagen de abajo por ejemplo, el valor en X de Incremental Row es 30 y el de Z, 110. Los elementos de la fila en Z se mueven hacia la izquierda, en torno al eje X.

Finalmente en este otro ejemplo, el valor en Y de Incremental Row es -60 y el de Z, 110. Los elementos de la fila en Z se mueven hacia nosotros, en torno al eje Y.

Este es el fin del tutorial 03b.

Tutorial 03a: Spacing Tool (espaciado)

3dsmax_spacingEn este tutorial conoceremos las diversas herramientas de matrices que nos ofrece 3DSMAX como Spacing Tool, la cual nos permite ir distribuyendo de manera precisa copias de un objeto a través de un recorrido. Comenzaremos conociendo las funciones de Spacing Tool mediante la construcción de primitivas base, y luego aplicando la herramienta correspondiente.

Para comenzar, Abrimos 3DSMAX (no necesitaremos modificar ningún parámetro por ahora).

Aplicando Spacing Tool:

Antes de comenzar a utilizar esta herramienta previamente dibujaremos una línea ortogonal (presionando Shift) mediante los shapes de 3DSMAX y dibujaremos un cilindro que tendrá los siguientes parámetros:

Radius: 5, Height: 100.

Centramos el cilindro en el punto de origen y guardamos. La idea es que la escena nos quede de forma similar a la foto de abajo:

sptool00

Como su nombre lo indica, Spacing Tool nos permite distribuir copias de manera uniforme de un objeto en torno a un espacio determinado o recorrido. Podemos seleccionar esta herramienta en Tools >> Align >> Spacing Tool (imagen de abajo a la derecha). En el caso de nuestra escena, primeramente seleccionamos el cilindro y luego ejecutamos spacing Tool. Nos aparecerá el siguiente cuadro:

Si presionamos el botón Pick Path (obtener recorrido), podremos seleccionar la línea en la cual las copias se distribuirán de forma uniforme según el número de copias que establecimos en el campo Count. Si en cambio elegimos la opción Pick Points (obtener puntos), podremos elegir puntos cualesquiera en el espacio y en la recta que se forma entre estos se distribuirán nuestras copias.

En esta imagen de abajo vemos la aplicación de Spacing Tool mediante la opción Pick Points: en el caso de nuestra escena, seleccionamos el primer extremo de la línea y hacemos click, luego el siguiente para finalizar con click:

sptool01b_pickpoints

El resultado final es que las copias se distribuirán a lo largo de la recta formada entre estos puntos, indicada en verde. Esto puede realizarse en cualquier coordenada del espacio 3D si utilizamos esta opción, sin necesidad de dibujar una línea.

Ahora bien, si elegimos la opción Pick Path nos bastará con elegir la línea para que las copias se distribuyan en ella. En el caso de nuestra escena establecimos el valor 6 en Count lo cual se refleja claramente en el resultado final (imagen de abajo), además que el botón de Pick Path ahora cambia al nombre de la línea.

Entre los parámetros más importantes de Spacing Tool encontramos los siguientes:

Count: indica la cantidad de elementos. Podemos determinar la cantidad de elementos que queremos distribuir en la línea o el espacio.

Spacing: espacio entre los puntos de pivote de cada elemento. Por defecto este nos distribuye equitativamente el espacio de los elementos de acuerdo al recorrido o los puntos que hemos elegido, pero si lo activamos podemos modificar a nuestro antojo esta distancia, la cual puede ser menor que el recorrido o salirse de este (foto de arriba).

Start Offset: nos permite definir la distancia de inicio de la distribución de los elementos. Por defecto la primera copia se establece en el primer extremo de una línea o primer punto, pero si la activamos podremos modificar esta distancia a nuestro antojo. En el caso de nuestra escena (imagen del abajo), se ha aplicado el valor 50 a Start Offset y claramente vemos como la distribución empieza a moverse 50 UG respecto al primer extremo de la línea.

End Offset: nos permite definir la distancia final de la distribución de los elementos. Por defecto la última copia se establece en el segundo extremo de una línea o segundo punto, pero si la activamos podremos modificar esta distancia a nuestro antojo. En el caso de nuestra escena (imagen de abajo), se ha aplicado el valor 50 a Start Offset y claramente vemos como la distribución empieza a moverse 50 UG respecto al extremo inferior de la línea.

Una cosa interesante de Start Offset y End Offset es que ambas pueden combinarse y aplicarse al mismo tiempo, lo que influirá evidentemente en la distancia final de las copias. Sin embargo, si activamos ambas al mismo tiempo no podremos activar la opción de Spacing.

Debajo de estas opciones también podemos ver un menú desplegable que nos indica particularmente qué tomaremos en cuenta en la subdivisión, como por ejemplo activar o desactivar las opciones.

Las opciones de este menú son:

Free Center: centro libre.

Divide Evenly, Objects at ends: divide equitativamente objetos en los extremos. Esta es la opción por defecto.

Centered, Specify Spacing: Centrado, se puede especificar espacio mediante Spacing.

End Offset: especificar final de recorrido.

End Offset, divide Evenly: final de recorrido, dividir equitativamente.

Start Offset, Specify Spacing: final de recorrido, especificar espacio.

Start Offset: especificar inicio de recorrido.

Start Offset, divide Evenly: inicio de recorrido, dividir equitativamente.

Start Offset, Specify Spacing: inicio de recorrido, especificar espacio.

Specify Offsets and Spacing: especifica inicio, fin de recorrido y espacio entre los elementos.

Specify Offsets, Divide Evenly: especifica inicio, fin de recorrido y dividir equitativamente.

Space from end, Unbounded: al activarlo y aumentar el valor de Space, End Offset tomará el mismo valor de forma ilimitada.

Space from end, Specify Number: al activarlo y aumentar el valor de Count, End Offset tomará el mismo valor que Spacing y los objetos se irán distribuyendo en el recorrido (tomando el extremo inicial como base), aunque a mayor cantidad de objetos más pequeño es el valor de spacing.

Space from end, Specify Spacing: al activarlo y aumentar el valor de Spacing, los objetos irán disminuyendo su número. Si disminuimos su valor, los objetos aumentarán en cantidad y se distribuirán a lo largo del recorrido a partir del extremo final.

Space from Start, Unbounded: al activarlo y aumentar el valor de Spacing, Start Offset tomará el mismo valor de forma ilimitada.

Space from Start, Specify Number: al activarlo y aumentar el valor de Count, Start Offset tomará el mismo valor que Spacing y los objetos se irán distribuyendo en el recorrido (tomando el extremo final como base), aunque a mayor cantidad de objetos más pequeño es el valor de spacing.

Space from Start, Specify Spacing: al activarlo y aumentar el valor de Spacing, los objetos irán disminuyendo su número. Si disminuimos su valor, los objetos disminuir en cantidad y se distribuirán a lo largo del recorrido a partir del extremo inicial.

Specify Spacing, Matching Offsets: dividir equitativamente los objetos, pero estos se distribuyen hacia los extremos del recorrido y disminuirán en cantidad según aumentemos el valor de Spacing.

Divide Evenly, No Objects at Ends: dividir equitativamente los objetos, pero estos se distribuyen hacia los extremos del recorrido según aumentemos los objetos en Count.

Context: esta herramienta nos permite elegir bajo qué relación se especifica la distribución de los objetos. En el caso de la opciòn llamada Edges, tomará como punto un lado de la forma 3D de acuerdo a la imagen de abajo:

spacing001a

Y en el caso de Centers tomará el centro de esta (normalmente el punto de pivote):

spacing001

Una opción muy interesante de context es Follow (seguir), si la activamos permitirá a formas no redondas seguir el recorrido de la línea, tomando como referencia los ejes locales de los objetos. Esto es muy útil sobre todo cuando lo aplicamos en elementos ortogonales. En la imagen podemos ver la distribución típica de una box 3D a lo largo de una línea curva mediante Spacing Tool:

En la imagen de abajo (con Follow aplicado) vemos claramente que las formas siguen a la línea.

Type of Object: en esta opción podemos elegir el tipo de copia que realizará spacing Tool de acuerdo a los tipos que conocemos: Copy, Instance o Reference.

Finalmente podemos aplicar la transformación presionando Apply o cancelarla mediante Cancel.

Spacing Tool funciona tanto en formas rectas o curvas, también lo hace en formas 2D cerradas como rectángulos o elipses, aunque los efectos serán dispares según activemos la opción Follow o no.

sptool04c

sptool04d

Este es el fin del tutorial 03a.

Tutorial 10: Animación básica

3dsmax_animacionDesde los tiempos primitivos el hombre ha intentado representar el movimiento, pasando por inventos como el zootropo hasta llegar a los dibujos animados modernos. Valiéndose del principio físico de la persistencia de la visión, en la que el cerebro humano retiene durante unas fracciones de segundo la imagen que captan sus ojos, los cineastas descubrieron que el cerebro, al ver una secuencia de imágenes a gran velocidad no es capaz de individualizarlas y por ende, este crea la ilusión de movimiento continuo. Esta secuencia de imágenes a gran velocidad es lo que se conoce como animación.

En animación cada una de estas imágenes se denomina cuadro o frame y la fluidez de la animación dependerá de la cantidad de cuadros “por segundo” que pasen ante nuestros ojos. Básicamente la cantidad de “cuadros por segundo” nos indica el número de imágenes que se muestran en un segundo de tiempo y se simboliza fps. Este formato se utiliza en cine y en televisión, y son los siguientes:

NTSC (El formato de TV que usamos en Chile): 30 fps.
PAL (El formato de TV que se usa comúnmente en Europa y Argentina): 25 fps.
Cine: 24 fps.

Concepto de cuadro clave

En las primeras décadas del siglo XX (y aún hoy) los dibujos animados eran realizados dibujando el o los personajes “cuadro por cuadro”. Al ser esta una tarea titánica (por ejemplo, para realizar 5 minutos de animación debemos dibujar unos 7.200 cuadros) los animadores se encargaban de dibujar las poses principales de los personajes para que luego animadores secundarios o asistentes dibujaran los cuadros intermedios. A partir de esto nace el concepto de cuadro clave o keyframe. A diferencia de la animación 2D tradicional, en 3DSMAX tenemos la ventaja que el programa dibuja los cuadros intermedios (interpolación) de forma automática mientras nosotros sólo definimos los cuadros clave. Entender perfectamente cómo crear y editar keyframes es necesario para crear animaciones realmente convincentes.

Podemos ver el tiempo total (en frames) de la animación en la línea de tiempo, la cual se ubica en la parte inferior del programa (imagen de abajo). El cuadro que nos indica un frame en la línea (en la imagen de abajo nos indica el frame 87/100) que posee una línea celeste y que podemos mover libremente se denomina regulador de tiempo.

Barra de controles de animación

La barra de controles de animación se encuentra en el lado inferior derecho del programa, y que podemos ver en la imagen de arriba.

En el cuadro de controles de animación encontraremos dos tipos de creación de keyframes, denominados Auto Key y Set Key. El ícono de la llave nos permite crear un keyframe de forma manual, que veremos más adelante.

En el cuadro de control vemos los controles de reproducción de la animación, los cuales funcionan igual que un equipo de música (rew, play, fast forward o ff) además que encontramos la función de play/pause, que nos permite ver a animación cuadro a cuadro. Si presionamos y mantenemos el botón play, podremos elegir Play Selected el cual nos permitirá reproducir la animación sólo de objetos que seleccionemos (seleccionando uno o más objetos que estén animados).

Otro elemento importante del panel de control es la configuración de tiempo o Time Configuration (el cuadro con el reloj de la imagen del lado). Además de este podemos encontrar otro menú en el cual podremos ver cada frame, de la misma forma que con play/pause.

Si activamos la configuración de tiempo accederemos al siguiente cuadro de la imagen derecha. En Frame Rate podemos definir la velocidad de los fps de acuerdo a los siguientes tipos:

– NTSC
– PAL
– Film (cine)
– Custom (fps personalizados).

En Time Display podemos establecer el método para mostrar el tiempo en el regulador de tiempo y en el programa. Esto puede ser en frames (por defecto), SMPTE, cuadros e impulsos o minutos, segundos e impulsos. Internamente 3DSMAX fracciona el tiempo en impulsos (1 impulso equivale a 1/4800 partes de 1 segundo).

En Playback podemos establecer el tipo de reproducción que queramos: en tiempo real (Real Time) el cual dependerá de la capacidad de nuestro PC, 5 velocidades de reproducción (1/4x, 1/2x, 1x, 2x, 4x), si queremos reproducir la animación sólo en la vista seleccionada (Active Viewport Only) o si queremos desactivar la repetición de la animación (Loop). Esto será válido sólo en la viewport de trabajo, pues en el render será siempre de 1X:

Animación reproducida en 1/4X

Animación reproducida en 1X (velocidad normal)

Animación reproducida en 1X (Render)

En Animation podemos determinar la duración de nuestra escena, en frames.

En Start Time podemos elegir el inicio de nuestra animación, el cual no tiene que ser necesariamente 0 ya que podemos iniciarla en algún frame específico incluso si este es negativo (ejemplo: -30).

En End Time podemos definir el final del último cuadro de nuestro segmento de tiempo.

Lenght se relaciona con las anteriores y representa la cantidad de tiempo total.

Frame Count se relaciona con las anteriores, y nos indica el cuadro de conteo.

Current Time nos muestra la posición actual del regulador de la línea de tiempo.

Re-scale Time nos permite reescalar el segmento de animación activo, con esto los cuadros clave son reescalados también lo cual nos permite acelerar o desacelerar una animación.

Métodos de creación de animación

Para crear animaciones existen dos caminos básicos que son:

–       Transformar un objeto mediante operaciones como mover, rotar o escalar.

–       Transformar un objeto mediante modificadores u otros, o editar algún parámetro en el tiempo.

Cuando animamos en 3DSMAX, cada cuadro en el cual hagamos un cambio se transforma en un keyframe y el programa realiza la interpolación de los frames intermedios hasta llegar al keyframe anterior.  Para animar en 3DSMAX podemos elegir el modo automático (Auto Key) o manual (Set Key). Para entender esto haremos un pequeño ejercicio de animación:

tu10_04

Para animar de forma automática, primero dibujaremos una tetera (teapot) y luego presionaremos el botón Auto Key. Notaremos que la línea de tiempo se vuelve roja lo cual nos indica que está en modo de animación. Ahora movemos el regulador de tiempo a la posición 30 y movemos un poco la tetera en X. Una vez que la movamos notaremos que en 0 y en 30 se han creado 2 cuadros rojos. Estos son los cuadros claves que ha creado el programa y que vemos en la imagen de la derecha. Si tomamos el primer cuadro y lo seleccionamos con un click, este se pondrá de color blanco. Los keyframes pueden ser movidos simplemente cambiándolos de posición en la línea de tiempo.

En este caso, movamos este frame hasta la posición 15 en la línea de tiempo y reproduzcamos la animación. Notaremos que esta parte recién en 15 y termina en 30. De la misma forma en que este keyframe puede ser movido, puede ser copiarlo si al moverlo presionamos y mantenemos Shift. En el caso de nuestro ejercicio, copiamos el primer frame a la posición 50 de la línea de tiempo. Intentemos ahora copiar el segundo frame a la posición 70 en la línea de tiempo y reproducimos la animación. Notaremos que la tetera se mueve hacia la derecha, luego a la izquierda y finalmente vuelve a moverse a la derecha. Como se ve en el ejercicio, los keyframes pueden ser movidos y copiados si lo necesitamos, incluso si no tenemos Auto Key activado. Para eliminar un keyframe, simplemente lo seleccionamos y presionamos Suprimir (Supr).

tu10_04b

Si queremos animar la tetera del ejercicio en el modo manual, debemos activar Set Key y luego presionar el ícono de la llave para establecer el primer keyframe en 0, luego movemos el regulador de tiempo a la posición 30, movemos nuestra tetera y una vez que lo hagamos presionamos nuevamente el ícono de la llave, para definir el segundo cuadro clave en 30. Al igual que en el modo automático, podemos mover, copiar o suprimir los keyframes. El modo manual es evidentemente más lento que el modo automático, pero a la larga es el más ventajoso puesto que se tiene mayor control de la animación.

Métodos de edición de keyframe

Sabemos que podemos mover, copiar o suprimir un cuadro clave. Sin embargo, si vemos el ejercicio anterior notaremos que la animación nos queda algo tosca ya que la transformación que le apliquemos será uniforme en todo el objeto. Para resolver esto podemos editar la animación mediante el Curve Editor, el cual nos permitirá editar la forma en que se animan las trayectorias.

Curve Editor: edita las trayectorias de la animación, basándose en los keyframes.

tu10_06

Al abrir Curve Editor, nos aparece el cuadro de arriba. Debemos tener seleccionado el objeto animado para poder ver las trayectorias de la animación. En el caso de nuestra tetera, vemos la curva que representa la animación (curvas rojas) que corresponde al movimiento de la tetera en X:

tu10_06ctu10_06b

Podemos editar esta curva tomando los cuadros clave (en plomo) y seleccionándolos mediante un click. Al igual que en la línea de tiempo, este se pondrá blanco y además aparecerá una línea discontinua con un punto celeste (asa), esta nos permitirá editarlas mediante cuevas bezier si seleccionamos y movemos el punto celeste. Podemos moverlas para ir probando nuestra animación y ver distintos resultados. Si presionamos el botón secundario en el keyframe, podemos acceder al cuadro de la derecha donde podremos definir la posición del keyframe, el value (amplitud de la curva) y el tipo de curvatura que veremos ahora:


     1         2         3      4      5        6        7

1.- Set tangents to Auto: Seleccione keys y elija esta opción en la barra de herramientas Tangentes de key de Track View para definir las tangentes en Auto de forma automática. Un icono desplegable también permite definir en Auto de forma individual las tangentes internas y externas. Mediante la selección de las asas de tangentes Auto, éstas se convierten automáticamente en personalizadas y pueden editarse.

2.- Set tangents to Custom: Define la keyframe en tangentes personalizadas. Seleccionamos la keyframe y luego presionamos este botón si quiere que editar las asas del keyframe. Definimos el tipo de tangente Dentro y fuera por separado utilizando el icono desplegable. Cuando empleamos las asas, utilizamos la tecla MAYÚS para romper la continuidad.

3.- Set tangents to Fast: Define la tangencia de la keyframe en rápido dentro, rápido fuera o ambos, dependiendo de lo que se haya elegido en el icono desplegable.

4.- Set tangents to Slow: Define la tangencia de la keyframe en lento dentro, lento fuera o ambos, dependiendo de lo que se haya elegido en el icono desplegable.

5.- Set tangents to step: Define la tangencia de la keyframe en pasos (steps) dentro, step fuera o ambos, dependiendo de lo que se haya elegido en el icono desplegable. Utilizamos Step para congelar el movimiento de una key a la siguiente.

6.- Set tangents to linear: Define la tangencia de la keyframe en línea dentro, fuera o ambos, dependiendo de lo que se haya elegido en el icono desplegable.

7.- Set tangents to smooth: Define la tangencia de la keyframe en suavizado. Utilizamos esta opción para uniformar el movimiento discontinuo.

Jerarquía y cinemática

En el mundo real los movimientos o rotaciones de muchos objetos dependen de otros a los que están subordinados. Por ejemplo, las ruedas de un auto giran gracias a la rotación del eje a la que están unidas y a su vez este eje puede rotar gracias al motor, etc. Esta relación se conoce como Jerarquía. En 3DSMAX, una jerarquía es una cadena de objetos vinculados entre sí que contienen una relación ascendiente/descendiente. Esto quiere decir que existe un “objeto padre” que es el que manda en la relación y un objeto hijo que está subordinado a este. Si este objeto padre se transforma, lo hará también el objeto hijo. Al igual que en el mundo real, un objeto padre puede tener muchos “objetos hijos” pero los objetos hijos no pueden tener más de un solo padre.

Para crear una jerarquía simplemente presionamos el botón Select and Link (imagen izquierda). Esto nos permitirá crear una jerarquía entre 2 o más objetos.

tu10_08

Seleccionamos el objeto hijo, luego presionamos y mantenemos el botón primario del mouse y arrastramos hasta el objeto padre.

tu10_08b

Así creamos la jerarquía y podemos probarla moviendo o rotando el objeto padre (en el caso de las imágenes del lado derecho el objeto padre es la tetera) y notaremos que la caja también es afectada por la transformación, y esta está subordinada a lo que se haga con la tetera.

Si tenemos seleccionado cualquier objeto que pertenezca a la jerarquía, podemos seleccionar y ver los objetos hijos si presionamos la tecla Av Pag (izquierda), y el objeto padre lo veremos si presionamos Re Pag.

tu10_08c

Si queremos eliminar la jerarquía, simplemente seleccionamos el objeto a desvincular y presionamos el botón Unlink Selection que está al lado del botón Select and Link.

Otra cosa importante es que además tenemos el panel de Hierarchy (izquierda), donde podremos editar los puntos de pivote de los objetos. Esto es importante si queremos, por ejemplo, cambiar el punto de pivote de una primitiva o un modelo 3D para animarlo (por ejemplo, una puerta). Tenemos 3 funciones importantes:

Affect Pivot Only: podremos transformar el punto de pivote del objeto, lo cual nos permitirá ponerlo en cualquier posición y desde ahí transformar el objeto.

tu10_10

Affect Object Only: podremos transformar el objeto sin afectar el punto de pivote original de este.

tu10_10b

Affect Hierarchy Only: podremos transformar la relación jerárquica de ese objeto sin afectar su punto de pivote ni al objeto en sí.

tu10_10c

Podemos activar o desactivar estas funciones simplemente presionando y luego volviendo a presionar el botón correspondiente

En el caso de la Cinemática, esta se divide en 2 partes: Cinemática Directa (Foward Kinematics) y Cinemática Inversa (Inverse Kinematics). La Cinemática Directa es simplemente la forma predeterminada de manipulación de las jerarquías. La Cinemática Inversa es un método de animación que invierte la dirección de manipulación de la relación jerárquica, es decir, si se transforma a los hijos se transforma el objeto padre. Este tipo de cinemática es muy útil para animar seres personajes o complejas jerarquías de huesos, como puede ser el caso de un ser humano.

Gracias a la cinemática y a la jerarquía, podemos por ejemplo animar objetos mediante cámaras simplemente enlazando el target o esta misma a los objetos.

Constraints o Restrictores de animación

Todo lo que se mueve, rota o escala, es decir, todo lo que es posible de animar está manejado por un controlador. Un controlador es un plugin que controla el almacenamiento y la interpolación de todos los valores animados, es decir, gestiona las tareas de animación.

Hay tres tipos de controladores predeterminados y estos son:

Posición: Posición XYZ.
Rotación: XYZ Euler.
Escala: Escala Bézier.

Además contamos con un tipo especial de controlador llamado Restrictor (Constraints) que facilita bastante el proceso de animación. Con los constraints se puede controlar la posición, rotación, y escala de un objeto. Dependiendo de la animación que deseemos realizar dependerá la cantidad de objetos que necesitemos para aplicar un constraint. Hay siete tipos que son:

Attachment Constraint: Asocia la posición de un objeto a la cara de otro:

Surface Constraint: Limita la posición de una superficie 2D a la superficie de otro elemento 3D:

Path constraint: Limita el movimiento de un objeto a lo largo de un recorrido.

Position constraint: Limita la posición de un objeto a la posición de otro:

Link Constraint: Genera uno o más vinculos entre el objeto que tiene la restricción y otros:

LookAt constraint: Limita la orientación de un objeto a la posición de otro:

Orientation constraint: Limita la rotación de un objeto a la rotación de otro:

Dependiendo de qué es lo que queremos animar dependerá el constraint que aplicaremos. Por ejemplo, si queremos animar el recorrido de un automóvil a través de una carretera entonces debemos aplicar Path Constraint ya que este nos permite animar el objeto en torno a un recorrido 2D. En el caso de la Arquitectura, bastará con Path Constraint para animar un recorrido. Realizaremos un sencillo ejercicio donde aplicaremos Path Constraint.

Animando con Path Constaint

tu10_12

Lo primero que haremos es dibujar en la vista top una tetera y un círculo 2D de modo que ambos queden centrados en el origen y que el radio del círculo sea mucho mayor que el tamaño de la tetera. Ahora en la misma vista colocaremos una cámara de tipo target, de tal forma que el objetivo de la cámara esté centrado en el origen. La idea es que todo esto se vea como la imagen:

tu10_12b

Podemos elevar un poco el círculo de tal forma que la altura sea más o menos la mitad de la tetera. Ahora seleccionaremos la cámara e iremos a Animation >> Constraints >> Path Constraint y nos aparecerá una línea discontinua, ahora todo es cosa de seleccionar el círculo y hacer click para aplicar el restrictor.

Notaremos que la cámara está alineada con el círculo, que se han creado 2 keyframes en 0 y 100 y que si reproducimos, notaremos que la cámara ahora orbita en torno a la tetera utilizando el círculo 2D como recorrido. Si queremos, podemos editar el radio del círculo y podemos transformarlo para mejorar la animación de la cámara, o también podemos mover los keyframes creados en la línea de tiempo.

Para ver la animación desde la cámara simplemente tecleamos C en cualquier vista y reproducimos.

Podemos repetir el ejercicio pero esta vez modelando un sencillo vehículo y realizamos los mismos pasos, aunque en ese caso posiblemente el objeto no nos quede bien alineado en el recorrido como podemos ver en la imagen de abajo:

animation001

Podemos resolver esto yendo al cuadro de animación mostrado más arriba y activar las opciones de Follow (seguir) y para que nuestra nave vuele de forma más realista podemos activar Bank (girar en su eje). Esto hará que el objeto siga al recorrido y podremos orientarlo utilizando los Axis X, Y y Z (si la nave nos queda de forma invertida al recorrido podremos invertirla con Flip). En la imagen de abajo, la nave se ha volteado activando follow y luego bank, el Axis se ha modificado a X y luego se ha activado flip para ajustar a la posición correcta:

animation001b

Ahora todo es cosa de reproducir la animación para ver el resultado final:

Los ayudantes o helpers

Los ayudantes son esenciales para la animación de formas complejas ya que son objetos “ficticios” en los cuales podremos aplicarles cualquier relación de jerarquía o algún constraint de animación. Estos son muy utilizados por los animadores cuando queremos no comprometer a los objetos originales con las relaciones o las animaciones o para no crear formas 3D que dificultarían la labor de animación. Los ayudantes se crean en el panel de helpers (imagen derecha) y los más populares son: Dummy, Tape y Point.

Dummy: es un cubo virtual que cumple la función de ser un receptor ya que allí podremos aplicar las restricciones o los vínculos necesarios sin aplicarlos al objeto ya que este pasa a ser el elemento hijo del Dummy. Un Dummy no tiene parámetros modificables.

Point: similar al Dummy pero nos genera una cruz virtual que indica la posición de un punto. Podemos editar el tamaño, o desplegar los ejes del punto.

Tape: es una cinta virtual que nos permitirá acotar los objetos.

Representando la animación

Representar o renderear la animación es tarea sencilla en 3DSMAX, para ello deberemos ir a la opción de Render Setup y en Common nos daremos cuenta que está activada la opción Single. Esto significa que cuando presionemos el botón de render se representará una sola imagen, la cual podremos guardar como imagen de tipo jpg o similar. Esta imagen está por defecto en el frame 0, pero podemos renderear cualquier frame que queramos si antes lo seleccionamos en la línea de tiempo. Para elegir una secuencia de imágenes, tenemos las siguientes opciones:

Active time Segment: selecciona toda la línea de tiempo.

Range: nos permite establecer un rango de animación en la línea de tiempo.

Frames: podemos elegir la cantidad de frames que queramos, de forma similar a cómo elegimos las páginas a imprimir en Word.

En Area to Render podemos elegir el área que se rendereará: View (renderea toda la ventana), select (objeto seleccionado), Region, Crop (área de recorte de la ventana) y Blowup (similar a Crop pero el render utiliza todo el tamaño de imagen).

En la opción Output Size tenemos los diferentes formatos de pantalla, además de los cuadros con los formatos 320 x 240, 720 x 486, 640 x 480 y 800 x 600. El tamaño de la película dependerá de la presentación que queremos realizar, por ejemplo 320 x 240 es ideal para testear la animación de prueba mientras que deberemos renderear en NTSC DV para la animación final si es que queremos presentar una animación que será transmitida por TV, ya que este nos presenta la calidad de DVD.

Si realizamos el render eligiendo una secuencia de imágenes, nos aparecerá un cuadro que nos advertirá que los frames se perderán pues no han sido asignados a un archivo. Esto ocurre porque debemos guardar el archivo antes de realizar el render, pues de otra manera no podremos verlo en el PC una vez rendereados todos los frames. Por ello debemos bajar por la persiana de Common hasta llegar a Render Output y allí presionamos el botón files:

tu10_19

Nos aparecerá un cuadro donde nos pedirá el nombre del archivo a guardar y en el menú de abajo aparecerán los formatos con los que guardaremos la película. Los formatos de Video más populares son AVI y MOV.

tu10_20

Esta opción nos permitirá además guardar la secuencia de imágenes en formatos de imagen como JPG, TIFF o TGA, aunque si lo hacemos nos guardará tantas imágenes como frames tenga la animación. Por ejemplo, si tenemos una animación de 100 frames y guardamos toda la secuencia como jpg y con el nombre de animacion, nos guardará en la carpeta 100 imágenes renombradas como animacion0001.jpg, animacion0002.jpg, etc. Por ello deberemos guardar la película en AVI para que nos cree el archivo de Video.

tu10_21

Una vez que hemos asignado un nombre y el tipo de archivo como AVI, nos aparecerá un cuadro donde elegiremos el compresor para el video. DV video encoder es el mejor para el formato de TV, mientras que Cinepak Codec es ideal para archivos pequeños. Una vez que elegimos el compresor (usualmente Cinepak Codec) damos OK y con esto finalizamos la configuración.

Una vez que creamos nuestro archivo, en Render Output ahora está disponible la opción Save File. Podemos activarlo o desactivarlo si por ejemplo, queremos ver un frame específico y necesitamos renderizar una sola imagen sin que guarde todo el archivo.

Ahora todo es cosa de ejecutar el render y esperar que el programa termine de representar todas las imágenes. Una vez que finalice, vamos a la carpeta donde guardamos el archivo y ya podremos verlo con el reproductor de Windows.

Una cosa importante: el tiempo que demore nuestro render dependerá de la complejidad de la escena y de cómo hayamos aplicado las soluciones de texturizado e iluminación en los modelos. En el caso de escenas 3D muy complejas el tiempo de render será inevitablemente muy largo, por lo que se recomienda renderizar de noche, dejando al PC trabajando “toda la noche” o incluso por algunos días si es necesario.

Este es el fin de este tutorial.

Bibliografía utilizada:

– Tutorial Animation Essentials del profesor Sebastián Huenchual H., Carrera Animación Digital 3D, Instituto DGM.

– 3DSMAX User Guide reference.

– Manuales USERS 3DSMAX por Daniel Venditti. Ediciones MP, Buenos Aires, Argentina.

image_pdfimage_print