Как на самом деле выполнить z-интерполяцию при растеризации скана - PullRequest
0 голосов
/ 07 апреля 2020

В настоящее время я реализую z-буферизацию для мягкого графического движка, который пишу на C ++. Мне нужно знать значение глубины в каждом пикселе при выполнении растеризации, чтобы я мог использовать метод проверки глубины для окклюзии. Я уже могу успешно растеризовать треугольники. Я использую алгоритм линии Брезенхэма, чтобы получить пары координат x, чтобы растеризовать их, когда я делаю шаг по y. Мне просто нужно знать, как рассчитать глубину для каждого пикселя, учитывая, что я знаю y и перехожу x. Какие значения z я использую. Я верю его 1 / Z, но почему? а что г? это z как в z, или z как в w? (которое является фактическим значением z из-за перспективной проекции).

...