SDL2 - 旋转图像,宽度和高度均匀90度

时间:2016-06-03 21:20:24

标签: c++ rotation sdl sdl-2

我在一个非常基本的游戏中使用c ++和SDL2。因为我使用非常小的图像(最大64x64),所以对我来说像素精确是很重要的。但当我尝试旋转例如如图所示,10x10图像乘以90°的倍数,如下所示:

enter image description here

我猜这种情况正在发生,因为中心被选为像素(5,5),它不是中心,但实际上有点偏向右下角。实际中心点应该是(4,4)(5,5)之间的线,但SDL在渲染时不允许浮点值。即使10x10图像完全可旋转(在例如Gimp中工作),SDL似乎也不考虑纹理的均匀尺寸。

那么有没有办法在SDL中正确旋转图像,或者我必须手动检查角度,如果它是90°的倍数,则在旋转后将其自身移回?对于不是90°倍数的角度,我不在乎,因为在查看单个像素时图像将非常失真,并且您不会轻易识别1像素的移位。

0 个答案:

没有答案