PDF de programación - Sistema GRID para el Render de Escenas 3D Distribuido: YAFRID

Imágen de pdf Sistema GRID para el Render de Escenas 3D Distribuido: YAFRID

Sistema GRID para el Render de Escenas 3D Distribuido: YAFRIDgráfica de visualizaciones

Actualizado el 2 de Marzo del 2020 (Publicado el 3 de Marzo del 2017)
1.282 visualizaciones desde el 3 de Marzo del 2017
10,4 MB
249 paginas
Creado hace 17a (06/07/2006)
UNIVERSIDAD DE CASTILLA-LA MANCHA
ESCUELA SUPERIOR DE INFORM ÁTICA

INGENIERÍA

EN INFORM ÁTICA

PROYECTO FIN DE CARRERA

Sistema GRID para el Render de Escenas 3D

Distribuido: YAFRID

José Antonio Fernández Sorribes

Julio, 2006

UNIVERSIDAD DE CASTILLA-LA MANCHA
ESCUELA SUPERIOR DE INFORM ÁTICA

Departamento de Informática

PROYECTO FIN DE CARRERA

Sistema GRID para el Render de Escenas 3D

Distribuido: YAFRID

Autor:
Director: Carlos González Morcillo

José Antonio Fernández Sorribes

Julio, 2006

c José Antonio Fernández Sorribes. Se permite la copia, distribución y/o modificación de este
documento bajo los términos de la licencia de documentación libre GNU, versión 1.1 o cualquier
versión posterior publicada por la Free Software Foundation, sin secciones invariantes. Puede consultar
esta licencia en http://www.gnu.org.
Este documento ha sido compuesto con LATEX. Las figuras que contiene han sido en su mayoría creadas
con OpenOffice y El GIMP y los diagramas UML con ArgoUML y Umbrello.

Las figuras que aparecen en la introducción a sistemas distribuidos (Apartado 3.5) han sido sacadas
de [Moy05].

Las imágenes de los dragones de la Figura 3.5 han sido cedidas por Carlos González.

Los derechos de la imagen de Toy Story que aparece en la Introducción pertenecen a Pixar Animation
Studios (TM y c 1986 - 2006).

TRIBUNAL:

Presidente:
Vocal:
Secretario:

FECHA DE DEFENSA:

CALIFICACI ÓN:

PRESIDENTE

VOCAL

SECRETARIO

Fdo.:

Fdo.:

Fdo.:

Resumen

El último paso en el proceso para la generación de imágenes y animaciones 3D por
ordenador es el llamado render. En esta fase se genera una imagen bidimensional (o un
conjunto de imágenes en el caso de las animaciones) a partir de la descripción de una escena
3D. Para la obtención de imágenes fotorrealistas se utilizan algoritmos computacionalmente
exigentes como el trazado de rayos.

En los proyectos relacionados con la síntesis de imágenes, la etapa de render se suele

considerar el cuello de botella debido al tiempo necesario para llevarla a cabo.

Generalmente, el problema se resuelve usando granjas de render que pertenecen a
empresas del sector en las que los frames de una animación se distribuyen en distintos
ordenadores. El presente proyecto ofrece una alternativa para acometer el render tanto de
animaciones como de imágenes basada en computación grid. Para ello, se ha desarrollado
un sistema en el que tienen cabida ordenadores heterogéneos tanto en software como en
hardware, distribuidos geográficamente y conectados al grid vía Internet.

I

Abstract

Rendering is the last step of the 3D image synthesis process. This phase consists in
generating a bi-dimensional image (or a set of them in animations) from a formal description
of a 3D scene.

In order to obtain realistic results, it is necessary to use computationally intensive
algorithms like raytracing. Due to the time that those algorithms require, the rendering is
often considered to be the bottleneck of the projects related to realistic image synthesis.

A common solution to this problem consists in spread the render of animations among a
large number of computers where each one process one single frame. Those sets of computers
are often owned by a single organization and are referred as render farms.

This project offers a different approach to solve the problem of rendering both images and
animations, an approach based on grid computing. A system like this one can be composed by
heterogeneous, in terms of hardware and software, and geographically distributed computers.
The only requirement is having an Internet connection.

III

A mis padres, mi hermana y mi abuela,
por estar siempre ahí aguantándome y
porque a ellos les dedico todo cuanto hago.

Agradecimientos

A Carlos por sus ánimos, su entrega y por tener más fe en mí a veces de la que incluso yo
mismo tenía.
A mis padres por la revisión de este documento.
A Raúl por echarme una mano en la implantación del sistema.
A todos los que de una u otra manera han tenido algo que ver con el resultado final.

V

Índice general

Índice de figuras
Índice de cuadros
Índice de listados
Índice de algoritmos

Terminología

Notación
1. INTRODUCCI ÓN

1.1. ENFOQUE DEL PROYECTO . . . . . . . . . . . . . . . . . . . . . . . . .
1.2. ESTRUCTURA DE ESTE DOCUMENTO . . . . . . . . . . . . . . . . . .

