我使用XNA 4.0框架在c#中编码。我注意到当精灵向上,向下,向左,向右移动(它翻转到正确的方向)时,精灵很清晰,焦点与绘制方式类似。
向上精灵的示例(清晰图像);
但出于某种原因,当我沿着任何对角线方向对角移动玩家时,它会变得有点模糊。
对角线向上/向右方向的精灵示例(模糊图像);
我只是围绕它的原点(精灵中心)旋转物体,除了旋转和原点之外,我不会弄乱任何其他绘图属性。
有人能说清楚为什么会这样吗?这是精灵旋转时会发生什么?有没有办法可以旋转精灵并保持其清晰度?
---我不确定这是否重要,但精灵是在我的精灵表中朝向上方绘制的---
答案 0 :(得分:1)
我不确定这是否重要,但精灵是在我的精灵表中朝向上方绘制的
确实如此。当精灵上下移动时,绘制到scree的像素可能正是精灵表中的像素,只是因为它们与缓冲区对齐。旋转图像时,需要进行计算以确定要遮挡的最佳像素。这导致一些像素是灰色而不是所有黑色和白色导致“模糊”。你可以使用抗锯齿设置来获得你满意的东西,但是这可能是一个更大的问题,精灵有像你的精灵一样的硬线。