Текстура кажется смещенной при рисовании на экране (XNA)
Почему края моей текстуры содержат нежелательные цветные линии? Текстура выглядит смещенной на часть пикселя.
1 ответ
Решение
Texture2d
Иногда их можно рассматривать как смещенные или неуместные, когда вы рисуете не всю текстуру, а только ее часть с помощью 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;