2011.10.05 | 

どうも、kaminalyです。まだ生きていますよ。

Adobe MAX 2011 in Los Angeles なタイミングで公開されたflashplayer11ですが、
windowsとmacで全然パフォーマンスが違ってアレ?っとなった話です。

あ、flashplayer11のダウンロードがまだの方はこちら
http://get.adobe.com/jp/flashplayer/

開発者用のdebug playerはこちら
http://www.adobe.com/support/flashplayer/downloads.html


早速flashplayer11をダウンロードして驚愕のパフォーマンスに驚愕なんですが、
というか、Incubatorをインストールしてたので、すでに試していたのですけどね、
Starlingは見てなかったので、早速サンプルを探して回ってみた。

Molehillのサンプルは結構たくさんあるんだけど、
企業(NISSAN)がプロモーションサイトとして既にサイトを公開していた!
http://www.nissan-stagejuk3d.com/

開発コストの急上昇を心配しつつ、もう仕事として成り立つのか?と驚愕w

そして、Starlingのサンプル
http://www.bytearray.org/?p=3371

と、このサンプルを見て気になった事がありました。
ここまでwindowsのFirefoxで見ていたのですが、
ふと、Flash Tracerでtrace文を見たら、


[Starling] Initialization complete.
[Starling] Display Driver:DirectX9 (Direct blitting)

となっていた。
?あれ、DirectX使うんだっけね?
勝手な思い込みでOpenGLに投げられると思っていたので、
そうなんだなぁと思いつつ、では、macでOpenGLを使うとなると、
パフォーマンスの差ってどうなんだ??と疑問に思い、
マシンパワーの差もあるものの、許容範囲なのかが心配になって調べる事にした。

早速、macにflashplayer11をインストールして、NISSANのサイトを閲覧した。

...

...

..

あれ?激遅!

OpenGLになっただけで、こんな事あるのか?
すぐに次のStarlingのサンプルでtrace文を確認してみた。


[Starling] Initialization complete.
[Starling] Display Driver:Software (Direct blitting)

あれ? Software?
じゃぁ、OpenGLじゃない?
What's マイケル お祭りかい?

調べてみると、Wikipediaには
DirectX 9 (Windows)
OpenGL 1.3 (Mac OS X, Linux)
OpenGL ES 2.0 (Android, iOS, BlackBerry Tablet OS)
などを使用。
未対応なら、SwiftShaderを使用
となっている。

macなんだけどなー。
OpenGLになげられてないんだなぁ(謎)
これ、多くのmacユーザで起こってたら問題だなぁ。

結論
Softwareレンダリング(SwiftShader?)だと差が激しい(激重になる)ので利用時は注意が必要!
※OpenGL時はいまだ未確認(汗)