Informática Gráfica

Page 62

(a)

(b)

Figura 4.7: Ejemplo de escena visualizada: (a) sin resolver el problema de la visibilidad y (b) con el problema resuelto

Listado 4.1: Algoritmo del z-buffer if ( pixel . z < bufferProfundidad (x , y) . z ) { bufferProfundidad (x , y) . z = pixel . z ; bufferColor (x , y) . color = pixel . color ; }

4.5.

Viendo en 3D con WebGL

Hasta ahora, en los ejercicios realizados en los temas anteriores, se ha conseguido visualizar modelos sin tener que realizar ni la transformaci´on de la c´amara ni establecer un tipo de proyecci´on. Esto ocurre porque el modelo, o la escena, a visualizar se ha definido de manera que h´abilmente quedase dentro del volumen can´onico de la vista. De esta manera se obtiene una proyecci´on paralela del contenido del volumen observando la escena en direcci´on del eje −Z. En este cap´ıtulo se ha visto c´omo construir la matriz de transformaci´on de la c´amara para poder observar la escena desde cualquier punto de vista, y la matriz de proyecci´on para poder elegir entre vista paralela y vista perspectiva. En WebGL es responsabilidad del programador calcular estas matrices y operarlas con cada uno de los v´ertices del modelo. Habitualmente, la matriz de la c´amara se opera con la de transformaci´on del modelo, creando la transformaci´on conocida con el nombre de modelo-vista. Esta matriz y la de proyecci´on se han de suministrar al procesador de v´ertices, donde cada v´ertice v debe ser multiplicado por ambas matrices. Si MC es la matriz de transformaci´on de la c´amara, MM es la matriz de transformaci´on del modelo, y MM V es la matriz modelo-vista, el nuevo v´ertice v se obtiene como resultado de la siguiente operaci´on: v = MP roy ·MM V ·v; donde MM V = MC ·MM ; y MP roy ser´a MP ar o MP er . El listado 4.2 recoge estas operaciones. 59 José Ribelles y Ángeles López - ISBN: 978-84-16356-29-4

59

Informática Gráfica - UJI - DOI: http://dx.doi.org/10.6035/Sapientia107


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.