如果我使用非整数作为字符串的位置,文本会变得模糊。是什么导致了这个以及如何纠正它?
this->pSpriteBatch->Begin();
this->pSpriteFont->DrawString(this->pSpriteBatch, szTempMessage, XMFLOAT2(x, y), color);
this->pSpriteBatch->End();
我只用位置和颜色参数调用它。
答案 0 :(得分:0)
SpriteBatch
使用CommonStates::LinearClamp
进行渲染,因此如果渲染到子像素位置,它将会变得模糊。您可以尝试使用其他过滤模式,并使用Begin
:
// create an instance of CommonStates as pStates
pSpriteBatch->Begin(SpriteSortMode_Deferred,
nullptr /*use default blend state */,
pStates->AnisotropicClamp());
pSpriteFont->DrawString(...);
pSpriteBatch->End();
看看这是否会改善您的结果。