tag: " swift2 "

MetalのGPGPUによるパーティクルデモ

読み込んだテクスチャをパーティクルに分解して動かすデモ。動きは滝のように画像がパーティクルに分解して落下していくのをイメージ。

画像サイズが512*512、1ピクセル=1パーティクルに分解するので、約26万個のパーティクルを動かしているが、60FPSを維持している。約100万まで増やすとiPhone6+で30FPSぐらいとなる。

そんなに複雑な計算をさせていないとはいえ、さすがGPGPUといったところ。なお、処理時間のほとんどはGPGPUの部分でCPUは余力がある様子。

動作イメージ

Read On →

MetalのGPGPUによるPerlinノイズ

GPGPUでリアルタイムにパーリンノイズを生成しテクスチャに書き込んで表示するデモ。

パーリンノイズはGPU Gems2の改良パーリンノイズで、それを元にした数種類を選択可能。 デモでは3次元ノイズを生成し、z値だけを時間で加算していきノイズを変化させている。

動作イメージ

Read On →

MetalKitのSwift版サンプル

元ネタのApple公式のMetalKitEssentialsをSwiftで書き直し+αしたもの。 内容は主にMetalKitを使って、obj形式のモデルをテクスチャありで表示させるだけ。 シェーダもいたってシンプルでライトもなし。
ちなみに、MetalKitはiOS9以降でしか使えないので注意。

Read On →