多角形切断でのテクスチャの貼り付け方法
紙袋  2015/03/29(Sun) 16:33
矩形に貼られているテクスチャに対して任意の位置での分断処理を行いたいと思っています。
切断の処理自体は出来るのですが、矩形でなくなったそれぞれのポリゴンにテクスチャを貼ることがうまくいきません。
添付した図のような処理をしたいのですが何か方法はないでしょうか?

よろしくお願いします。



記事編集
Reputeless  2015/03/29(Sun) 22:33
少しローレベルな実装になりますが、Sprite を使うと良いと思います。

# include <Siv3D.hpp>

void Main()
{
const Texture texture(L"Example/Windmill.png");

Sprite spriteA{ 4, 6 };
spriteA.vertices[0].set({ 0, 0 }, 0.0, 0.0, Palette::White);
spriteA.vertices[1].set({ 360, 0 }, 0.75, 0.0, Palette::White);
spriteA.vertices[2].set({ 0, 320 }, 0.0, 1.0, Palette::White);
spriteA.vertices[3].set({ 240, 320 }, 0.5, 1.0, Palette::White);
spriteA.indices = { 0, 1, 2, 2, 1, 3 };

Sprite spriteB{ 4, 6 };
spriteB.vertices[0].set({ 360, 0 }, 0.75, 0.0, Palette::White);
spriteB.vertices[1].set({ 480, 0 }, 1.0, 0.0, Palette::White);
spriteB.vertices[2].set({ 240, 320 }, 0.25, 1.0, Palette::White);
spriteB.vertices[3].set({ 480, 320 }, 1.0, 1.0, Palette::White);
spriteB.indices = { 0, 1, 2, 2, 1, 3 };

while (System::Update())
{
spriteA.draw(texture, 50, 50);

spriteB.draw(texture, 80, 80);
}
}



編集
件名
Re: 多角形切断でのテクスチャの貼り付け方法
名前
コメント
画像添付


投稿修正キー (投稿を修正する時に使います)
画像認証 (右画像の数字を入力) 投稿キー

- WEB PATIO -