Методы закраски
Диффузное отражение и рассеянный свет
Матовые поверхности обладают свойством диффузного отражения, т. е. Равномерного по всем направлениям рассеивания света. Поэтому кажется, что поверхности имеют одинаковую яркость независимо от угла обзора. Для таких поверхностей справедлив закон косинусов Ламберта, устанавливающий соответствие между количеством отраженного света и косинусом угла q между направлением на точечный источник света интенсивности Ip и нормалью к поверхности (рис. 6.1). При этом количество отраженного света не зависит от положения наблюдателя.
Рис. 5.1 Падающий свет и нормаль к поверхности
Освещенность рассеянным светом вычисляется по формуле:
Id = Ip × kd × cos q
Значение коэффициента диффузного отражения kd является константой в диапазоне (0, 1) и зависит от материала. Если векторы и нормированы, то используя скалярное произведение, формулу освещенности можно записать так:
Id = Ip × kd × ( · )
Предметы, освещенные одним точечным источником света, выглядят контрастными. Этот эффект аналогичен тому, который можно наблюдать, когда предмет, помещенный в темную комнату, виден при свете направленной на него фотовспышки. В данной ситуации в отличии от большинства реальных визуальных сцен отсутствует рассеянный свет, под которым здесь понимается свет постоянной яркости, созданный многочисленными отражениями от различных поверхностей. Такой свет практически всегда присутствует в реальной обстановке. Даже если предмет защищен от прямых лучей, исходящих от точечного источника света, он все равно будет виден из-за наличия рассеянного света. Учитывая это формулу окраски можно записать так:
Id = Ia × ka + Ip × kd × ( · )
Рассеянный свет представлен членом Ia и ka определяет количество рассеянного света, которое отражается от поверхности предмета.
Точечный источник света удобнее всего расположить в позиции совпадающий с глазом наблюдателя. Тени в этом случае отсутствуют, а лучи света, падающие на поверхность, окажутся параллельными. Однако теперь, если две поверхности одного цвета параллельны друг другу и их изображения перекрываются, нормали к поверхностям совпадают и, следовательно, поверхности закрашиваются одинаково и различить их невозможно. Этот эффект можно устранить, если учесть, что энергия падающего света убывает пропорционально квадрату расстояния, которое свет проходит от источника до поверхности и обратно к глазу наблюдателя. Обозначая это расстояние за R, запишем:
Id = Ia × ka + Ip × kd × ( · )/R2
Однако данным правилом на практике трудно воспользоваться. Для параллельной проекции, когда источник света находится в бесконечности, расстояние R также становится бесконечным. Даже в случае центральной проекции величина 1/R2 может принимать значения в широком диапазоне, поскольку точка зрения часто оказывается достаточно близкой к предмету. В результате закраска поверхностей, которые имеют одинаковые углы q между и , будет существенно различаться. Большей реалистичности можно достичь, если заменить R2 на r+k, где k – некоторая константа, а r –расстояние от центра проекции до поверхности:
Id = Ia × ka + Ip × kd × ( · )/(r+k)
Для представления диффузного отражения от цветных поверхностей уравнения записываются отдельно для основных цветов модели CMY (голубого, пурпурного и желтого). При этом константы отражения для этих цветов задаются тройкой чисел (kdc, kdm kdy). Эти цвет используются, поскольку отражение света является субтрактивным процессом. Поэтому интенсивность для цветного изображения описывается тремя уравнениями:
Idс = Iaс × kaс + Ipс × kdс × ( · )/(r+k) (для голубой компоненты)
Idm = Iam × kam + Ipm × kdm × ( · )/(r+k) (для пурпурной компоненты)
Idy = Iay × kay + Ipy × kdy × ( · )/(r+k) (для желтой компоненты)