最終的に、SDL 1 と Emscripten を使用して、Mika を WebGL に移植しました。

次に、JavaScript でのビルドを正常に完了するためにコードの何を変更する必要があるかを説明します。
<オル>
SDL 2 の代わりに SDL 1 を使用します。現時点では、emscripten 用の SDL 2 ポートがありますが、emscripten に組み込まれている SDL 1 を使用する方が適切であることがわかりました。コンテキストはウィンドウ内では初期化されませんが、SDL_SetVideoMode と SDL_OPENGL フラグを使用して初期化されます。バッファは SDL_GL_SwapBuffers() コマンドを使用して描画されます
JavaScript のループ方法による –レンダリングは別の関数に配置され、その定期的な呼び出しは emscripten_set_main_loop
 関数を使用して行われます。
アセンブリはキー “-s FULL_ES2=1“ を使用して実行する必要もあります
assimp ライブラリを放棄し、ファイル システムからモデルをロードし、ディスクからテクスチャをロードする必要がありました。必要なバッファはすべてデスクトップ バージョンにロードされ、emscripten を使用してアセンブリ用の C ヘッダー ファイルに挿入されました。
コード:
https://github.com/demensdeum/OpenGLES3-Experiments/tree/master/9-sdl-gles-obj-textured-assimp-miku-webgl/mikuWebGL
記事:
http://blog.scottlogic.com/2014/03/12/native-code-emscripten-webgl-simmer-gently.html
https://kripken.github.io/emscripten-site/docs/porting/multimedia_and_graphics/OpenGL-support.html
モデル:
https://sketchfab.com/models/7310aaeb8370428e966bdcff414273e7