OpenAL
De Wikipedia, la enciclopedia libre
OpenAL es una API de audio multiplataforma desarrollada por Creative Labs para el renderizado eficiente de audio posicional y multicanal en tres dimensiones. Está ideada para su uso en videojuegos y el estilo y convenciones del código es similar al de OpenGL.
La API está disponible para las siguientes plataformas: Mac OS, Linux (tanto para OSS como para ALSA), *BSD, Solaris, Irix, Microsoft Windows, Sony PlayStation 2, Microsoft Xbox y Nintendo GameCube.
Al contrario que la especificación de OpenGL, la especificación de OpenAL se divide en dos secciones: el núcleo, consistente en las llamadas a funciones, y la ALC API, utilizado para la gestión de contextos de renderizado, uso y bloqueo de recursos, etc. de manera multiplataforma.
Con la intención de agregar funcionalidades extra en el futuro, OpenAL utiliza un mecanismo basado en extensiones. Cada cual puede incluir sus propias extensiones en la distribución de OpenAL, algo frecuente para enseñar o agregar funcionalidades de hardware propietario. Las extensiones pueden ser promocionadas a un status ARB (Architecture Review Board), indicando una extensión estándar que será mantenida con compatibilidad hacia atrás. Las extensiones ARB pueden ser agregadas al núcleo de la API tras un cierto período de tiempo.
El funcionamiento global de OpenAL se puede dividir en objetos fuente, oyentes y buffers de audio. Un objeto fuente contiene un puntero a un búffer, además de una serie de atributos como la velocidad, posición, dirección o intensidad del emisor de sonido. Un oyente contiene información sobre la velocidad, posición y orientación del sistema de referencia, además de la ganancia general aplicada a todo sonido. Sólo puede haber un oyente. Los buffers contiene la información del sonido en formato PCM, bien en 8 o 16 bits, en formato mono o estéreo. El motor de renderizado se encarga de todos los cálculos necesarios como la atenuación, doppler, etc.
[editar] Juegos que utilizan OpenAL
- Basados en motores de Id Software
- Basados en motores Unreal
- Otros
[editar] Enlaces
El contenido de esta página es un esbozo sobre programación. Ampliándolo ayudarás a mejorar Wikipedia. Puedes ayudarte con las wikipedias en otras lenguas. |