2009-10

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

続:ポイントスプライト

前回に引き続きポイントスプライトによるパーティクルを実装中です。前回の疑問点だった『2次元ベクトルのUV座標を座標変換するとUVによるパターン切り替えができるけど、なぜ?』という理由が(半分)わかりました。このUV座標は頂点に含まれているUV座標と認識していたのですが、よくよく考えてみるとピクセルシェーダー内でのことですので、頂点ではなく、描画するピクセルのUV座標でした。これから描画するピクセルがテクスチャーのどの辺か?という情報で、それに対して座標変換することでUV座標を指定しているかのような結果になっていたわけです。
さて、そうとわかればUVアニメーションはもらったも同然!と思っていたら…。今度は回転でハマりました。ポイントスプライトでは頂点の回転はできないっぽいので、UVを回転させることでパーティクルを回転させることになります。しかし、1枚のテクスチャーに複数のパターンが描かれているということは、UVを回転させるととなりのパターンのテクセルを拾ってきてしまうではないですか! もっと言うと回転させすぎるとパターンの隅がポリゴンの外にいってしまい画像が切れてしまいます…。う~ん、これについては我慢するしかないなぁ…。テクスチャーを描くときに外側をあまり使わないようにして、回転もあまり使わないようにします…。普通にポリゴンで描けばこんなことにはならないんですけどね~。ちなみにUV値の回転はCCOのサンプルにあります。
091001_FireParticle2.jpg
試しに100個パーティクル配置してみましたが、360上でも落ちることなく60フレーム/秒で動作しています。

全文を表示 »

スポンサーサイト

NEW ENTRY «  | BLOG TOP |  » OLD ENTRY

プロフィール

Karu_gamo

Author:Karu_gamo
<メールアドレス>
karu_gamo#hotmail.co.jp
#を@に置き換えてえてください。

<自分リンク>
かるがも研究所【新】
YouTubeチャンネル
公開素材置き場
仕様書
旧ブログ(見るとこないです)
管理者ページ

リンク

YouTube動画

FC2カウンター

カテゴリー

Twitter

 

月別アーカイブ

RSSフィード

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。