TAG : 反射

GIMMICK – FANTAISIE IMPROMPTU

[ソース表示] SiON v0.652 で実装されたMIDIデータ再生機能と、v0.64で実装された新規PCM音源エンジンを合わせて、SiON の音楽同期機能で Stage3D 描画とシンクロさせたデモです。やってること自体は一般的な MIDI Player の鍵盤表示とあまり変わりはありません。 画面ドラッグでカメラ移動です。 関連エントリ;AcrionScript でからくりショパン

Boolean Crystal

[ソース表示] ステンシルバッファによる立体ブーリアン演算をやってみました。ステンシルバッファの使用方法などの詳細はブログに書いています。地味にCubeTextureによる似非屈折レンダリングも行ってますが、計算が間違ってるので注意。 関連エントリ;ActionScript で立体のブーリアン演算+AGALで擬似屈折+反射シェーダ(1)

Spirographical Ingot Cast

[ソース表示] スピログラフを3次元に展開してみました。文字列からパラメータを生成して形状に反映させています。パーティクルエンジンにはPoint Sprite Particleを使ってます。 関連エントリ;ActionScript でスピログラフ

Metallic Soft Cube

[ソース表示] 疑似環境マップによる反射表現とジオメトリブレンディングを、FlashPlayer11から搭載されたGPUレンダリング機能 Stage3D で実装しました。とくに新しいことはしていません。基本的なStage3Dの使用方法です。 関連エントリ;ActionScriptでジオメトリブレンディング+AGALで金属光沢シェーダ

Clear Water with refraction rendering

[ソース表示] saharanさんの3D水面 / Water 3Dに屈折レンダリングを加えてリアルな水面を実装しました。当時はまだStage3Dが未実装だったため、ForkしたコンテンツはFlashPlayer10で動作しますが、上のデモはStage3Dバージョンです。 FlashPlayer11(Stage3D)コースティックバージョン;Clear Water with caustics [Stage3D version] FlashPlayer10(似非3D)バージョン;Clear Water with refraction rendering forked from: 3D水面 / Water 3D FlashPlayer10(似非3D)コースティックバージョン;Clear Water with caustics 技術解説エントリ;ActionScript で屈折レンダリング+Molehill雑感

Real Time Ray Tracing

[ソース表示] レイトレースの中でも最も基本的な球面反射をリアルタイムでレンダリングします。200行弱の非常にシンプルな実装のため、移植性は高いと思います。 jsdo.it にはJavaScript version[Real Time Ray Tracing]も投稿しました。こちらはブラウザごとのNumberの扱いの違いなどに微妙に悩まされました。

メタボール

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