Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Away3D for OpenFLをためしたよ!

1,247 views

Published on

「Away3D for OpenFLをためしたよ」
福岡Haxe勉強会 第0x06回のときの資料です

# これは、2014-10-11現在の話ですので最新版とはことなる場合がございますのでご注意ください。

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Away3D for OpenFLをためしたよ!

  1. 1. Haxeでこんぱいら作っちゃった 改め
  2. 2. Away3d for OpenFLためしたよ!
  3. 3. 自己紹介 • あるる/ きのもと結衣です • Twitter: @arlez80 • Facebookアカウントあります • Haxe/OpenFl/SKK/Forth大好きー
  4. 4. 事故紹介 • いつもの
  5. 5. Away3Dってなに? • 元々Flashの3Dライブラリらしい – 詳しい歴史は英語版のWikipediaでも見てくださ い • Flash Player 10からGPUアクセラレーション対 応したらしい • Liteってのもあるらしい • らしいだらけ
  6. 6. Away3D for OpenFLとは? • Away3DのHaxe/OpenFL移植版 • Flash専用のバインドではない • ホントのホントに色んな環境で動く!
  7. 7. 残念ながら • 現在haxelibにあるバージョンだとFlash以外で コンパイルが通らない – 実装が足らないクラス例:Matrix3D – 存在しないクラス例:PerspectiveProjection • Githubのバージョンは – ビルドツールがかわっていたりしてうまく試せな かった • aetherというツールに変わるらしい? – リリース時にはちゃんとなると思う
  8. 8. どーしたか • OpenFL – 現在のOpenFLに実装の足らないクラスや存在し ないクラスを手動でコピー – Backendフォルダのnativeやhtml5も修正しなけれ ば動かない • Away3D – 一部修正 • 後述
  9. 9. Away3Dをためす • サンプルプロジェクト • 一応一通り動いた • 手持ちのモデルファイルを読み込んだ – .3ds • 簡単に読めた – .awd(Away3d用のフォーマット) • FlashはOkだったけど、HTML5でダメだった – .dae (collada) • 問題はコイツ
  10. 10. Collada • DAEParser.hxのアニメーション読み込みにバ グがあった – ノードが存在するか否かの条件が逆 • vertex weightsを読もうとしてそれが存在したら例外の 刑 – StringMapの扱いが変 • 諸悪の根源Dynamicを使用してReflectで取得してる • StringMapはDynamicでないよ! • この手のバグは他にもあるはず
  11. 11. Pull requestの刑 • とりあえず、この2件は10/10にPull request 送った • まだこの中にはDynamicがあるので修正しだ いpull reqする予定 – おそらく、DAEParser.hx以外にもヤバいところはあ るかも • enum使ってないとか
  12. 12. でもんすとれぇしょん • FlashとHTML5とAndroidとWindowsネイティブ で動かす
  13. 13. Away3Dすげえ!
  14. 14. だがしかし • Collada読み込みにはまだバグがある – アニメーションは読み込み時にコケない ようになっただけ • {読みこめる/再生できる}ようになったとは言っていな い – 再生はできません!! • DAEParser.hxのどっかのバグ – Up_Axisを無視してる • BlenderはY_Upでないので困る
  15. 15. 対策? • MD5形式は動くっぽいのでそっちを使うとい い? – しかし、どうやってexportするんでしょ • 手持ちのモデルデータをexportするとエラーがでちゃう う! • Blenderわかんないからこちらはとんと検討がつかない – 「Animation_dataにアクセスできん」ってのはわかるけど・・・
  16. 16. まとめ • アニメーションなし(もしくはMD5使うなら)明日 から使える • Colladaはバグさえつぶせばこっちのもん – ブルドーザーしてpull request送っちゃううう • サンプルがわりときたない気がする
  17. 17. 他 • 極力Dynamicやめろ – 型が付けられるならつけてよう • using Reflectやめろ – 全ての型に影響うけるんよう – using Lambda気分でやるな • あっちとは大違い!
  18. 18. 糸冬 • ご清聴ありがとうございました

×