Por Andreu Ballesteros, marzo de 2004
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:
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.
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.
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:
macromedia.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:
macromedia.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
macromedia.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.
macromedia.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.
Preparing 3D content for Shockwave 3D
Información detallada sobre características soportadas:
macromedia.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:
download.macromedia.com/pub/director/3dsmax/3dsmax.pdf
Playing 3D content with Macromedia Shockwave Player: FAQ
Las preguntas más frecuentes:
macromedia.com/support/director/ts/documents/3d_shockwave_readme.htm
Macromedia Shockwave Player v. 8.5.1
macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=Shockwave
Macromedia Shockwave Player v. 10
macromedia.com/software/shockwaveplayer/beta/