Paglikha ng Ambient Occlusion Mag-render sa Maya

Serye ng Shader Recipe

Sa paglipas dito sa mga sulok ng gadget, ang mga recipe ay hindi talaga nakagagawa ng maraming kahulugan, ngunit nangyari ito sa akin sa ibang gabi habang ako ay naghuhukay ng payo para sa pagluluto ng lemon pepper chicken na maaari kong simulan ang isang serye na nagtatampok ng ibang uri ng recipe - Mga recipe ng shader .

Ang buong "cookbooks" ay nakasulat sa mga materyales at shaders sa Maya, UDK, 3DS Max, Vray, atbp.

Ito ay isang bagay na maraming mga nagsisimula may mga kahirapan sa, at para sa magandang dahilan! Ang pagsasagawa ng isang hanay ng mga arcane na parameter tulad ng "specular strength" at "diffuse weight" sa pagtatangka na gayahin ang tunay na materyales sa mundo tulad ng kahoy, salamin, bato, o ceramic tile ay hindi madaling gawain.

Kaya, narito tayo.

Simula sa ambient occlusion , sisimulan naming ipakilala ang ilang mga setting ng application para sa ilang mga karaniwang mga materyal sa real-world na mahihigpit na kuko. Malamang na gagamitin namin ang Maya sa serye na ito, bagaman maaari naming lumihis sa Unreal Development Kit sa isang oras o dalawa. Kami ay nasasabik tungkol sa seryeng ito at umaasa na matuto ng mas maraming pagsulat nito habang ginagawa mo ito sa pagbabasa!

01 ng 02

Ano ang Ambient Occlusion?

Getty Images for American Gaming / Getty Images

Huwag hayaan ang pangalan na lokohin mo-ambient occlusion ay talagang isang medyo tapat na materyal upang bumuo, at ito ay isang hindi kapani-paniwala mahalaga.

Hindi lamang ginagamit ang AO (medyo pangkalahatan) para sa pag-render ng mga imaheng gawa sa pag-unlad, madalas din itong ginagamit bilang batayang pass sa composting at texture painting dahil nakakatulong ito sa pagpapalabas ng mga detalye at "lupa" na mga bagay sa isang eksena sa pamamagitan ng pagsasama ng mga anino .

Ang ambient occlusion ay isang form ng self-shading na materyal, ibig sabihin ito ay gumagana kahit na walang anumang pag-iilaw sa iyong tanawin. Sa teorya, ito ay isang hindi pangkaraniwang approximation ng pandaigdigang pag-iilaw, at ay sinadya upang gayahin ang paraan light kumalat sa paligid ng isang kuwarto o kapaligiran.

Ang mga ambient occlusion render ay may katangian na "soft-shadowed" na hitsura na may banayad na darkening saanman ang dalawang ibabaw ay malapit sa contact (mga sulok ng isang silid, underside ng mga bagay, mga detalye, atbp.). Ang mga ambient image sa paligid ay paminsan-minsan na tinatawag na "clay render" dahil sa pagkakahawig nila sa pagmomolde ng luad.

Narito ang isang modelo na aking ginawa para sa isang pagawaan noong nakaraang taon na gumagamit ng ambient occlusion upang ipakita ang anyo ng modelo (konsepto ng armas ni Diego Almazan).

02 ng 02

Paglikha ng isang Ambient Occlusion Shader:


Ang paglikha ng isang nakapaligid na shader ng tagal para sa mga pangunahing pag-unlad na imahe ay medyo madali, at hindi nangangailangan ng anumang mga UV, mga mapa ng texture , o pag-iilaw.

Mayroong maraming mga paraan upang ipatupad ang epekto para sa bahagyang magkakaibang mga resulta, ngunit ang isang kukunin ko na ipakilala dito ay maganda at tapat, na nangangailangan lamang ng isang solong Mental Ray node at isang pangunahing materyal na Lambert.

Narito ang isang maikling hakbang-hakbang na paliwanag.

Buksan ang window ng Hypershade at lumikha ng isang bagong materyal na Lambert.

Bigyan ang materyal ng isang pangalan-karaniwang ginagamit ko ang isang bagay tulad ng ambientOcclusion_mat .

I-double-click ang materyal upang buksan ang mga materyal na katangian nito. Ito ay kung saan namin itatakda ang karamihan ng mga parameter para sa shader.

Sa pamamagitan ng default ang kulay ng kulay ng materyal ay isang neutral na kulay abo, ngunit ayaw namin ang aming mga highlight upang pumutok, kaya talagang i-slide namin ang halaga ng kulay pababa patungo sa mas madilim na dulo ng spectrum. Ginagamit namin ang 0, 0, .38 para sa halaga ng HSV sa katangian ng kulay , ngunit ito ay isang personal na kagustuhan.

Ang susunod na bagay na kailangan nating gawin ay i-plug ang isang node ng ambient occlusion sa attribute incandescence ng materyal.


I-click ang checkered na kahon sa tabi ng incandescence input. Dadalhin nito ang window ng node ng render.

Sa ilalim ng tab na Mental Ray , i-click ang mga texture at hanapin ang mib_amb_occlusion sa listahan. I-click ito, at magbubukas ang node sa editor ng katangian sa kanang bahagi ng iyong screen.

Dapat mong makita ang isang listahan ng mga katangian-ang mga mahalaga sa amin ay mga sample, maliwanag / madilim, kumalat, at max distansya, gayunpaman ang tanging bagay na babaguhin namin ay ang bilang ng mga sample.

Sa node ng ambient occlusion, ang bilang ng mga sample ay kumokontrol sa dami ng ingay sa iyong render.

Ang pag-iwan ng mga sample sa 16 o 32 ay medyo mabutil, habang ang upping ang halaga sa isang bagay tulad ng 64 o 128 ay lilitaw na napakalinaw. Ang 32 halimbawa ay maganda para sa pagsusuri, ngunit kung plano kong magpakita ng isang imahe ay karaniwan kong gagamitin ang 64 o 128.

Subukan ang ilang mga pag-render sa iba't ibang mga antas ng sample upang makakuha ng isang pakiramdam para sa mga pagkakaiba-maaari mong mahanap ang gusto mo ang grainy hitsura sa mas mababang dulo ng spectrum.

Narito ang isang paghahambing ng imahe na ginawa ko gamit ang isang panlabas na kapaligiran ko modeled awhile likod na nagpapakita ng mga pagkakaiba sa pagitan ng isang base Maya render, at ambient occlusion nagpapakita na may 64 at 128 sample. Tingnan kung gaano kahusay ang hitsura ng imahe sa ambient occlusion?

Maaari ka ring maglaro sa iba pang mga katangian kung gusto mo:


Maliwanag at maitim na kontrol ang pinakamaliit at pinakamataas na halaga sa iyong render. Kung nalaman mo na ang iyong mga highlight ay tinatangay ng hangin o ang iyong mga anino ay nakakakuha ng durog, maaari mong gamitin ang mga slider na ito upang mabawi. Ang distansya ng spread at max ay babaguhin ang distansya ng falloff / occlusion sa pagitan ng iyong liwanag at madilim na mga halaga.

Naroon ka! Sana ay natutunan mo nang kaunti ang tungkol sa ambient occlusion at paano ito magamit bilang isang magandang materyal na pagtatanghal para sa iyong 3d na mga eksena. Ipaalam sa akin sa blog kung mayroon kang anumang mga katanungan!