トップページ > 記事閲覧
ポリゴン画像のスクロール
名前:Tir 日時: 2016/01/19 01:19

質問させて下さい。 ポリゴンで256*256の画像をループで縦にスクロールさせる場合 Vert[ 0 ].u =0.f; Vert[ 0 ].v =MoveY/256.f; Vert[ 1 ].u =1.f; Vert[ 1 ].v =MoveY/256.f; Vert[ 2 ].u =0.f; Vert[ 2 ].v =(256.f+MoveY)/256.f; Vert[ 3 ].u =1.f; Vert[ 3 ].v =(256.f+MoveY)/256.f; Vert[ 4 ]=Vert[ 2 ] ; Vert[ 5 ]=Vert[ 1 ] ; MoveY+=0.5f; としてSetTextureAddressModeUV(DX_TEXADDRESS_WRAP,DX_TEXADDRESS_WRAP)に設定すればいいのですが 例えばこの256*256の内192*192までの範囲でスクロールさせる場合どのようにすればいいでしょうか?
メンテ

Page: 1 |

Re: ポリゴン画像のスクロール ( No.1 )
名前:管理人 日時:2016/01/19 23:52

> 例えばこの256*256の内192*192までの範囲でスクロールさせる場合どのようにすればいいでしょうか? テクスチャーの端以外でスクロールするような専用のピクセルシェーダーを作成して使用するといった ことをしない限りテクスチャーの端以外でスクロールすることはできません ( スクロールする位置でポリゴンを分ければ一応テクスチャーの端以外でもスクロールできるといえなくもないですが・・・ )
メンテ
Re: ポリゴン画像のスクロール ( No.2 )
名前:Tir 日時:2016/01/20 00:08

回答ありがとうございます。 現在スクロールさせたい位置でトリミングした画像を使って望み通りの結果を得ることができているのですが 画像のサイズが2の累乗ではないのでやはり環境によっては結果が変わってしまうのでしょうか?
メンテ
Re: ポリゴン画像のスクロール ( No.3 )
名前:管理人 日時:2016/01/20 01:11

そうですね…まだ2の累乗サイズにしか対応していないグラフィックスデバイスもありますので、 2の累乗サイズに対応していないグラフィックスデバイスを使用している環境では意図した 描画結果が得られないことになると思います 1.MakeScreen で2の累乗サイズの画像を作成 2.1で作成した画像を SetDrawScreen で描画対象にして、そこに2の累乗サイズではない画像を  1で作成した画像サイズいっぱいに拡大して描画 3.1で作成した画像を 2の累乗サイズ以外の画像の代わりに使用する ということをすれば少し無理やりですが2の累乗以外のサイズに対応していない環境でも 問題なく(この手間自体が問題とも言えますが…)動作させることは可能です (・・;;
メンテ
Re: ポリゴン画像のスクロール ( No.4 )
名前:Tir(解決) 日時:2016/01/20 07:38

重ね重ね回答ありがとうございます
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存