Может кто-нибудь указать мне на документ/алгоритм/ресурс/что-нибудь, что подскажет мне, как реализовать фильтр фильтрации текстуры (применяется, когда тексели меньше пикселей) в raytracer?фильтр фильтрации текстур в raytracing?
спасибо!
Может кто-нибудь указать мне на документ/алгоритм/ресурс/что-нибудь, что подскажет мне, как реализовать фильтр фильтрации текстуры (применяется, когда тексели меньше пикселей) в raytracer?фильтр фильтрации текстур в raytracing?
спасибо!
спасибо ребята за ваши ответы, но так как я не нашел подходящий techinque я создал что-то сам, который оказался очень хорошо работает:
Я полагаю, мой луч, чтобы конус с coneradius половины пиксель на плоскости изображения. когда луч попадает на поверхность, я вычисляю эллипс, который проецируется на поверхность (эллипс из пересечения плоских конусов). Затем, используя текстуркоординатные производные в точке пересечения, проецируем этот эллипс в текстовое пространство. Теперь я знаю, какая часть текстуры лежит под моим пикселем и может субсемплировать область
Я также использую RipMaps для улучшения качества - и я выбрал уровень RipMap на основе размера эллипса в Texturespace
Я думаю, вы имеете в виду mipmap 'ing.
Разговоры об использовании article.
Но nether говорит, как выбрать, какой mipmap использовать, но они часто смешиваются (больше и меньше mipmap).
Вот еще одна статья о how Google Earth works, и это говорит о том, как они миппируют землю.
Поскольку вы используете трассировку лучей, я подозреваю, что вы ищете фильтрацию высокого качества, которая динамически изменяет выборку на основе количества «ошибок». Исходя из этого предположения, я бы сказал, взгляните на «дифференциалы лучей». Здесь есть хорошая статья: http://graphics.stanford.edu/papers/trd/, и она учитывает такие эффекты, как рефракция и отражение.
Ваш ответ на себя звучит как правильный подход, но, поскольку другие могут наткнуться на страницу, я добавлю ссылку на ресурс по запросу. В дополнение к обсуждению mipmapping (ripmapping - это в основном более продвинутое mipmapping), они обсуждают эффекты отражения и преломления на производные и выбор уровня mip.
Homan Igehy. «Трассировка лучей». 1999. Труды SIGGRAPH. http://graphics.stanford.edu/papers/trd/
При ближайшем рассмотрении я вижу, что Рено Линдек упомянул эту статью. Сначала не понял, что это правильная ссылка, потому что он говорит, что метод выборочно динамически основан на ошибке выборки, что неверно. Фильтрация выполняется на основе размера отпечатка пикселя и использует только один луч, как вы описали.
Редактировать: Другие ссылки, которые могут быть полезны (http://www.cs.unc.edu/~awilson/class/238/#challenges). Перейдите к разделу «Производные координаты текстуры». Он предлагает обратное отображение производных текстур от поверхности к экрану. Я думаю, что это было бы неправильно для отраженных и преломленных лучей, но, возможно, проще реализовать и должно быть хорошо для первичных лучей.