「OpenAL」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
1行目: 1行目:
 
'''OpenAL'''(おーぷんえーえる)とは、クロスプラットフォームに対応した3DオーディオAPIである。
 
'''OpenAL'''(おーぷんえーえる)とは、クロスプラットフォームに対応した3DオーディオAPIである。
 +
3Dオーディオ向けではあるが3D関連を無視すれば2Dオーディオとしても使える。
 +
ただし非常に低レベルである点が難点ではある。
  
 
== 概要 ==
 
== 概要 ==
18行目: 20行目:
 
オーディオ周りが貧弱な[[.NET]]ではWindows依存のNAudioやSlimDXのDirectSoundやXAudio2のラッパーくらいしか存在しない。
 
オーディオ周りが貧弱な[[.NET]]ではWindows依存のNAudioやSlimDXのDirectSoundやXAudio2のラッパーくらいしか存在しない。
 
そのような状況下でOpenALの[[ラッパー]]も含まれる「[[OpenTK]]」が唯一無二の「マルチプラットフォーム対応」なオーディオライブラリとなっている。
 
そのような状況下でOpenALの[[ラッパー]]も含まれる「[[OpenTK]]」が唯一無二の「マルチプラットフォーム対応」なオーディオライブラリとなっている。
 
OpenALは3Dオーディオ向けではあるが3D関連を無視すれば2Dオーディオとしても使える。ただし非常に低レベルである点が難点ではある。
 
  
 
Xamarin.iOSやXamarin.Androidでも問題なく使えるというか、Xamarin系ではプロジェクト新規作成時に問答無用で追加される標準ライブラリとなっている。
 
Xamarin.iOSやXamarin.Androidでも問題なく使えるというか、Xamarin系ではプロジェクト新規作成時に問答無用で追加される標準ライブラリとなっている。

2022年4月14日 (木) 01:53時点における版

OpenAL(おーぷんえーえる)とは、クロスプラットフォームに対応した3DオーディオAPIである。 3Dオーディオ向けではあるが3D関連を無視すれば2Dオーディオとしても使える。 ただし非常に低レベルである点が難点ではある。

概要

OpenALはOpenGLと名称が似ているが、まったくの別団体が管理する別物である。 OpenALのAPIの命名規則なども「古いOpenGL」に非常に似ている。 なんでそんなクソな部分まで似せたのか理解に苦しむ。

もともとはロキソフトウェアWindowsゲームLinuxに移植するために開発・公開したオープンソースライブラリであった。OpenALは「ゲーム向け」ということもあり「即応性」と「3Dオーディオ」などを中心に進化した。「WindowsのDirectSoundみたいなものをLinuxにも作ろう」というコンセプトのものだ。

ロキソフトウェアの倒産後はクリエイティブテクノロジーが権利を取得し、オープンソースを止めプロプライエタリライブラリとなり、同社のSound Blaster X-Fi専用APIとなった。そのクリエイティブテクノロジーも2010年くらいを最後に使っていない。

OpenALがオープンソースではなくなったことをうけ「OpenAL Soft」というプロジェクトが立ち上がり誰かが改良を続けている。なお、Direct3DやOpenGLなどの3DCG分野とは異なり3Dオーディオはそんなに技術革新も起きておらず、今ならオープンソース時代の最後のバージョンである「OpenAL 1.1」を使っている人がプロジェクトが多い。

macOS

macOS Catalina 10.15でOpenALは「非推奨」となった。

.NET

オーディオ周りが貧弱な.NETではWindows依存のNAudioやSlimDXのDirectSoundやXAudio2のラッパーくらいしか存在しない。 そのような状況下でOpenALのラッパーも含まれる「OpenTK」が唯一無二の「マルチプラットフォーム対応」なオーディオライブラリとなっている。

Xamarin.iOSやXamarin.Androidでも問題なく使えるというか、Xamarin系ではプロジェクト新規作成時に問答無用で追加される標準ライブラリとなっている。

.NET CoreのコンソールプロジェクトでもNuGetからOpenTKのパッケージ追加すればLinuxやmacOSでも問題なく動作する。