Adobe Flash Player 10向けに3Dコンテンツを作ったのですが、Flash 10の3D機能はCPU負荷が重いような気がします。

むしろ、Flash 9向けのPapervision3D等の3Dライブラリを使った方が、CPU負荷が軽いように感じます。
Flash 10の3D機能がイケてない理由や、3Dライブラリを使った方がいいか、Flashの3Dに関するご意見お願いします。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2009/09/24 01:35:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:yasu-log No.1

回答回数30ベストアンサー獲得回数11

ポイント27pt

こんにちは。ClockMakerのYasuといいます。


□CPU処理負荷について

一概には言えませんがCPU負荷が大きくなる理由は次の点が大きく影響していると思います。


カリング・クリッピングといって、カメラ(視点)に近すぎて(もしくは遠すぎて)表示されないポリゴンは3Dライブラリではレンダリングしないような設定ができます。Flash 10 3Dをタイムライン等で利用する場合は、その機能がないので不要な領域もレンダリングを行いCPU負荷が高いのでは、と考えています。


なお、Flash 10の3D関連の機能は低レベルのAPIですので、3Dライブラリに組み込まれたときに真価が発揮されるのだと思います。例えば、次のFlash 10の機能を利用したライブラリは高速に動作しているのがわかります。


Alternativa3D (Flash 10ネイティブ3Dが搭載されたライブラリ)

http://alternativaplatform.com/en/alternativa3d/

Away3D (Flash 10と9の機能の違いを比較)

http://away3d.com/away3d-33-flash-10-version-update

Flash 10の3D機能を利用したPapervisionXのデモとしてRalphが紹介したデモ

http://www.unitzeroone.com/blog/2008/11/24/some-experiments-with...


□Flash 10の3D機能について

なお、Flash10 3Dと既存の3Dライブラリとを比較した場合のメリットですが次のように思います。


Flash 10 3Dのメリットは

・タイムラインで制御できる

・テクスチャとポリゴンを分けて考えなくてもよい


3Dライブラリのメリットは

・カメラ(視点)という概念がある

・ポリゴン数の最適化ができる

・その他、ライブラリに搭載された様々な機能が利用できる


□意見

以上の理由からこだわって作りたい方は、3Dライブラリを利用するのが良いと思います。(もちろん自前実装できるのであれば、ライブラリを利用せず作るのも良いと思います)


以上で回答になっていますでしょうか。よろしくお願いします。

id:vixar

Flash10でニアクリッピングも計算しています。

Flash10でもカメラは行列をかけるだけで表現できます。

僕もSuperMotion3DというFlash10の3D機能を使った3Dライブラリを作っています。

それでもFlash9+3DライブラリのほうがCPU負荷が小さく感じます。

2009/09/17 17:24:39

その他の回答2件)

id:yasu-log No.1

回答回数30ベストアンサー獲得回数11ここでベストアンサー

ポイント27pt

こんにちは。ClockMakerのYasuといいます。


□CPU処理負荷について

一概には言えませんがCPU負荷が大きくなる理由は次の点が大きく影響していると思います。


カリング・クリッピングといって、カメラ(視点)に近すぎて(もしくは遠すぎて)表示されないポリゴンは3Dライブラリではレンダリングしないような設定ができます。Flash 10 3Dをタイムライン等で利用する場合は、その機能がないので不要な領域もレンダリングを行いCPU負荷が高いのでは、と考えています。


なお、Flash 10の3D関連の機能は低レベルのAPIですので、3Dライブラリに組み込まれたときに真価が発揮されるのだと思います。例えば、次のFlash 10の機能を利用したライブラリは高速に動作しているのがわかります。


Alternativa3D (Flash 10ネイティブ3Dが搭載されたライブラリ)

http://alternativaplatform.com/en/alternativa3d/

Away3D (Flash 10と9の機能の違いを比較)

http://away3d.com/away3d-33-flash-10-version-update

Flash 10の3D機能を利用したPapervisionXのデモとしてRalphが紹介したデモ

http://www.unitzeroone.com/blog/2008/11/24/some-experiments-with...


□Flash 10の3D機能について

なお、Flash10 3Dと既存の3Dライブラリとを比較した場合のメリットですが次のように思います。


Flash 10 3Dのメリットは

・タイムラインで制御できる

・テクスチャとポリゴンを分けて考えなくてもよい


3Dライブラリのメリットは

・カメラ(視点)という概念がある

・ポリゴン数の最適化ができる

・その他、ライブラリに搭載された様々な機能が利用できる


□意見

以上の理由からこだわって作りたい方は、3Dライブラリを利用するのが良いと思います。(もちろん自前実装できるのであれば、ライブラリを利用せず作るのも良いと思います)


以上で回答になっていますでしょうか。よろしくお願いします。

id:vixar

Flash10でニアクリッピングも計算しています。

Flash10でもカメラは行列をかけるだけで表現できます。

僕もSuperMotion3DというFlash10の3D機能を使った3Dライブラリを作っています。

それでもFlash9+3DライブラリのほうがCPU負荷が小さく感じます。

2009/09/17 17:24:39
id:orange-suzuki No.2

回答回数1ベストアンサー獲得回数0

ポイント27pt

こんにちは。orangeと申します。

ありきたりな回答かもしれませんがよろしくお願いいたします。


■3Dライブラリを使うメリット

  • web上に多数なサンプルがあること
  • 独自の実装に由らないためバグが起こりにくい(起こっても解決するのに助けてもらいやすい。)

■Flash10の機能を使うメリット

  • 最新の手法へのキャッチアップ
  • 次に出る技術への対応が早い可能性がある
  • 他では実現されていない新しい表現手法を実現できる可能性がある

----


これらは開発効率や、表現手法という側面から見たメリットだと思います。

閲覧時のパフォーマンスなどは測定して一番いいやつを選ぶということではいかがでしょうか?

id:vixar

メリットの視点からも考えられますね。

パフォーマンスを測定したところ、Flash10の3D機能よりPapervision3Dの方がCPU負荷が軽かったです。

ただFlash10からハードウェアに対応したので、最新のグラフィックスボードなら目茶苦茶表示能力が高いのかもしれません。

2009/09/17 22:54:51
id:azuco1975 No.3

回答回数613ベストアンサー獲得回数16

ポイント26pt

Flash 10はマルチコアCPU用に作成されてるからですね。

id:vixar

マルチコアCPU用だったのは知りませんでした。

2009/09/18 17:34:26

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません