0

我试图在我的 2D 横向滚动条中为玩家周围着色一个圆圈,但我一直得到一个椭圆形!这是我正在使用的重要代码部分:

    if(length(abs(coords - playerCoords)) < .1)
    {
        color = color *float4(1,0,1,1);
    }

  return color;

我的屏幕尺寸是 1280 宽 x 720 高。我知道这是造成失真的原因,但我对自己的问题了解不够,无法提出或找到解决方案。有人可以向我解释如何补偿屏幕拉伸吗?

谢谢!

-ATD

4

1 回答 1

0

将“abs()”项乘以“float2((720./1280.),1.0)”——或者你的 y/x 纵横比可能是什么

您使用的坐标在 0-1 空间中标准化,因此只需更正它们

于 2013-01-24T03:59:44.367 回答