SlideShare una empresa de Scribd logo
1 de 58
Modelado y animación
de objetos 2D y 3D
Índice
1 – Modelado y animación 2D
2 – Uso de modelos 2D
3 – Modelado y animación 3D
4 – Uso de modelos 3D
1 – Modelado y animación 2D
Introducción
“El arte es una colaboración entre Dios y el artista, y
mientras menos haga el artista; mejor.” – Andre Gide
(1869 – 1951)
El primer paso es dibujar los personajes para tener una
referencia al animarlo, para ello consideraremos:
 Importancia de un dibujo sólido
 Construcción de un personaje
 Conceptos básicos de la animación
 Animación cíclica
 Herramientas para el dibujo y la animación
Importancia de un dibujo
sólido
 Volumen
 Evitar que los dibujos queden
planos.
 Se piensa en 3D.
 Perspectiva?
 Proporciones
 Cartoon vs. realista.
 No excederse en las
deformaciones.
 No agregar peso. Conservar
el volumen inicial.
Importancia de un dibujo
sólido
 Peso
 El movimiento no es más que
trasladar peso de un lado a
otro.
 Mover el peso con coherencia
es la base para una buena
animación.
 Equilibrio
 Mantener el centro de masa
apoyado para las poses
estáticas.
 Saber romper el equilibrio para
lograr el movimiento.
Construcción de un personaje
 Pasos
 Esqueleto
 Formas básicas
 Refinamiento
 Suavizar curvas
 Limpieza y detalles
 Modelado de la ropa
 Limpieza final
Conceptos básicos de la
animación
 Intercalación
 Proceso automátizable?
 Restringido por la cantidad de cuadros total.
 Key Frames
 Momentos clave de la animación.
 No necesariamente equiespaciadas
en el tiempo.
Animación Cíclica
 Aspectos a tener encuenta
 Loop (primer y último frame deben tener fluidez).
 Balance fluidez vs. cantidad de cuadros.
 Todos son key frames?
 Herramientas? (Onion Skin)
Herramientas para el dibujo y
la animación
 Herramientas comerciales
 Herramientas gratuitas
2 – Uso de modelos 2D
Introducción
“La animación puede explicar lo que sea que la mente del
hombre pueda concebir.” – Walt Disney (1901 – 1966)
Ahora hay que saber cuales cuadros se necesitan para las
animaciones.
 Distintas animaciones de un personaje
 Interacción: programador – artista
 Efecto 3D con movimiento de capas
Distintas animaciones de un
personaje
 Típicamente aparecen:
 Stand (básico)
 Walk / Run
 Jump / Fall
 Knee
 Attack / Action
 Damage / Dead
 Combinaciones
 Que necesita el programador ?
Interacción:
programador – artista
 Que nos exporta el artista ?
 Lista de cuadros (archivos separados) para cada animación
 Formato: calidad, canal alpha (tipicamente png)
 Es importante definir una nomenclatura en los nombres
 Ej: Ken_Stand_1.png, Ken_Stand_2.png, etc...
 Punto de registro en la imagen
 Duración de cada cuadro
Interacción:
programador – artista
 Cajas y Offsets
 El artista tiende a usar cajas que ajusten perfectas a la imagen.
 La ubicación de cada imagen en pantalla quien la define?
 Soluciones:
 Todas las cajas iguales
 Cajas justas pero con números redondos
Referencia
Efecto 3D con movimiento de
capas
Vista 3D
Vista 2D
 Se capturan los conceptos
básicos de una realidad 3D con
perspectiva.
 Se representa en 2D tales
conceptos.
 Evitar puntos de fuga.
 Evitar dependencia entre capas.
3 – Modelado y animación 3D
Introducción
“Un buen plan, violentamente ejecutado ahora, es mejor que un plan
perfecto la semana que viene.” - George S. Patton (1885 - 1945)
Independientemente de la aplicación a usar el proceso de creación y
animación de un modelo tridimensional sigue un plan asociado a su
estructura:
 Plan y diseño
 Modelado
 Texturado
 Animación
Plan y Diseño
 Plan: lo primero es saber que objeto se modelará. Las técnicas y
requerimientos de modelar una persona y un auto son distintas.
 Ej.: proporciones, la persona debe ser proporcionada con
respecto a sí misma, el auto con respecto a una persona que,
eventualmente, pueda conducirlo.
 Diseño: conviene hacer un borrador en papel del objeto a modelar,
especialmente si es un personaje que aparecerá prominentemente
frente al usuario. El borrador debería rebosar detalle, las
limitaciones del modelo se encargarán de reducir su complejidad.
Modelado
 El modelado siempre parte de un modelo base. Al modelar se le
agrega detalle hasta lograr la terminación deseada.
 El modelo base puede ser tan complejo como se desee. Si se
posee una estructura básica humana, se le puede agregar detalle
para delinear un personaje en particular.
 Si se empieza de cero, la técnica es la misma. Se utiliza un poliedro
como base, por ej. un cubo, y se le agrega complejidad hasta
terminar el modelo.
Modelado
 El plan es modelar un hombre
de pan de jengibre,
‘gingerbread man’, así
podremos obviar el proceso el
diseño.
 El modelo se puede realizar en
cualquier programa con el que
se esté familiarizado, en este
caso usaremos Blender.
 Los programas de modelado
disponen de herramientas
para facilitar la realización del
modelo.
Modelado
 Para construir el cuerpo usaremos
tres herramientas:
 subdivisión: a partir de un cubo,
agregaremos un vértice al
medio de cada arista
 espejo: modelaremos sólo
medio cuerpo, la otra mitad se
modela automáticamente
 extrusión: creamos nuevos
polígonos estirando caras (en
este caso) del original
Modelado
 La cabeza, un simple cubo,
debe ubicarse conectada al
cuerpo. Para ello se utiliza una
traslación.
Las traslaciones pueden
realizarse fijando un eje.
 En la imagen, el cubo sólo se
traslada a través de la línea
vertical de color claro.
Modelado
 La herramienta subsurf
