TAG : FlashPlaer10似非3D機能

ABC flyer

[ソースを表示] 3DモデルをBase64にエンコード/デコードしたBase64 3D modelと、3D地上スクロールを実装したABC groundを合わせて飛行機を飛ばしてみました。 空の壁紙の外が見えてしまっていますが、これはFlashPlayer10の似非3D機能のパースペクティブ計算の方法がプレイヤーのバージョンで異なっているためではないかと思われます。当時は問題なく表示されていました。互換性を重んじるFlashPlayerでは珍しい現象なのでこのままにしてます。 関連エントリ;WonderflでABC

wonderflで3D(FlashPlayer10)

[ソースを表示] FlashPlayer10 で搭載された”疑似”3D機能の最初の実験作です(Gouraud Shading版)。FlashPlayer10の疑似3D機能は、Graphicsに毛が生えた程度のものだったので、3Dのレンダリングに関する計算はほぼ全てコードとして書く必要がありました。今では当たり前の様々な処理をほとんど自前で準備したため、非常に勉強になりました。 関連エントリ;wonderflでガチ3D

メタボール

メタボールです。まだFlashPlayer9の時代で、FlashPlayer10の3次元計算ライブラリもありませんでした。 この当時PaperVision3Dという3次元計算ライブラリがありましたが、まだベータ版で行列計算のたびにnewをつかってインスタンスを確保するなど、パフォーマンス的にかなり残念な代物でした(もちろんその後のアップデートで改善されました)。そもそも当時のPV3Dは反射どころか、光源計算すら入ってませんでしたので、行列とポリゴンの演算は参考にしつつ演算処理を最適化し、テクスチャ計算、環境マップ、メタボール計算などを、自前で実装しています。