2. OBJETIVOS DEL PROYECTO
3. ANTECEDENTES, ESTADO DE LA CUESTI ÓN

XI

XV

XVI

XVIII

XX

XXII

1
5
6

7

9
10
10
12
14
15
16
18
22
26
29
32
33
35
35
36
37
38

3.1. COMPUTACI ÓN GRID . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.1. Definición de grid . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.2. Clasificación de sistemas grid . . . . . . . . . . . . . . . . . . . . .
3.1.3. Arquitectura OGSA . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.4. Relación entre redes peer-to-peer, clusters y grid . . . . . . . . . . .
3.2. SÍNTESIS DE IM ÁGENES 3D . . . . . . . . . . . . . . . . . . . . . . . .
Introducción a la síntesis de imagen fotorrealista . . . . . . . . . . .
3.2.1.
3.2.2. Métodos de renderizado . . . . . . . . . . . . . . . . . . . . . . . .
3.2.3. Casos de estudio en motores de render . . . . . . . . . . . . . . . . .
3.3. SISTEMAS RELACIONADOS . . . . . . . . . . . . . . . . . . . . . . . .
3.4. DESARROLLO DE APLICACIONES WEB . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.1. PHP .
3.4.2.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
JSP .
3.4.3. ASP y ASP .NET . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.4. Hojas de Estilo en Cascada . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.5.
3.5. SISTEMAS DISTRIBUIDOS . . . . . . . . . . . . . . . . . . . . . . . . .

JavaScript . .

.
.

.
.

.
.

.
.

.
.

.
.

VII

VIII

ÍNDICE GENERAL

Introducción a los Sistemas Distribuidos . . . . . . . . . . . . . . . .
3.5.1.
3.5.2. Middleware para Sistemas Distribuidos . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.3.
3.6. LENGUAJES DE SCRIPT Y GLUE-CODE . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

ICE .

.

.

.

.

.

.

38
39
42
45
46

3.6.1. Python .

. .
4. M ÉTODO DE TRABAJO
4.1. ARQUITECTURA .

.

.

.

.

.

4.6. COMUNICACIONES .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.1. Servidor Yafrid . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.2. Proveedor .
4.2. ASPECTOS DE INGENIERÍA DEL SOFTWARE . . . . . . . . . . . . . .
4.2.1. Ciclo de Vida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.2. Metodología
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Iteraciones del Ciclo de Vida en Yafrid . . . . . . . . . . . . . . . .
4.2.3.
4.3. GENERALIDADES SOBRE EL DISE ÑO . . . . . . . . . . . . . . . . . . .
4.3.1. Diseño Multicapa . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.2. Patrones de diseño . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4. ELEMENTOS B ÁSICOS DE YAFRID . . . . . . . . . . . . . . . . . . . .
4.5. PERSISTENCIA .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.1. Construcción de la base de datos . . . . . . . . . . . . . . . . . . . .
4.5.2. Clases de persistencia
. . . . . . . . . . . . . . . . . . . . . . . . .
4.5.3. Generación automática de clases . . . . . . . . . . . . . . . . . . . .
4.5.4. Tecnología de base de datos
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6.1. Creación de proxies . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6.2. Protocolo de comunicaciones
. . . . . . . . . . . . . . . . . . . . .
4.7. GESTI ÓN DE PROCESOS . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8. PARAMETRIZACI ÓN .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
INTERNALIZACI ÓN .
4.9.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.10. MOTORES DE RENDER . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.10.1. Generación de parámetros . . . . . . . . . . . . . . . . . . . . . . .
4.10.2. Render
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.10.3. Post-procesado . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11. TRATAMIENTO DE IM ÁGENES . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.12. PRIORIDADES . .
4.13. YAFRID-CORE .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.13.1. Parametrización . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.13.2. Distribuidor .
.
4.13.3. Identificador
.
.

49
50
51
57
57
58
59
61
63
63
65
66
70
70
71
73
74
75
75
77
78
80
81
83
86
90
91
92
97
97
98
98
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
4.14.1. Tecnologías web . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
4.14.2. Generalidades sobre Yafrid-WEB . . . . . . . . . . . . . . . . . . . 109
4.14.3. Creación de cuentas
. . . . . . . . . . . . . . . . . . . . . . . . . . 112
4.14.4. Usuarios de Yafrid . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
4.14.5. Parametrización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

4.14. YAFRID-WEB .

. .

.
.

.
.

.
.

.

.

ÍNDICE GENERAL

IX

4.15. PROVEEDOR .

.

.

.

.

.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
4.15.1. Interfaz gráfica de usuario . . . . . . . . . . . . . . . . . . . . . . . 121
4.15.2. Conexión con el grid . . . . . . . . . . . . . . . . . . . . . . . . . . 124
4.15.3. Render de unidades de trabajo . . . . . . . . . . . . . . . . . . . . . 127
4.15.4. Desconexión del grid . . . . . . . . . . . . . .
  • Links de descarga
http://lwp-l.com/pdf2524

Comentarios de: Sistema GRID para el Render de Escenas 3D Distribuido: YAFRID (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad