Logotip d'alfavisions.com
Inici Trajectòria Projectes Clients Contacte > En castellano, por favor    > In english, please Neures

Shockwave 3D para aplicaciones de visualización en tiempo real

Por Andreu Ballesteros, marzo de 2004

Escalabilidad

Una de las principales características en la que los desarrolladores de la tecnología Shockwave 3D (Intel y Macromedia) insisten es en la escalabilidad de las aplicaciones.

Esto quiere decir que, desarrollando una única vez el contenido, se puede servir a diferentes configuraciones de hardware, software y sistemas operativos, manteniendo un nivel de visualización acorde a las características de la máquina final.

Tradicionalmente, las aplicaciones de visualizacion 3D en tiempo real han sido las más exigentes en materia de computación y recursos del sistema, requiriendo de hardware caro y especializado. Hoy en día, gracias sobre todo al auge de los juegos de ordenador 3D, cualquier equipo moderno viene dotado de tarjeta aceleradora 3D, cosa que no ocurría hasta hace relativamente poco.

Hay que entender que vamos a desarrollar bajo una tecnología nueva, en constante evolución.

Esto hecho tiene varias implicaciones:

  1. No podemos controlar el resultado final al 100%, ya que, en buena medida, éste depende de las características del hardware utilizado.
  2. La tecnología Shockwave 3D tiene una serie de limitaciones inherentes a la visualización en tiempo real. Por citar un ejemplo, no se pueden usar más de 8 puntos de luz por escena. Igualmente, hay características avanzadas propias de los programas 3D que requieren de un elevado tiempo de computación para generarse, como la radiosidad, las caústicas, etc. y que, por ello mismo, no son viables para aplicaciones en tiempo real. Se recomienda recurrir a técnicas creativas para obviar estas limitaciones, como por ejemplo Texture Baking (inclusión en los mapas de textura de otro tipo de información), Overlaying (mezclar en tiempo real diferentes capas de información gráfica), etc.
  3. Hay que distinguir claramente entre los diferentes tipos de aplicación que se va a dar a la escena 3D; es decir, el archivo que se prepare para visualización fotorealista no puede ser “traducido” sin más a Shockwave 3D. Hay que preparar una versión diferente en cuanto a configuración de luces, tipos de material utilizados y, posiblemente, nivel de detalle del modelo.
  4. A nivel de aplicaciones en tiempo real, menos es más. Mientras menor contaje de polígonos tenga una escena, mayor nivel de fluidez se alcanzará sobre una configuración hardware concreta. Esto mismo sucede con relación al número de luces, tamaño y número de texturas, complejidad de los materiales, etc.
  5. El proyecto tiene un componente importante de investigación y desarrollo para todas las partes implicadas. No se puede esperar ver acabados finales en las primeras etapas del mismo, ya que el producto final será el resultado de un proceso iterativo de refinamiento y simplificación, orientado a alcanzar un compromiso razonable entre calidad y fluidez de la visualización 3D.

Esta misma coyuntura implica que el proyecto sea abierto y escalable, ya que todo indica que las mejoras esperadas en el campo de la visualización en tiempo real durante los próximos años van a ser importantes. Es decir, con el mismo producto final, dependiendo del hardware disponible de aquí a un tiempo, el resultado puede ser netamente diferente. Utilizar el estándar de facto del sector (Shockwave 3D) garantiza la perdurabilidad y extensibilidad futura del producto.

Un ejemplo de esta última aseveración lo tenemos en una de las características que prestan mayor grado de realismo a la visualización 3D en tiempo real. Se trata del anti-aliasing o suavizado de las líneas curvas en pantalla. Este proceso debería ser controlado por la tarjeta gráfica, ya que al realizarlo vía software la velocidad de interacción baja a unos niveles inaceptables, independientemente del tipo de procesador utilizado. Para realizar el anti-aliasing por hardware se necesita desarrollar la aplicación para la versión 10 de Shockwave Player, que todavía se encuentra en la fase beta de desarrollo, siendo la versión actual (autoinstalable) la 8.5.1.

Esto ilustra la rápida evolución que es de esperar a corto plazo y la adaptabilidad que deberíamos tener en cuanto a requerimientos de la aplicación.

Requerimientos hardware

Sin un testeo previo más exhaustivo se hace difícil garantizar los niveles de calidad alcanzados por configuraciones concretas de hardware.

No obstante, nos atreveríamos a recomendar lo siguiente:

Aplicación para wokstation:

Aplicación para ordenador portátil:

En todo caso, como ya hemos visto, si no se cumplen al 100% las especificaciones, es de esperar una degradación en los resultados de visualización, especialmente en el nivel de interactividad (fluidez de los movimientos, fotogramas mostrados por segundo, etc), nunca un no-funcionamiento completo.

Igualmente, a mayor potencia y calidad de los componentes, es de esperar una interacción (y calidad) más satisfactoria.

Requerimientos del modelo 3D

Creemos que actualmente es prematuro fijar estrictamente los requerimientos del modelo 3D. No obstante, deberían ser consensuados con el responsable del modelado, antes del inicio del proyecto. Al final de este documento, en la sección de enlaces, hay información muy útil al respecto.

En todo caso, como anticipo, podríamos hablar de:

Información complementaria

Soporte Chipsets Hardware 3D y actualización de controladores. Macromedia Technote (extracto).

Enllaç externmacromedia.com/support/director/ts/documents/3d_chipset_driver_update.htm.

Macromedia ha comprobado que Director 8.5 y Shockwave no funcionan con algunos viejos drivers de tarjetas de vídeo.

La lista completa se encuentra en la siguiente URL:
Enllaç externmacromedia.com/support/director/ts/documents/3d_rendering/udl.htm.

Hay que hacer notar que los controladores de vídeo incluídos en este listado eran ya obsoletos en el año de publicación del documento (2001). Es importante actualizar los controladores de vídeo, si es posible, para utilizar las modernas características 3D. Para alcanzar el mejor rendimiento con aplicaciones Shockwave 3D, Macromedia recomienda que se usen tarjetas aceleradoras 3D compatibles con Direct3D, que soporten Z-Buffering, Bilinear Filtering y Alpha-Blending.

En 2001 Shockwave 3D había sido testeado y funcionaba en las siguientes tarjetas aceleradoras:

3DFx: Voodoo Graphics, Voodoo Rush, Voodoo Banshee, Voodoo 2, Voodoo 3
3DLabs: Permedia 2 and 3
ATI: All-in-Wonder, XPERT, Rage Pro, Rage 128, Rage Fury, Radeon
Intel:. i740 and i740 with video capture
Matrox:. G200 and G400
Number Nine: Revolution
NVIDIA: Riva128, TNT, TNT2, Vanta, GeForce256, GeForce2
Rendition: V2100 and V2200
S3: Virge DX & GX, Savage 3 & 4

Optimizando efectos de rendering 3D. Macromedia Technote (extracto).

Enllaç externmacromedia.com/support/director/ts/documents/3d_rendering.htm.

La optimización de los efectos de rendering 3D puede ser problemática y confusa. Director genera las imágenes 3D en el escenario de varias maneras, dependiendo del hardware (tarjeta de vídeo), software disponible y/o controladores de hardware que se usen.

En general, el render por hardware producirá los mejores resultados. Las últimas tarjetas de vídeo utilizan características como 32-bit rendering, multi-texturing, alpha blending, anti-aliasing, y otras, que mejoran la velocidad de generación 3D y la calidad. Director 8.5 y Shockwave 3D se comportan mejor con los más modernos controladores de tarjeta gráfica disponibles. El soporte para DirectX 5.2 o superior es crítico para las tarjetas gráficas bajo Windows. El soporte para OpenGL 1.1.2 es crítico para los sistemas Macintosh.

Las máquinas Mac OS y Windows NT sólo pueden beneficiarse de los motores de software y OpenGL. En estos casos, OpenGL será la opción preferida, aunque dependiendo de las configuraciones de hardware, tarjeta de vídeo y controladores de vídeo, usar OpenGL no siempre será posible.

El motor de Shockwave 3D determinará qué motor de render es mejor para una máquina dada. Esto quiere decir que la configuración preferedRenderer que el desarrollador haya fijado puede ser cambiada por Shockwave Player si el hardware concreto que ejecuta la aplicación es incapaz de alcanzar las configuraciones prefijadas o el sistema está usando un controlador no actualizado.

Basics of Director 3D (Extracto). Macromedia Director Support Center

Enllaç externmacromedia.com/support/director/work_3d/models_use_in_sw/

Trabajando eficientemente con las luces:

Shockwave 3D soporta un máximo de ocho luces por escena, cada una de las cuales degrada notablemente la interactividad, ya que necesita una pasada separada de render. Hay 2 maneras de superar esta limitación:

Usar mapas de luces, que permiten usar Lingo para aplicar mapas de luz difusos, especulares y de brillos, proyectando un efecto en la escena mientras la iluminan.

Usar baked textures, un proceso en el que el artista 3D define las luces de la escena, configurando todos los parámetros de render deseables, posiciona una cámara perpendicular a la superficie y genera un render de esta área como mapa de bits. El efecto sombra/iluminación se convierte en parte del bitmap que luego es aplicado como mapa de textura a la misma geometría de la escena. Las luces originales se reemplazan por una o dos luces para iluminación general. En caso necesario, se aplica un efecto de autoiluminación a la textura para simular que hay más luz.

Bibliografía

Preparing 3D content for Shockwave 3D
Información detallada sobre características soportadas:
Enllaç externmacromedia.com/support/director/work_3d/models_use_in_sw/index.html

3D Quick Start Guide: 3dsmax to Director 8.5 Shockwave Studio
PDF en forma de tutorial sobre cómo preparar los modelos en 3dsmax y las características soportadas en cuanto a modelado y materiales:
Enllaç externdownload.macromedia.com/pub/director/3dsmax/3dsmax.pdf

Playing 3D content with Macromedia Shockwave Player: FAQ
Las preguntas más frecuentes:
Enllaç externmacromedia.com/support/director/ts/documents/3d_shockwave_readme.htm

Macromedia Shockwave Player v. 8.5.1
Enllaç externmacromedia.com/shockwave/download/download.cgi?P1_Prod_Version=Shockwave

Macromedia Shockwave Player v. 10
Enllaç externmacromedia.com/software/shockwaveplayer/beta/


© 2006 - Andreu Ballesteros - Tots els drets reservats • Contacte: andreu@alfavisions.comMapa del web