У меня есть фрагментный шейдер, который рисует некоторые вещи. Кроме того, я хочу нарисовать прямоугольник толщиной 1 пиксель вокруг фрагмента. Я использую пошаговую функцию, но проблема в том, что координаты UV находятся в диапазоне от 0,0 до 1,0. Как узнать, когда фрагмент находится в определенном пикселе? Для этого я хочу нарисовать по краям.
c.r = step(0.99, UV.x);
c.r += step(0.99, 1.0-UV.x);
c.r += step(0.99, UV.y);
c.r += step(0.99, 1.0-UV.y);
Приведенный выше код просто рисует прямоугольник, но проблема с толщиной составляет 0,01% от общей ширины / высоты. Есть ли хорошее описание UX, FRAGCOORD, SCREEN_TEXTURE и SCREEN_UV?