Како ја претставуваме светлината во компјутерски-генерирани сцени

Во претходните текстови ни беше одговорено од каде доаѓа светлината и како е таа поврзана со нано-објектите. Но сте се запрашале ли некогаш како всушност работи осветлувањето на нашата околина? Имено, дури и ако пробаме да побараме некое темно место во нашата соба, скоро е невозможно тоа да биде целосно неосветлено. Ова е затоа што најчесто светлината не се впива целосно туку се рефлектира од околните објекти, и се рефрактира (ја менува својата насока на движење) кога поминува од еден материјал во друг. Со ова, светлосните фотони евентуално можат да стигнат насекаде, дури и на места кои мислиме дека се во сенка и треба да бидат потполно неосветлени. Слика 1 претставува една реалистична симулација кадешто светлината од изворот на таванската соба ги осветлува трите топки на подот, но во исто време се рефлектира од левиот црвен и десниот зелен ѕид, коишто придонесуваат со црвена и зелена светлина на двете поголеми топки. Од друга страна, помалата топка работи како огледало и ја рефлектира целата просторија. Ваквиот метод на илуминација, кое го зема во предвид индиректното осветлување од околните предмети поради рефлектираната светлина, се нарекува глобална илуминација.

Слика 1. Глобална илуминација кај компјутерски-рендерирана сцена. (Превземена од http://gearcraft.us/global-illumination-minecraft-seus-v10-2-download/)

Уште во најраните денови на развитокот на компјутерската графика, компјутерските научници се труделе да го симулираат овој процес на нашите монитори. Очигледно било дека ако се земе глобалната илуминација без компромиси на тогашните системи, интеракцијата со корисникот би била изгубена поради огромното време потребно за рендерирање на комплексните сцени. Ова е затоа што доколку во пресметките земеме во предвид дека фотоните се распрснуваат на n различни насоки секогаш кога ќе се рефлектираат од некој објект, после m рефлектирања добиваме nm пресметки. А верувајте ми, компјутерџиите се плашат од експоненти како Џери од Том. Од друга страна, доколку работиме без илуминација, нема да можеме да препознаеме никакви тродимензионални карактеристики на нашата сцена и истата ќе биде само силуета од објектот што сакаме да го прикажеме, како кај примерот на Слика 2.

Слика 2. Рендерирање на објект без илуминација. (Превземена од http://math.hws.edu/bridgeman/courses/324/s06/doc/opengl.html)

Затоа, во 1973, Виетнамскиот научник Буи Фонг во својата докторска дисертација предложил попрост модел на илуминација којшто нема да го зема во предвид рефлектирањето на светлината од објектите за сметка на побрзо време на рендерирање на сликите. Со други зборови, пресметана е директната илуминација од светлосниот извор, меѓутоа е оттргната индиректната светлина која резултира како распрснување на фотоните насекаде откако ќе дојдат во контакт со објект во сцената. Ваквиот модел се вика локална илуминација. Иако истиот се сметал за радикален во тоа време, модификација на ваквиот модел се користи и денеска за рендерирање на тродимензионални сцени со честокористените OpenGL АПИ (апликациони програмски интерфејси). На пример, добро познатата игра, couter-strike ги рендерира сцените користејќи OpenGL. Еден очигледен пример за разликите помеѓу глобалната и локалната илуминација е прикажан на Слика 3. Овдека можете да забележите неколку очигледни ефекти, од коишто најпрепознатлив е тој како зелената и црвената боја од соодветните ѕидови немаат влијание на белиот ѕид во локалната илуминација, за разлика од глобалната.

Слика 3. Споредба на (лево) локална и (десно) глобална илуминација кај компјутерски-рендерирана сцена. (Превземена од http://www.thegnomonworkshop.com/news/2013/05/light-for-3d-animation-globally-illuminating-the-job-of-lighting-artists/)

Во наредниот текст ќе ви објаснам како работи Фонговиот модел на илуминација при ефикасно рендерирање сцени (на пример во компјутерски игри), а потоа ќе зборуваме за тоа како да ги рендерираме сцените со глобално осветлување кога не се грижиме колку време ни е потребно (на пример во анимирани филмови).


Поважни зборови:

Рефлексија – Одбивање на светлина, звук, топлина итн. од било каква површина (како на пример одбивање на светлината од огледало) без да бидат впиени од истата површина.

Рефракција – Искривување на бран кога преминува од еден во друг медиум. Најчесто аголот и брзината на бранот се променуваат при ова. Како на пример кога светлината се прекршува кога преминува од воздух во вода и доведува до изобличување на просторот позади водата.

Ознаки: , , , ,

Споделете ја содржината на социјалните мрежи!

Слични написи:

Напишете коментар

Вашата адреса за е-пошта нема да биде објавена. Задолжителните полиња се означени со *

Пополнете го ова поле
Пополнете го ова поле
Ве молам, внесете валидна адреса за е-пошта.

Мени

Споделете со пријателите