XNA旋转纹理2D

Com*_*ake 6 c# xna

我想在XNA中旋转纹理.我知道我可以在绘制时旋转它,但我希望Texture2D变量是旋转纹理.有没有办法做到这一点?

ica*_*tan 5

使用RenderTarget,将旋转的纹理绘制到RenderTarget中,获取纹理并保存.


Bla*_*lau 5

您应该提供一个管理纹理坐标旋转的新着色器.由于basiceffect的HLSL代码是公共的,因此添加此行为应该非常容易.

基本效果HLSL代码

将角度参数传递给着色器,转换应为:

 newU = U*cos(alfa) - V*sin(alfa);
 newV = U*sin(alfa) + V*cos(alfa);
Run Code Online (Sandbox Code Playgroud)