permite refinar el modelo para
que se asemeje a una figura
humana.
 El programa automáticamente
agrega vértices, aumentando
la densidad de la malla. La
densidad varía según el nivel
de detalle que se requiera.
Modelado
 Una vez aumentada la
densidad de la malla, el
modelo se puede suavizar.
Para ello, el material se asigna
como “suave”.
 Puede ser necesario
recalcular las normales de las
caras si hay defectos en la
superficie.
Modelado
 El modelo necesita
achatarse si desea
aproximarse a una
galleta.
 Es necesario escalar
horizontalmente el
modelo.
Al escalar también se
puede fijar un eje sobre
el que se realiza la
operación.
Modelado
 Para tener una idea de cómo
está quedando el modelo se
puede armar una escena:
 agregamos un plano como
piso
 configuramos la cámara
para que siga al modelo
 configuramos un par de
luces, spot y hemi, para
que iluminen al modelo.
Usar dos luces permite
simular la luz real con
mayor fidelidad.
Modelado
 Para dar mayor verosimilitud al
modelo agregaremos ojos,
boca y botones.
 La herramienta para duplicar
permitirá, a partir de un ojo
(una esfera escalada
horizontalmente), crear el otro
ojo y los botones. Las copias
se ubican con traslaciones.
 Merece especial mención el
uso de la herramienta spin dup
(spin duplicate) para, a partir
de una esfera, ubicar sus
copias automáticamente y
generar la boca.
Texturado
 El uso de materiales permite
agregar color al modelo.
 Necesitamos seis materiales:
 cuerpo de galleta
 ojos de chocolate
 boca de azúcar
 tres botones de azúcar de
diferente color
 El uso de ‘bump maps’ (mapas
de altura) permite simular la
rugosidad de los elementos.
GingerBread Chocolate WhiteSugar
RedSugar YellowSugar GreenSugar
Texturado
 Los ‘bump maps’ consisten en
texturas que modifican la dirección
de la normal.
Utilizamos dos texturas:
 ‘stucci’ con ruido suave, para el
cuerpo de galleta
 ruido estándar, para el azúcar.
 Una textura se puede asociar a
muchos otros elementos del
modelo.
 Para mejorar la apariencia de
galleta usaremos la textura de
ruido estándar para modificar la
reflectividad del cuerpo.
Texturado
Animación
 Para animar el modelo se
necesita una armazón o
esqueleto.
 Cada hueso corresponde a
un miembro del modelo.
 Cada pierna es una
cadena: dos o más huesos
unidos.
 El sufijo ‘.L’, ‘.R’ en el nombre
de los huesos facilitará la
animación.
Animación
 Ahora hay que asignar los
vértices que cada hueso
deformará.
Blender puede hacerlo
automáticamente, pero en
general, es necesario
asignarlos a mano.
 Para mejorar el control de la
deformación del modelo es
recomendable aplicar el
modificador subsurf. Así se
puede trabajar sobre los
vértices de la malla suavizada.
Animación
 La diferencia entre usar la malla
simple y la densa se puede ver en
los grupos de vértices que están
seleccionados.
Izquierda: simple; derecha: densa
Animación
 Cinemática inversa
 Se define la posición del último
hueso en la cadena, conocido
como ‘efectuador final’.
 El resto de los huesos asume
una posición que evite
interrupciones en la cadena.
 Las posiciones son
automáticamente calculadas
por el ‘IK solver’.
 Esto permite ubicar las manos y
pies con mayor precisión.
 Cinemática directa
 Se mueve el primer hueso
de la cadena, los demás
siguen su movimiento.
 Los huesos, a excepción del
primero, sólo pueden ser
rotados con respecto al
anterior.
 Es fácil de seguir pero
complica el ubicar el último
hueso de la cadena.
Hay dos formas de animar un modelo:
Animación
 Usaremos cinemática directa
para lograr que el modelo
camine.
 Definiremos cinco cuadros de
la animación, Blender
automáticamente rellenará los
demás cuadros para lograr
una animación fluida.
 Para crear los cuadros
inversos, Blender cambia las
rotaciones de los huesos con
sufijo ‘.L’ por ‘.R’ y viceversa.
 Los cuadros serán:
 1: dando un paso con la
pierna izquierda
 11: apoyando los dos pies,
izquierdo adelante
 21: dando un paso con la
pierna derecha, inverso del
cuadro 1
 31: apoyando los dos pies,
derecho adelante, inverso
del cuadro 11
 41: fin del ciclo, igual a 1
Animación
cuadro
1, 41
cuadro
11
cuadro
21
cuadro
31
Animación
 Falta agregar una traslación a
los cuadros de animación para
que pueda desplazarse.
 Si deseáramos realizar un
video con Blender, es
imprescindible para mostrar el
movimiento.
 Si el modelo será exportado a
un motor gráfico, este puede
encargarse de desplazar el
modelo y sólo se necesita la
animación.
Animación
cuadro
1, 41
cuadro
11
cuadro
21
cuadro
31
4 – Uso de modelos 3D
Introducción
“Finalmente aprendí que quiere decir ‘compatible hacía arriba’.
Significa que podemos conservar todos nuestros viejos errores” –
Dennie van Tassel
Para utilizar un modelo se necesita elegir una API (Application
Programable Interface) y un formato para exportar el modelo.
 ¿Qué es OpenGL?
 ¿Qué es un 3ds?
 ¿Cómo cargar un 3ds en OpenGL?
¿Qué es OpenGL?
 OpenGL es una interface de
software para hardware gráfico
independiente de la
plataforma.
 Consiste en 150 comandos
diferentes para especificar los
objetos y operaciones
necesarias para crear
aplicaciones 3D interactivas.
¿Qué es OpenGL?
 Se divide en tres partes funcionales:
 La biblioteca OpenGL, que proporciona todo lo necesario para
acceder a las funciones de dibujado de OpenGL.
 La biblioteca GLU (OpenGL Utility Library), una librería de
