2013年7月25日木曜日

OpenALについて-その2-

どもども、「知ってる人は知っている。知らない人はまぁ覚えなくてもいいんじゃね?」
wakaでございます。

少し時間が空いてしまいましたが、前回の記事に引き続きOpenALについて書いていきたいと思います。
・・・っと言ってもまだ自分自身がOpenALのリファレンスをしっかり理解しきれていなので読まれる皆様のお役に立つかはわかりませんが・・・

では、今回はOpenALのデータ型の紹介と関数について触れていきたいと思います。

OpenALライブラリのプリミティブ(スカラ)データ型はシームレスな統合が出来るようにOpenGLのデータ型を模しているそうです。保証最小サイズはOpenGLデータ型のために明記されているが、実際はC言語のどの型が選ばれるかは実装次第に任されているらしいです・・・
↑表ツール的なものがなかったので画像で勘弁してください
これがOpenALライブラリのデータ型になります。参考にしてください。



次は、関数について書いていきたいと思います。


alcOpenDevice()は英語を少しでも読める方なら気づかれるを思いますが、デバイスをオープンするための関数になります。
devicenameのところにオープンしたいデバイスの指定をします。
しかし、これを試したところalcOpenDevice(NULL);こんな感じで値にNULLを入れると適当なデバイスをオープンしてくれるみたいです。
ちなみに、NULLが返り値で返ってくると「エラー」です。

ALCdevice *device;
device = alcOpenDevice(NULL); 
↑こんな感じにソースコードの中に書いてみました。




alcCreateContext();も上記を同じように読んだままの意味の関数になります。
deviceには、上記(alcOpenDevice())で開いたデバイスを指定する。
attrlistには、いろいろを指定をすることができる。
しかし、これもNULLを入れておけば問題なく動いてくれた
ちなみに、返り値がNULLだと「エラー」。

ALCcontext *context;
context=alcCreateContext(device,NULL);
↑ソースコードにはこう書いてみました。




alcMakeContextCurrent();の関数は、コンテキストをカレントするためのものである。
コンテキストを使用するようにするもの、返り値がALC_TRUEなら「成功」、ALC_FALSEなら「失敗」となる。

alcMakeContextCurrent(context);
↑ソースコードの中にはこう書いてみました。


ちなみに、ここまではALCによるOpenALの準備する部分なので、実はまだOpenAL本体のいじっていません。
しかし、この準備をすることによってOpenALを使用することができるようになります。


それではOpenAL本体の話に・・・といきたいところですが、これ以上書いて行くと長くなってしまうので今回はこの辺にしたいと思います。

次回はOpenALライブラリの関数に関することを書いていきたいと思います。
それではまたいつの日か~~~

終わりに・・・
・・・もし次回までにopenALのリファレンスの理解ができないないようなことがあれば全く関係のない違う記事を書いているかも・・・ボソ

1 件のコメント:

  1. Mohon ijin berpromosi. service Ac segala jenis merk. kami service Ac mencakup wilayah coverage seluruh Surabaya, Gresik, Sidoarjo. kami juga menerima jasa service perbaikan AC bongkar dan pasang AC. pekerjaan kami cepat, tepat, profesional, harga kompetitif di banding harga jasa luaran.
    service ac split sidoarjo
    tukang service ac sidoarjo
    service ac surabaya sidoarjo
    service ac surabaya selatan
    service ac surabaya timur
    service ac surabaya barat
    service ac surabaya utara
    service ac kota surabaya

    SPLIT-TYPE AIR CONDITIONERS
    MULTI-SPLIT AIR CONDITIONERS
    CHILLED WATER FAN COIL UNITS
    VRF AIR CONDITIONERS
    CHILLERS
    WINDOW-TYPE AIR CONDITIONERS

    http://jualjasaacsurabaya.blogspot.com
    Segera hubungi kami, dan kami akan datang kerumah Anda 24 Jam Non Stop.
    (Hari Sabtu / Minggu / Hari Libur buka)
    PIN BBM : 54BE0B4B / 5474CD93 / TELP : 085645475574

    返信削除