【问题标题】:Texture appears to be shifted when drawn on screen (XNA)在屏幕上绘制时纹理似乎发生了变化 (XNA)
【发布时间】:2012-07-12 22:48:37
【问题描述】:

为什么我的纹理边缘包含不需要的彩色线条?纹理看起来偏移了一部分像素。

【问题讨论】:

    标签: graphics xna texture2d


    【解决方案1】:

    Texture2ds 有时在您不绘制整个纹理时会被视为移位或错位,而只是通过SourceRect 参数绘制其中的一部分并且纹理的位置(Vector2)具有非整数坐标。它可能看起来像在其边缘显示不受欢迎的纹素。

    如果您的纹理带有 1px 紫色边框,则实际图像可能会出现略带紫色的边缘。您可以通过使纹理坐标积分来避免这种情况。

    如果这段代码引起了麻烦……

    Texture.Position.X = 4.9876f; // 4.9876f is an example of actual value
    Texture.Position.Y = 5.1234f;
    

    …尝试添加演员表:

    Texture.Position.X = (int)4.9876f;
    Texture.Position.Y = (int)5.1234f;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-22
      • 2016-12-02
      • 1970-01-01
      • 1970-01-01
      • 2015-04-16
      相关资源
      最近更新 更多