utilidades que proporciona acceso rápido a algunas de las
funciones más comunes de OpenGL, a través de comandos de
nivel inferior de OpenGL.
 GLX (OpenGL Extension to the X Window System) proporciona
un acceso a OpenGL para poder interactuar con un sistema de
ventanas X Window, y está incluido en la propia implementación
de OpenGL (su equivalente en Windows es la librería
WGL,externa a la implementación de OpenGL).
¿Qué es OpenGL?
 Cada objeto esta especificado por vértices:
 glVertex3f (2.0, 4.1, 6.0);
// especifica un vértice en la coord. x,y,z (2.0, 4.1, 6.0)
// “3f” significa 3 coordenadas flotantes.
 glVertex2i (4, 5); // 2 enteros para x, y. z = 0.
 glVertex3fv (vector); // float vector[3] = {5.0, 3.2, 5.0};
 Color actual afecta todos los vértices
 glColor3f (0.0, 0.5, 1.0);
 Los vértices se especifican solamente entre glBegin(mode) y
glEnd(), generalmente se especifican en un orden de agujas del
reloj.
 glBegin (GL_TRIANGLES);
glVertex2i (0, 0);
glVertex2i (2, 0);
glVertex2i (1, 1);
glEnd();
¿Qué es un 3ds?
 Un archivo 3ds contiene la información para describir los detalles de
la escena que compone.
 Esta formado por una serie de bloques llamados ‘chunks’ que
contienen todo lo necesario para describir la escena:
 Nombre de cada objeto.
 Coordenadas de los vértices
 Coordenadas para mapeo.
 Lista de polígonos
 Colores de las caras
 Keyframes de la animación
¿Qué es un 3ds?
 Un chunk esta formado por 4 campos:
 Identificador: Número hexadecimal de 2 bytes de largo que
identifica al chunk.
 Largo del chunk: Número de 4 bytes que es la suma del largo
del chunk y de los sub-chunks que contiene.
 Chunk data: Contiene la informacion de la escena.
 Sub-chunks
¿Qué es un 3ds?
MAIN CHUNK 0x4D4D
3D EDITOR CHUNK 0x3D3D
OBJECT BLOCK 0x4000
TRIANGULAR MESH 0x4100
VERTICES LIST 0x4110
FACES DESCRIPTION 0x4120
FACES MATERIAL 0x4130
MAPPING COORDINATES LIST 0x4140
SMOOTHING GROUP LIST 0x4150
LOCAL COORDINATES SYSTEM 0x4160
LIGHT 0x4600
SPOTLIGHT 0x4610
CAMERA 0x4700
¿Qué es un 3ds?
MATERIAL BLOCK 0xAFFF
MATERIAL NAME 0xA000
AMBIENT COLOR 0xA010
DIFFUSE COLOR 0xA020
SPECULAR COLOR 0xA030
TEXTURE MAP 1 0xA200
BUMP MAP 0xA230
REFLECTION MAP 0xA220
[SUB CHUNKS FOR EACH MAP]
MAPPING FILENAME 0xA300
MAPPING PARAMETERS 0xA351
KEYFRAMER CHUNK 0xB000
MESH INFORMATION BLOCK 0xB002
SPOT LIGHT INFORMATION BLOCK 0xB007
FRAMES (START AND END) 0xB008
OBJECT NAME 0xB010
OBJECT PIVOT POINT 0xB013
POSITION TRACK 0xB020
ROTATION TRACK 0xB021
SCALE TRACK 0xB022
¿Cómo cargar un 3ds en
OpenGL?
 Implementar un loop que
procese todo el archivo.
 En cada iteracción leer el id
del chunk y el largo.
 Analizar el contenido del
chunk.
 Saltear los sub-chunks que no
necesito leer.
¿Cómo cargar un 3ds en
OpenGL?
 Como primer paso debo definir la cantidad de vértices y polígonos
que se van a manejar:
 #define MAX_VERTICES 8000
 #define MAX_POLYGONS 8000
