Textureの反転について
Number1  2014/06/24(Tue) 01:12
3DのTextureの描画はできたのですが、反転ができなくて困っています
ビルボードでもできなくて、Boxの張り付けたやつでもできませんでした!

もし、反転のやり方があれば教えてください!
どんなやり方でも構いません

お願いします
Reputeless  2014/06/24(Tue) 18:02
Geometry3D::CreateBox() で、頂点を一つ一つ指定できる MeshObject を作り、
テクスチャの X 座標をすべて反転してから Mesh を作ると、テクスチャが左右反転したボックスの Mesh ができます。

# include <Siv3D.hpp>

Mesh CreateMirroredBox(const Vec3& size)
{
MeshObject meshObject = Geometry3D::CreateBox(size);

for (auto& vertex : meshObject.vertices)
{
vertex.texcoord.x = 1.0f - vertex.texcoord.x;
//vertex.texcoord.y = 1.0f - vertex.texcoord.y;
}

return Mesh(meshObject);
}

void Main()
{
const Texture texture(L"Example/Earth.jpg", Texture::Mipped);

Graphics::SetLight(0, Light::Directional({ 0.4, 0.5, -0.8 }));

const Mesh box = CreateMirroredBox({ 5, 5, 5 });

while (System::Update())
{
Graphics::FreeCamera();

box.draw(texture);
}
}

- WEB PATIO -