Rendering with Flash10(ActionScript3)

by syoyo

rwf_ao.jpg

Rendering with Flash (Flash10 is required. It takes a minute to display rendered image)

Since Flash10 has been released, I’ve ported Proce55ing version of simple ambient occlusion renderer into Flash10(ActionScript3) to test the performance of AS3 in Flash10.

In my Core2 2 GHz, the demo runs in 56 sec for 256×256, 256 AO samples/pixel.
Unfortunately, this is about 7 times slow compared to Proce55ing version.

[En]

Flash10 リリース記念ということで、Flash10 の(AS3 の)パフォーマンスを調べるのも兼ねて,
Proce55ing で書いたアンビエントオクルージョンレンダラを ActionScript に移植してみました.
絵が出るまで 1 分くらいかかります(たぶん Flash10 が無いと見れません).

残念ながら、速度は Proce55ing 版の 1/7 くらいでした.
教育目的ならなんとか我慢できるレベル、でしょうか.
ただここから発展させていくことを考えるとやはり Proce55ing に比べてキツいものがあります.
(ActionScript のコードのほうが Proce55ing(java) よりも複雑になってますし. たとえば var x:Type みたいなところ)

ちなみに Flash10 からは Pixel Bender と言って、GLSL のような言語で GPU(?) で
高速ピクセル処理させる機能が付きました.
高速なのはいいのですが、言語としては制約が多く再帰関数とかが使えないなどがあるので、
Pixel Bender でレンダラというのには使えないですね.

Source code

Advertisements