WebGLとEmscripten(とオーディオ)

WebGLEmscripten

今日の調べ物は、WebGLEmscriptenについて。
今日最初に見たこの記事が真理だったようだ。

https://emscripten.org/docs/porting/multimedia_and_graphics/OpenGL-support.html

ここからリンクされている、
https://github.com/emscripten-core/emscripten/tree/master/tests/glbook

このglbookテストコードが素晴らしい。Web上で他のプラットフォームとほとんど同じコードが動く。
Webで動くことを想定したCを書けるということだ。
幻想かもしれない。本当はもっとWeb専用処理とかで地獄を見るのかもしれないが、今は喜んでおく。今のところの理想的な環境だ。

この記事と同列にEGLの記述があったので見てみたが、これは微妙っぽい。対応プラットフォームがAndroidしかないみたい?ひとまず自分の環境(macOSのブラウザ)で動かす分には考えなくていいだろう。

次のアクションはどうしよう?glbookのテストコードを動かしてみる?

Emscriptenとオーディオ

ついでにAudioのページも見てみた。

https://emscripten.org/docs/porting/Audio.html

はあ…すごい。OpenALで書けるんだ。Web Audioをバックエンドとして動くと。

考えを改める

いや驚いた。
失礼な話、今までEmscriptenに不信感があった。ちゃんと動くのとか、内部実装はボロボロなんじゃないとか。でもいまバックグラウンドを調べていてそれが払拭されつつある。テストコードがいーっぱいあるのも見た。
これは本気で使ってみる価値のあるプラットフォームなんじゃないかと感じ始めている。

早速実際に動かしてみたいけど、まずはデバッグがらみのツールチェーンを知りたい。
デバッガとかブレークポイント貼れたりするのか?絶対無理だと思うんだが。できたら感動。

あとはテスト。どうやるんだろうね?Cに対してかけるのか?それともコンパイル後のバイナリをブラウザ上でテストできるのか?

今日はこんなところで。