A method, system, and computer program product are provided that represent
complex point and area illumination in computer graphics shading and
animation. An irradiance vector field table representative of an
irradiance field for a scene to be rendered is generated and stored in a
texture memory. During rendering, the scene is lit based on irradiance
vectors in the irradiance vector field table. For each point being lit, a
corresponding irradiance vector is generated from the irradiance vector
field table. A vector operation is performed between the irradiance vector
and a surface normal for the point to compute an irradiance energy
component. In one example hardware embodiment, a look-up unit looks up and
interpolates irradiance vectors for selected points in the irradiance
vector field table to compute an interpolated irradiance vector. A dot
product unit calculates a dot product between the interpolated irradiance
vector and a surface normal for the point being shaded and outputs an
irradiance energy component for use in shading. The irradiance vector
field table can represent an irradiance field for one or more complex
point and area light sources. A set of multi-resolutional irradiance field
tables covering progressively larger regions of a scene at progressively
coarser resolutions is generated. One or more rendering passes are used to
render a computer graphics image representing illumination from a complex
point or area source. The irradiance vector field table can be generated
to account for shadows and/or participating media such as fog or smoke.
Shadow maps and back-projection or shadow volume algorithms can be used to
determine light source visibility which is used to scale the irradiance
energy component.
Метод, система, и продукт компьутерной программы provided that представьте сложное освещение пункта и зоны в затенять и одушевленност машиннаяа графика. Представитель таблицы поля вектора irradiance поля irradiance для места, котор нужно представить произведен и сохранен в памяти текстуры. Во время представлять, освещено место основало на векторах irradiance в таблице поля вектора irradiance. Для каждого будучи освещанным пункта, соответствуя вектор irradiance произведен от таблицы поля вектора irradiance. Деятельность вектора выполнена между вектором irradiance и нормальным поверхности для пункта для того чтобы вычислить компонент энергии irradiance. В одном воплощении оборудования примера, блок look-up смотрит вверх и интерполирует векторы irradiance для выбранных пунктов в таблице поля вектора irradiance для того чтобы вычислить интерполированный вектор irradiance. Блок продукта многоточия высчитывает продукт многоточия между интерполированным вектором irradiance и нормальным поверхности для будучи затенянным пункта и выводит наружу компонент энергии irradiance для пользы в затенять. Таблица поля вектора irradiance может представить поле irradiance для one or more сложных источников света пункта и зоны. Произведен комплект таблиц поля irradiance multi-resolutional покрывая прогрессивно более большие зоны места на прогрессивно более грубых разрешениях. One or more представляя пропуски использованы для того чтобы представить изображение машиннаяа графика представляя освещение от сложного источника пункта или зоны. Таблицу поля вектора irradiance можно произвести для учета теней and/or участвуя средств such as туман или дым. Карты тени и back-projection или алгоритмы тома тени можно использовать для того чтобы обусловить видимость источника света использована для того чтобы вычислить по маштабу компонент энергии irradiance.