ユーザ用ツール

サイト用ツール


opengl:emscripten

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
opengl:emscripten [2014/05/25 23:56]
oga [Heap メモリが足りない]
opengl:emscripten [2015/01/11 01:51] (現在)
oga [Windows/Mac OS X]
行 4: 行 4:
 ===== Emscripten ===== ===== Emscripten =====
  
-  * [[https://github.com/kripken/emscripten/wiki|emscripten wiki]]+  * [[http://kripken.github.io/emscripten-site/|emscripten HOME]] 
 +    * [[https://github.com/kripken/emscripten/wiki|emscripten wiki]]
  
  
行 16: 行 17:
   * [[http://wlog.flatlib.jp/archive/1/2014-5-23|Emscripten C++/OpenGL ES 2.0 のアプリケーションをブラウザで動かす (5) JavaScript ライブラリとのリンク]]   * [[http://wlog.flatlib.jp/archive/1/2014-5-23|Emscripten C++/OpenGL ES 2.0 のアプリケーションをブラウザで動かす (5) JavaScript ライブラリとのリンク]]
   * [[http://wlog.flatlib.jp/archive/1/2014-5-24|Emscripten C++/OpenGL ES 2.0 (6) Chrome の速度と IE11/Safari]]   * [[http://wlog.flatlib.jp/archive/1/2014-5-24|Emscripten C++/OpenGL ES 2.0 (6) Chrome の速度と IE11/Safari]]
 +  * [[http://wlog.flatlib.jp/archive/1/2014-5-26|Emscripten C++/OpenGL ES 2.0 (7) Emscripten の OpenGL API と WebGL]]
 +  * [[http://wlog.flatlib.jp/archive/1/2014-5-29|Emscripten C++ のアプリをブラウザで動かす (8) iOS でも動く]]
 +  * [[http://wlog.flatlib.jp/archive/1/2014-6-1|Emscripten C++/OpenGL ES 2.0 (9) C関数呼び出しと FileSystem]]
 +  * [[http://wlog.flatlib.jp/archive/1/2014-6-3|Chromecast で C++ アプリを走らせる。Emscripten のゲームを動かす]]
 +  * [[http://wlog.flatlib.jp/archive/1/2014-10-14|iOS8 で WebGL & 物理エンジンのベンチマーク結果]]
 +
 +
  
  
行 25: 行 33:
   * [[opengl:webglextensions|WebGL Extensions (Emscripten)]]   * [[opengl:webglextensions|WebGL Extensions (Emscripten)]]
  
 +
 +
 +
 +===== Install 手順 =====
 +
 +==== Windows/Mac OS X ====
 +
 +  * [[http://kripken.github.io/emscripten-site/docs/getting_started/downloads.html]]
 +
 +emsdk command を使って package の install と更新を行う。
 +
 +  * Windows の場合 C:/Program Files/Emscripten/emsdk.bat
 +
 +<code>
 +$ emsdk update
 +$ emsdk list
 +$ emsdk install sdk-1.27.0-64bit
 +</code>
 +
 +
 +
 +==== Linux ====
 +
 +  * [[http://kripken.github.io/emscripten-site/docs/building_from_source/building_emscripten_from_source_on_linux.html#building-emscripten-on-linux]]
 +
 +上記手順に従い install
 +
 +2015/01/10 現在の手順の一例 (Ubuntu14.10)
 +
 +<code>
 +$ cd
 +$ sudo apt-get update
 +$ sudo apt-get install python2.7 nodejs build-essential cmake git-core default-jre
 +$ mkdir emscripten
 +$ cd emscripten
 +$ git clone https://github.com/kripken/emscripten-fastcomp
 +$ cd emscripten-fastcomp
 +$ git clone https://github.com/kripken/emscripten-fastcomp-clang tools/clang
 +$ mkdir build
 +$ cd build
 +$ ../configure --enable-optimized --disable-assertions --enable-targets=host,js
 +$ make -j
 +$ cd ../..
 +$ git clone https://github.com/kripken/emscripten.git
 +$ cd emscripten
 +$ ./emcc
 +</code>
 +
 +~/.emscripten を編集して LLVM_ROOT= に emscripten-fastcomp/build/Release/bin を追加
 +
 +<code>
 +LLVM_ROOT = os.path.expanduser(os.getenv('LLVM') or '/home/user_name/emscripten/emscripten-fastcomp/build/Release/bin')
 +</code>
 +
 +emscripten/emscripten にパスを通す
  
  
  
 ===== Debug のための設定メモ ===== ===== Debug のための設定メモ =====
 +==== 実行 ====
 +
 +=== --preload-file のデータが読めない ===
 +
 +preload file は xhr なのでローカルサーバーを立ててブラウザからアクセスする必要あり。
 +--embed-file なら js に埋め込むのでどの方法でもアクセスできる。
 +
 +
  
 ==== コード生成 ==== ==== コード生成 ====
行 43: 行 114:
     * デフォルトは 16MB     * デフォルトは 16MB
  
-==== Stack が足りない ====+=== Stack が足りない ===
  
   * コンパイル時 ( js 生成時) に -s TOTAL_STACK= で指定する。byte 単位。   * コンパイル時 ( js 生成時) に -s TOTAL_STACK= で指定する。byte 単位。
行 51: 行 122:
  
  
 +
 +==== ブラウザ ====
 +
 +
 +=== Firefox の Console Log を増やす ===
 +
 +  - URL に "about:config"
 +  - devtools.hud.loglimit.console の値を増やす
 +
 +
 +
 +=== Android Firefox の Remote Debug ===
 +
 +  * [[https://developer.mozilla.org/ja/docs/Tools/Remote_Debugging/Firefox_for_Android]]
 +
 +    - adb で接続
 +    - Android Firefox の Menu → 設定 → デベロッパーツール → リモートデバッグ を ON
 +    - HOST PC の Firefox で Menu → 開発ツール → 開発ツールを表示 → 開発ツールパネルの左上の歯車アイコン → 「リモートデバッガを有効」にチェックを入れる
 +    - HOST PC で「 adb forward tcp:6000 tcp:6000 」
 +    - HOST PC の Firefox で Menu → 開発ツール → 接続 → [接続]
 +    - Android 側に dialog が出るので [OK]
 +    - HOST PC の Firefox で接続する Tab を選択
 +
 +
 +=== Android Chrome の Remote Debug ===
 +
 +  * [[https://developer.chrome.com/devtools/docs/remote-debugging]]
 +
 +  - adb で接続
 +  - HOST PC 側 Chrome で "chrome:inspect"
  
  
opengl/emscripten.1401029772.txt.gz · 最終更新: 2014/05/25 23:56 by oga