Назад | Содержание | Вперед
В таких задачах компьютерной графики как получение изображений фотографического качества (проще говоря то, чем занимаются 3ds max, Maya и прочие), имитирующих реальные объекты, жизненно необходимы материалы. Будем полагать, что основным методом закраски у нас будет алгоритм Фонга (Phong shading) с интерполяцией нормалей (т.к. основным объектом будем считать треугольник, с заданными нормалями в вершине).
В закраске по Фонгу используются следующие св-ва материала:
Дополнительно используются следующие свойства:
Для нахождения векторов отраженного луча и преломленного луча необходимо вспомнить геометрию.
Отраженный луч. Находим - проекцию
на
, вектор отраженного луча получается как
.
Преломленный луч. Находим двойное векторное произведение (за
порядок умножения не ручаюсь). Длина полученного вектора равна синусу угла
между нормалью и падающего вектора. Но длина преломленного луча равна синусу
угла между нормалью и падающего вектора, умноженному на коэффициент
преломления. Теперь нужно только промасштабировать полученный вектор и сложить
его с нормалью
. Корень нужен, чтобы
получить в результате единичный вектор. Если под корнем получается
отрицательное число, то наблюдается эффект полного отражения.
Назад | Содержание | Вперед