¿Cómo cargar un 3ds en
OpenGL?
 Luego debo crear la rutina para cargar el 3ds:
 char Load3DS (obj_type_ptr p_object, char *p_filename)
{
int i;
FILE *l_file;
unsigned short l_chunk_id;
unsigned int l_chunk_length;
unsigned char l_char;
unsigned short l_qty;
unsigned short l_face_flags;
 Esto acepta dos parametros: puntero a la estructura de datos y
nombre del archivo.
¿Cómo cargar un 3ds en
OpenGL?
 El paso siguiente es abrir el archivo y leerlo.
 Según el identificador leido del bloque de datos se leerá de
diferente forma.
 Al leer cada chunk se debe leer los datos asociados a el y la
información que brindan los chunks hijos.
¿Cómo cargar un 3ds en
OpenGL?
 A continuación se listan algunos de los chunks importantes para la
lectura del 3DS:
 OBJECT BLOCK contiene el nombre del objeto.
 VERTICESLIST contiene todos los vertices del modelo.
 FACESDESCRIPTION contiene la lista de polígonos.
 MAPPING COORDINATES LIST contiene las coordenadas. .
¿Cómo cargar un 3ds en
OpenGL?
 Luego de leer todos los chunks
del 3ds se cierra el archivo y el
modelo quedara cargado.
 El paso final es utilizar la rutina
para cargar el modelo:
 Load3DS
(&object,"spaceship.3ds");
 Y por último en la función display
cargar la información del objeto.
¿Cómo cargar un 3ds en
OpenGL?
 Ejemplo de carga de un vértice:
 // Texture coordinates of the first vertex
glTexCoord2f( object.mapcoord[ object.polygon[l_index].a ].u,
object.mapcoord[ object.polygon[l_index].a ].v);
 // Coordinates of the first vertex
glVertex3f( object.vertex[ object.polygon[l_index].a ].x,
object.vertex[ object.polygon[l_index].a ].y,
object.vertex[ object.polygon[l_index].a ].z);
¿Cómo cargar un 3ds en
OpenGL?
 Finalmente, para animar una
figura se debe:
 Actualizar los datos de la
figura
 Borrar la pantalla
 Dibujar la figura
 Repetir
¿Preguntas?
Bibliografía
 Conceptos básicos del dibujo: http://www.dibunet.com/indicetutorial.php
 Conceptos básicos de Animación:
http://animation.about.com/od/otherusefultutorials/u/animationbasics.htm
 Street Fighter Sprites: http://www.zweifuss.com/
 Clone Wars Game:
http://theclonewars.cartoonnetwork.com/games/game_02.html
 Modeling a Character in 3DS Max, Paul Steed
 Blender Manual: http://wiki.blender.org/index.php/Manual/Manual
 Blender 2.47: www.blender.org
 3D Art Tutorial: http://www.3dfantasies.info/res.html
 DAZ Studio: www.daz3d.com
 OpenGL Documentation: http://www.opengl.org/documentation
 http://www.exa.unicen.edu.ar/catedras/visdat2/tutoriales.html
 Ingeniería de Sistemas y Computación Universidad Tecnológica de Pereira
 Revista Electrónica Neoteo: http://www.neoteo.com/
 Tutorial de como cargar un archivo 3DS:
http://www.spacesimulator.net/tut4_3dsloader.html

Más contenido relacionado

La actualidad más candente

Animación por computadora
Animación por computadoraAnimación por computadora
Animación por computadoraNilson Negrete
 
Animacion vectorial 2D en Software Libre
Animacion vectorial 2D en Software LibreAnimacion vectorial 2D en Software Libre
Animacion vectorial 2D en Software LibreSyra Lacruz
 
Proceso de crear una pelicula animada (Pixar Studios)
Proceso de crear una pelicula animada (Pixar Studios)Proceso de crear una pelicula animada (Pixar Studios)
Proceso de crear una pelicula animada (Pixar Studios)Deyvi De La Cruz Ambrosio
 
TODO SOBRE ANIMACIÓN 2D y 3D
TODO SOBRE ANIMACIÓN 2D y 3DTODO SOBRE ANIMACIÓN 2D y 3D
TODO SOBRE ANIMACIÓN 2D y 3DAndrea Carolina
 
Definicion de animacion
Definicion de animacionDefinicion de animacion
Definicion de animacionYenny-love
 
Aplicaciones Multimediales- Animacion
Aplicaciones Multimediales- AnimacionAplicaciones Multimediales- Animacion
Aplicaciones Multimediales- AnimacionNelo Javier
 
Animacion computarizada
Animacion computarizadaAnimacion computarizada
Animacion computarizadajuancho03
 
Animación por computadora nusero
Animación por computadora nuseroAnimación por computadora nusero
Animación por computadora nuseroNilson Negrete
 
La Animación En Informatica.
La Animación En Informatica.La Animación En Informatica.
La Animación En Informatica.Wendy Barco
 
Animacion digital mapa tematico u2
Animacion digital mapa tematico u2Animacion digital mapa tematico u2
Animacion digital mapa tematico u2paoloarevaloortiz
 
Tecnica de animacion
Tecnica de animacionTecnica de animacion
Tecnica de animacionAdriana P
 
Presentacion efectos especiales en el cine
Presentacion efectos especiales  en el cinePresentacion efectos especiales  en el cine
Presentacion efectos especiales en el cineari27arias
 
Ejercicio de presentación: Creación de una película animada en pixar
Ejercicio de presentación: Creación de una película animada en pixarEjercicio de presentación: Creación de una película animada en pixar
Ejercicio de presentación: Creación de una película animada en pixarMario Luna
 

La actualidad más candente (20)

Animación por computadora
Animación por computadoraAnimación por computadora
Animación por computadora
 
Animacion vectorial 2D en Software Libre
Animacion vectorial 2D en Software LibreAnimacion vectorial 2D en Software Libre
Animacion vectorial 2D en Software Libre
 
Proceso de crear una pelicula animada (Pixar Studios)
Proceso de crear una pelicula animada (Pixar Studios)Proceso de crear una pelicula animada (Pixar Studios)
Proceso de crear una pelicula animada (Pixar Studios)
 
TODO SOBRE ANIMACIÓN 2D y 3D
TODO SOBRE ANIMACIÓN 2D y 3DTODO SOBRE ANIMACIÓN 2D y 3D
TODO SOBRE ANIMACIÓN 2D y 3D
 
Tipos de animacion
Tipos de animacionTipos de animacion
Tipos de animacion
 
La animacion
La animacionLa animacion
La animacion
 
Definicion de animacion
Definicion de animacionDefinicion de animacion
Definicion de animacion
 
Aplicaciones Multimediales- Animacion
Aplicaciones Multimediales- AnimacionAplicaciones Multimediales- Animacion
Aplicaciones Multimediales- Animacion
 
Tipos de animacion!
Tipos de animacion!Tipos de animacion!
Tipos de animacion!
 
Animacion computarizada
Animacion computarizadaAnimacion computarizada
Animacion computarizada
 
Animación por computadora nusero
Animación por computadora nuseroAnimación por computadora nusero
Animación por computadora nusero
 
Clasificación de animacion
Clasificación de animacionClasificación de animacion
Clasificación de animacion
 
Animación Digital
Animación Digital Animación Digital
Animación Digital
 
La Animación En Informatica.
La Animación En Informatica.La Animación En Informatica.
La Animación En Informatica.
 
Animación
AnimaciónAnimación
Animación
 
Animacion digital mapa tematico u2
Animacion digital mapa tematico u2Animacion digital mapa tematico u2
Animacion digital mapa tematico u2
 
Tecnica de animacion
Tecnica de animacionTecnica de animacion
Tecnica de animacion
 
Guion
GuionGuion
Guion
 
Presentacion efectos especiales en el cine
Presentacion efectos especiales  en el cinePresentacion efectos especiales  en el cine
Presentacion efectos especiales en el cine
 
Ejercicio de presentación: Creación de una película animada en pixar
Ejercicio de presentación: Creación de una película animada en pixarEjercicio de presentación: Creación de una película animada en pixar
Ejercicio de presentación: Creación de una película animada en pixar
 

Destacado

Animación Digital
Animación DigitalAnimación Digital
Animación Digitalkikl
 
El Proceso de Animación
El Proceso de AnimaciónEl Proceso de Animación
El Proceso de AnimaciónAlfredo Salazar
 
Blender
BlenderBlender
BlenderAroa
 
Modelado Y AnimacióN De Objetos 2 D Y 3 D
Modelado Y AnimacióN De Objetos 2 D Y 3 DModelado Y AnimacióN De Objetos 2 D Y 3 D
Modelado Y AnimacióN De Objetos 2 D Y 3 Dsnake87
 
Historia de la animación
Historia de la animaciónHistoria de la animación
Historia de la animaciónnicolasvvrr
 
Manual de blender creacion de un vaso en 3 d
Manual de blender creacion de un vaso en 3 dManual de blender creacion de un vaso en 3 d
Manual de blender creacion de un vaso en 3 dMauricio Aguilar
 
ANIMACION
ANIMACIONANIMACION
ANIMACIONpaula
 
Prueba powerpoint
Prueba powerpointPrueba powerpoint
Prueba powerpointijdelgad
 
Rotación utilizando cuaterniones
Rotación utilizando cuaternionesRotación utilizando cuaterniones
Rotación utilizando cuaternionesCarlos Zúñiga
 
Blender Guía de Supervivencia
Blender Guía de SupervivenciaBlender Guía de Supervivencia
Blender Guía de SupervivenciaGrupo I.D.E.A
 
Definición y Análisis de la Observación
Definición y Análisis de la Observación Definición y Análisis de la Observación
Definición y Análisis de la Observación nadia_avelar27
 

Destacado (20)

Clase6 Animacion 3D
Clase6 Animacion 3DClase6 Animacion 3D
Clase6 Animacion 3D
 
Animación Digital
Animación DigitalAnimación Digital
Animación Digital
 
El Proceso de Animación
El Proceso de AnimaciónEl Proceso de Animación
El Proceso de Animación
 
Blender
BlenderBlender
Blender
 
Modelado Y AnimacióN De Objetos 2 D Y 3 D
Modelado Y AnimacióN De Objetos 2 D Y 3 DModelado Y AnimacióN De Objetos 2 D Y 3 D
Modelado Y AnimacióN De Objetos 2 D Y 3 D
 
Historia de la animación
Historia de la animaciónHistoria de la animación
Historia de la animación
 
Manual blender
Manual blenderManual blender
Manual blender
 
Guia blender
Guia blenderGuia blender
Guia blender
 
Manual de blender creacion de un vaso en 3 d
Manual de blender creacion de un vaso en 3 dManual de blender creacion de un vaso en 3 d
Manual de blender creacion de un vaso en 3 d
 
ANIMACION
ANIMACIONANIMACION
ANIMACION
 
Presentación2
Presentación2Presentación2
Presentación2
 
La animación 3 d
La animación 3 dLa animación 3 d
La animación 3 d
 
Prueba powerpoint
Prueba powerpointPrueba powerpoint
Prueba powerpoint
 
Rotación utilizando cuaterniones
Rotación utilizando cuaternionesRotación utilizando cuaterniones
Rotación utilizando cuaterniones
 
Blender Guía de Supervivencia
Blender Guía de SupervivenciaBlender Guía de Supervivencia
Blender Guía de Supervivencia
 
Roteiro de estudos_pf
Roteiro de estudos_pfRoteiro de estudos_pf
Roteiro de estudos_pf
 
Cinemática para un personaje
Cinemática para un personajeCinemática para un personaje
Cinemática para un personaje
 
Definición y Análisis de la Observación
Definición y Análisis de la Observación Definición y Análisis de la Observación
Definición y Análisis de la Observación
 
Animacion en 3 d
Animacion en 3 dAnimacion en 3 d
Animacion en 3 d
 
Animación 3D
Animación 3DAnimación 3D
Animación 3D
 

Similar a ANIMACION 3D

Similar a ANIMACION 3D (20)

Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Taller sketch up
Taller sketch upTaller sketch up
Taller sketch up
 
Ejercicios paso a paso
Ejercicios paso a pasoEjercicios paso a paso
Ejercicios paso a paso
 
Hugo hansen-motorcycle
Hugo hansen-motorcycleHugo hansen-motorcycle
Hugo hansen-motorcycle
 
Flash conceptos basicos
Flash conceptos basicosFlash conceptos basicos
Flash conceptos basicos
 
Sketchup.
Sketchup.Sketchup.
Sketchup.
 
Guia 5 para 10 y 11
Guia 5 para 10 y 11Guia 5 para 10 y 11
Guia 5 para 10 y 11
 
Dibujo animado
Dibujo animadoDibujo animado
Dibujo animado
 
PHIXR
PHIXRPHIXR
PHIXR
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Sketchup.
Sketchup.Sketchup.
Sketchup.
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Comandos
ComandosComandos
Comandos
 
Herramientas character
Herramientas characterHerramientas character
Herramientas character
 
Mod5
Mod5Mod5
Mod5
 
Introducción a la animacion en 3 d
Introducción  a la animacion en 3 dIntroducción  a la animacion en 3 d
Introducción a la animacion en 3 d
 
Presentación de modelo 3 d
Presentación de modelo 3 dPresentación de modelo 3 d
Presentación de modelo 3 d
 

Último

Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 

Último (20)

Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 

ANIMACION 3D

  • 1. Modelado y animación de objetos 2D y 3D
  • 2. Índice 1 – Modelado y animación 2D 2 – Uso de modelos 2D 3 – Modelado y animación 3D 4 – Uso de modelos 3D
  • 3. 1 – Modelado y animación 2D
  • 4. Introducción “El arte es una colaboración entre Dios y el artista, y mientras menos haga el artista; mejor.” – Andre Gide (1869 – 1951) El primer paso es dibujar los personajes para tener una referencia al animarlo, para ello consideraremos:  Importancia de un dibujo sólido  Construcción de un personaje  Conceptos básicos de la animación  Animación cíclica  Herramientas para el dibujo y la animación
  • 5. Importancia de un dibujo sólido  Volumen  Evitar que los dibujos queden planos.  Se piensa en 3D.  Perspectiva?  Proporciones  Cartoon vs. realista.  No excederse en las deformaciones.  No agregar peso. Conservar el volumen inicial.
  • 6. Importancia de un dibujo sólido  Peso  El movimiento no es más que trasladar peso de un lado a otro.  Mover el peso con coherencia es la base para una buena animación.  Equilibrio  Mantener el centro de masa apoyado para las poses estáticas.  Saber romper el equilibrio para lograr el movimiento.
  • 7. Construcción de un personaje  Pasos  Esqueleto  Formas básicas  Refinamiento  Suavizar curvas  Limpieza y detalles  Modelado de la ropa  Limpieza final
  • 8. Conceptos básicos de la animación  Intercalación  Proceso automátizable?  Restringido por la cantidad de cuadros total.  Key Frames  Momentos clave de la animación.  No necesariamente equiespaciadas en el tiempo.
  • 9. Animación Cíclica  Aspectos a tener encuenta  Loop (primer y último frame deben tener fluidez).  Balance fluidez vs. cantidad de cuadros.  Todos son key frames?  Herramientas? (Onion Skin)
  • 10. Herramientas para el dibujo y la animación  Herramientas comerciales  Herramientas gratuitas
  • 11. 2 – Uso de modelos 2D
  • 12. Introducción “La animación puede explicar lo que sea que la mente del hombre pueda concebir.” – Walt Disney (1901 – 1966) Ahora hay que saber cuales cuadros se necesitan para las animaciones.  Distintas animaciones de un personaje  Interacción: programador – artista  Efecto 3D con movimiento de capas
  • 13. Distintas animaciones de un personaje  Típicamente aparecen:  Stand (básico)  Walk / Run  Jump / Fall  Knee  Attack / Action  Damage / Dead  Combinaciones  Que necesita el programador ?
  • 14. Interacción: programador – artista  Que nos exporta el artista ?  Lista de cuadros (archivos separados) para cada animación  Formato: calidad, canal alpha (tipicamente png)  Es importante definir una nomenclatura en los nombres  Ej: Ken_Stand_1.png, Ken_Stand_2.png, etc...  Punto de registro en la imagen  Duración de cada cuadro
  • 15. Interacción: programador – artista  Cajas y Offsets  El artista tiende a usar cajas que ajusten perfectas a la imagen.  La ubicación de cada imagen en pantalla quien la define?  Soluciones:  Todas las cajas iguales  Cajas justas pero con números redondos Referencia
  • 16. Efecto 3D con movimiento de capas Vista 3D Vista 2D  Se capturan los conceptos básicos de una realidad 3D con perspectiva.  Se representa en 2D tales conceptos.  Evitar puntos de fuga.  Evitar dependencia entre capas.
  • 17. 3 – Modelado y animación 3D
  • 18. Introducción “Un buen plan, violentamente ejecutado ahora, es mejor que un plan perfecto la semana que viene.” - George S. Patton (1885 - 1945) Independientemente de la aplicación a usar el proceso de creación y animación de un modelo tridimensional sigue un plan asociado a su estructura:  Plan y diseño  Modelado  Texturado  Animación
  • 19. Plan y Diseño  Plan: lo primero es saber que objeto se modelará. Las técnicas y requerimientos de modelar una persona y un auto son distintas.  Ej.: proporciones, la persona debe ser proporcionada con respecto a sí misma, el auto con respecto a una persona que, eventualmente, pueda conducirlo.  Diseño: conviene hacer un borrador en papel del objeto a modelar, especialmente si es un personaje que aparecerá prominentemente frente al usuario. El borrador debería rebosar detalle, las limitaciones del modelo se encargarán de reducir su complejidad.
  • 20. Modelado  El modelado siempre parte de un modelo base. Al modelar se le agrega detalle hasta lograr la terminación deseada.  El modelo base puede ser tan complejo como se desee. Si se posee una estructura básica humana, se le puede agregar detalle para delinear un personaje en particular.  Si se empieza de cero, la técnica es la misma. Se utiliza un poliedro como base, por ej. un cubo, y se le agrega complejidad hasta terminar el modelo.
  • 21. Modelado  El plan es modelar un hombre de pan de jengibre, ‘gingerbread man’, así podremos obviar el proceso el diseño.  El modelo se puede realizar en cualquier programa con el que se esté familiarizado, en este caso usaremos Blender.  Los programas de modelado disponen de herramientas para facilitar la realización del modelo.
  • 22. Modelado  Para construir el cuerpo usaremos tres herramientas:  subdivisión: a partir de un cubo, agregaremos un vértice al medio de cada arista  espejo: modelaremos sólo medio cuerpo, la otra mitad se modela automáticamente  extrusión: creamos nuevos polígonos estirando caras (en este caso) del original
  • 23. Modelado  La cabeza, un simple cubo, debe ubicarse conectada al cuerpo. Para ello se utiliza una traslación. Las traslaciones pueden realizarse fijando un eje.  En la imagen, el cubo sólo se traslada a través de la línea vertical de color claro.
  • 24. Modelado  La herramienta subsurf permite refinar el modelo para que se asemeje a una figura humana.  El programa automáticamente agrega vértices, aumentando la densidad de la malla. La densidad varía según el nivel de detalle que se requiera.
  • 25. Modelado  Una vez aumentada la densidad de la malla, el modelo se puede suavizar. Para ello, el material se asigna como “suave”.  Puede ser necesario recalcular las normales de las caras si hay defectos en la superficie.
  • 26. Modelado  El modelo necesita achatarse si desea aproximarse a una galleta.  Es necesario escalar horizontalmente el modelo. Al escalar también se puede fijar un eje sobre el que se realiza la operación.
  • 27. Modelado  Para tener una idea de cómo está quedando el modelo se puede armar una escena:  agregamos un plano como piso  configuramos la cámara para que siga al modelo  configuramos un par de luces, spot y hemi, para que iluminen al modelo. Usar dos luces permite simular la luz real con mayor fidelidad.
  • 28. Modelado  Para dar mayor verosimilitud al modelo agregaremos ojos, boca y botones.  La herramienta para duplicar permitirá, a partir de un ojo (una esfera escalada horizontalmente), crear el otro ojo y los botones. Las copias se ubican con traslaciones.  Merece especial mención el uso de la herramienta spin dup (spin duplicate) para, a partir de una esfera, ubicar sus copias automáticamente y generar la boca.
  • 29. Texturado  El uso de materiales permite agregar color al modelo.  Necesitamos seis materiales:  cuerpo de galleta  ojos de chocolate  boca de azúcar  tres botones de azúcar de diferente color  El uso de ‘bump maps’ (mapas de altura) permite simular la rugosidad de los elementos. GingerBread Chocolate WhiteSugar RedSugar YellowSugar GreenSugar
  • 30. Texturado  Los ‘bump maps’ consisten en texturas que modifican la dirección de la normal. Utilizamos dos texturas:  ‘stucci’ con ruido suave, para el cuerpo de galleta  ruido estándar, para el azúcar.  Una textura se puede asociar a muchos otros elementos del modelo.  Para mejorar la apariencia de galleta usaremos la textura de ruido estándar para modificar la reflectividad del cuerpo.
  • 32. Animación  Para animar el modelo se necesita una armazón o esqueleto.  Cada hueso corresponde a un miembro del modelo.  Cada pierna es una cadena: dos o más huesos unidos.  El sufijo ‘.L’, ‘.R’ en el nombre de los huesos facilitará la animación.
  • 33. Animación  Ahora hay que asignar los vértices que cada hueso deformará. Blender puede hacerlo automáticamente, pero en general, es necesario asignarlos a mano.  Para mejorar el control de la deformación del modelo es recomendable aplicar el modificador subsurf. Así se puede trabajar sobre los vértices de la malla suavizada.
  • 34. Animación  La diferencia entre usar la malla simple y la densa se puede ver en los grupos de vértices que están seleccionados. Izquierda: simple; derecha: densa
  • 35. Animación  Cinemática inversa  Se define la posición del último hueso en la cadena, conocido como ‘efectuador final’.  El resto de los huesos asume una posición que evite interrupciones en la cadena.  Las posiciones son automáticamente calculadas por el ‘IK solver’.  Esto permite ubicar las manos y pies con mayor precisión.  Cinemática directa  Se mueve el primer hueso de la cadena, los demás siguen su movimiento.  Los huesos, a excepción del primero, sólo pueden ser rotados con respecto al anterior.  Es fácil de seguir pero complica el ubicar el último hueso de la cadena. Hay dos formas de animar un modelo:
  • 36. Animación  Usaremos cinemática directa para lograr que el modelo camine.  Definiremos cinco cuadros de la animación, Blender automáticamente rellenará los demás cuadros para lograr una animación fluida.  Para crear los cuadros inversos, Blender cambia las rotaciones de los huesos con sufijo ‘.L’ por ‘.R’ y viceversa.  Los cuadros serán:  1: dando un paso con la pierna izquierda  11: apoyando los dos pies, izquierdo adelante  21: dando un paso con la pierna derecha, inverso del cuadro 1  31: apoyando los dos pies, derecho adelante, inverso del cuadro 11  41: fin del ciclo, igual a 1
  • 38. Animación  Falta agregar una traslación a los cuadros de animación para que pueda desplazarse.  Si deseáramos realizar un video con Blender, es imprescindible para mostrar el movimiento.  Si el modelo será exportado a un motor gráfico, este puede encargarse de desplazar el modelo y sólo se necesita la animación.
  • 40. 4 – Uso de modelos 3D
  • 41. Introducción “Finalmente aprendí que quiere decir ‘compatible hacía arriba’. Significa que podemos conservar todos nuestros viejos errores” – Dennie van Tassel Para utilizar un modelo se necesita elegir una API (Application Programable Interface) y un formato para exportar el modelo.  ¿Qué es OpenGL?  ¿Qué es un 3ds?  ¿Cómo cargar un 3ds en OpenGL?
  • 42. ¿Qué es OpenGL?  OpenGL es una interface de software para hardware gráfico independiente de la plataforma.  Consiste en 150 comandos diferentes para especificar los objetos y operaciones necesarias para crear aplicaciones 3D interactivas.
  • 43. ¿Qué es OpenGL?  Se divide en tres partes funcionales:  La biblioteca OpenGL, que proporciona todo lo necesario para acceder a las funciones de dibujado de OpenGL.  La biblioteca GLU (OpenGL Utility Library), una librería de utilidades que proporciona acceso rápido a algunas de las funciones más comunes de OpenGL, a través de comandos de nivel inferior de OpenGL.  GLX (OpenGL Extension to the X Window System) proporciona un acceso a OpenGL para poder interactuar con un sistema de ventanas X Window, y está incluido en la propia implementación de OpenGL (su equivalente en Windows es la librería WGL,externa a la implementación de OpenGL).
  • 44. ¿Qué es OpenGL?  Cada objeto esta especificado por vértices:  glVertex3f (2.0, 4.1, 6.0); // especifica un vértice en la coord. x,y,z (2.0, 4.1, 6.0) // “3f” significa 3 coordenadas flotantes.  glVertex2i (4, 5); // 2 enteros para x, y. z = 0.  glVertex3fv (vector); // float vector[3] = {5.0, 3.2, 5.0};  Color actual afecta todos los vértices  glColor3f (0.0, 0.5, 1.0);  Los vértices se especifican solamente entre glBegin(mode) y glEnd(), generalmente se especifican en un orden de agujas del reloj.  glBegin (GL_TRIANGLES); glVertex2i (0, 0); glVertex2i (2, 0); glVertex2i (1, 1); glEnd();
  • 45. ¿Qué es un 3ds?  Un archivo 3ds contiene la información para describir los detalles de la escena que compone.  Esta formado por una serie de bloques llamados ‘chunks’ que contienen todo lo necesario para describir la escena:  Nombre de cada objeto.  Coordenadas de los vértices  Coordenadas para mapeo.  Lista de polígonos  Colores de las caras  Keyframes de la animación
  • 46. ¿Qué es un 3ds?  Un chunk esta formado por 4 campos:  Identificador: Número hexadecimal de 2 bytes de largo que identifica al chunk.  Largo del chunk: Número de 4 bytes que es la suma del largo del chunk y de los sub-chunks que contiene.  Chunk data: Contiene la informacion de la escena.  Sub-chunks
  • 47. ¿Qué es un 3ds? MAIN CHUNK 0x4D4D 3D EDITOR CHUNK 0x3D3D OBJECT BLOCK 0x4000 TRIANGULAR MESH 0x4100 VERTICES LIST 0x4110 FACES DESCRIPTION 0x4120 FACES MATERIAL 0x4130 MAPPING COORDINATES LIST 0x4140 SMOOTHING GROUP LIST 0x4150 LOCAL COORDINATES SYSTEM 0x4160 LIGHT 0x4600 SPOTLIGHT 0x4610 CAMERA 0x4700
  • 48. ¿Qué es un 3ds? MATERIAL BLOCK 0xAFFF MATERIAL NAME 0xA000 AMBIENT COLOR 0xA010 DIFFUSE COLOR 0xA020 SPECULAR COLOR 0xA030 TEXTURE MAP 1 0xA200 BUMP MAP 0xA230 REFLECTION MAP 0xA220 [SUB CHUNKS FOR EACH MAP] MAPPING FILENAME 0xA300 MAPPING PARAMETERS 0xA351 KEYFRAMER CHUNK 0xB000 MESH INFORMATION BLOCK 0xB002 SPOT LIGHT INFORMATION BLOCK 0xB007 FRAMES (START AND END) 0xB008 OBJECT NAME 0xB010 OBJECT PIVOT POINT 0xB013 POSITION TRACK 0xB020 ROTATION TRACK 0xB021 SCALE TRACK 0xB022
  • 49. ¿Cómo cargar un 3ds en OpenGL?  Implementar un loop que procese todo el archivo.  En cada iteracción leer el id del chunk y el largo.  Analizar el contenido del chunk.  Saltear los sub-chunks que no necesito leer.
  • 50. ¿Cómo cargar un 3ds en OpenGL?  Como primer paso debo definir la cantidad de vértices y polígonos que se van a manejar:  #define MAX_VERTICES 8000  #define MAX_POLYGONS 8000
  • 51. ¿Cómo cargar un 3ds en OpenGL?  Luego debo crear la rutina para cargar el 3ds:  char Load3DS (obj_type_ptr p_object, char *p_filename) { int i; FILE *l_file; unsigned short l_chunk_id; unsigned int l_chunk_length; unsigned char l_char; unsigned short l_qty; unsigned short l_face_flags;  Esto acepta dos parametros: puntero a la estructura de datos y nombre del archivo.
  • 52. ¿Cómo cargar un 3ds en OpenGL?  El paso siguiente es abrir el archivo y leerlo.  Según el identificador leido del bloque de datos se leerá de diferente forma.  Al leer cada chunk se debe leer los datos asociados a el y la información que brindan los chunks hijos.
  • 53. ¿Cómo cargar un 3ds en OpenGL?  A continuación se listan algunos de los chunks importantes para la lectura del 3DS:  OBJECT BLOCK contiene el nombre del objeto.  VERTICESLIST contiene todos los vertices del modelo.  FACESDESCRIPTION contiene la lista de polígonos.  MAPPING COORDINATES LIST contiene las coordenadas. .
  • 54. ¿Cómo cargar un 3ds en OpenGL?  Luego de leer todos los chunks del 3ds se cierra el archivo y el modelo quedara cargado.  El paso final es utilizar la rutina para cargar el modelo:  Load3DS (&object,"spaceship.3ds");  Y por último en la función display cargar la información del objeto.
  • 55. ¿Cómo cargar un 3ds en OpenGL?  Ejemplo de carga de un vértice:  // Texture coordinates of the first vertex glTexCoord2f( object.mapcoord[ object.polygon[l_index].a ].u, object.mapcoord[ object.polygon[l_index].a ].v);  // Coordinates of the first vertex glVertex3f( object.vertex[ object.polygon[l_index].a ].x, object.vertex[ object.polygon[l_index].a ].y, object.vertex[ object.polygon[l_index].a ].z);
  • 56. ¿Cómo cargar un 3ds en OpenGL?  Finalmente, para animar una figura se debe:  Actualizar los datos de la figura  Borrar la pantalla  Dibujar la figura  Repetir
  • 58. Bibliografía  Conceptos básicos del dibujo: http://www.dibunet.com/indicetutorial.php  Conceptos básicos de Animación: http://animation.about.com/od/otherusefultutorials/u/animationbasics.htm  Street Fighter Sprites: http://www.zweifuss.com/  Clone Wars Game: http://theclonewars.cartoonnetwork.com/games/game_02.html  Modeling a Character in 3DS Max, Paul Steed  Blender Manual: http://wiki.blender.org/index.php/Manual/Manual  Blender 2.47: www.blender.org  3D Art Tutorial: http://www.3dfantasies.info/res.html  DAZ Studio: www.daz3d.com  OpenGL Documentation: http://www.opengl.org/documentation  http://www.exa.unicen.edu.ar/catedras/visdat2/tutoriales.html  Ingeniería de Sistemas y Computación Universidad Tecnológica de Pereira  Revista Electrónica Neoteo: http://www.neoteo.com/  Tutorial de como cargar un archivo 3DS: http://www.spacesimulator.net/tut4_3dsloader.html