ã¬ã³ããªã³ã°
Eddyã®ã¬ã³ãã©ãŒã¯ãã¢ã³ãã€ã¢ã¹(äžå)ã§ç©çããŒã¹ã®ãã¹ãã¬ãŒã·ã³ã°ããªã¥ãŒã¡ããªãã¯ã¬ã³ãã©ãŒã§ããããªã¥ãŒã¡ããªãã¯ããªããã£ãã®ä»ãè€æ°ã®ã©ã€ãã¿ã€ããããªã¥ãŒã¡ããªãã¯ããã³ã¡ãã·ã¥ã®ããŒã«ãã¢ãŠããã¢ãŒã·ã§ã³ãã©ãŒããã«ãã¹ãã£ãã¿ãªã³ã°ã«å¯Ÿå¿ãããã£ãŒãã€ã¡ãŒãžããŒã¿ãäœæããããšãã§ããŸãã
ã泚æ
ã泚æ
ããªã¥ãŒã¡ããªãã¯ãããªã¢ã«
Absorption
Absorptionä¿æ°ã¯ãäžããããè·é¢ã§åªè³ªã«ããå ãåžåãããéãå¶åŸ¡ããŸãã
æå¹å€ã®ç¯å²ã¯ãåžåããªãããšãè¡šããŒããããå®å šã«åžåããç¡é倧ãŸã§ã§ããå®éã«äœ¿çšãããæ倧å€ã¯ãçŽ1/ç¹åŸŽãµã€ãºããŸãã¯1/ãã¯ã»ã«ãµã€ãºã§ãããåäžã®ãã¯ã»ã«ãå ã®å€§åãåžåããããšãæå®ããŸããAbsorptionä¿æ°ã®åäœã¯ã1/mã§ãã
Scattering
Scatteringä¿æ°ã¯ãäžããããè·é¢ã§åªè³ªã«ãã£ãŠå ç·ããã©ã®ãããã®éã®å ãæ£ä¹±ããããå¶åŸ¡ããŸãããã®åäžã®ä¿æ°ã¯ããã®åäžã®ä¿æ°ã¯ãå æºããèŠç·ã¬ã€å ã§æ£ä¹±ããå ã®ãããªãå åŽã«å ¥ãæ£ä¹±ã®éãšãç®ã«å°éããåã«èŠç·ã¬ã€ããæ£ä¹±ããå ã®ãããªãå€ãžåããæ£ä¹±ã®éã®äž¡æ¹ãå¶åŸ¡ããŸããåŸã£ãŠãScatteringä¿æ°ã¯ãåå°å ãšããªã¥ãŒã ã®æžè¡°ãŸãã¯æ¶æ£ã®äž¡æ¹ã«å¯äžããŸãã
æå¹å€ã®ç¯å²ã¯ãæ£ä¹±ããªãããšãè¡šããŒããããå®å šã«æ£ä¹±ããç¡é倧ãŸã§ã§ããAbsorptionä¿æ°ãšåæ§ã«ãå®éã«äœ¿çšãããæ倧å€ã¯ãçŽ1/ç¹åŸŽãµã€ãºããŸãã¯1/ãã¯ã»ã«ãµã€ãºã§ãããåäžã®ãã¯ã»ã«ãå ã®å€§åãæ£ä¹±ãããããšãæå®ããŸããScatteringä¿æ°ã®åäœã¯ã1/mã§ãã
Extinction
Extinctionä¿æ°ã¯ãAbsorptionä¿æ°ãšScatteringä¿æ°ã®åã§ããåªè³ªå šäœã®æžè¡°ãè¡šããåªè³ªå šäœã®éæ床ã決å®ããŸããAbsorptionä¿æ°ãšScatteringä¿æ°ãåå¥ã«èª¿æŽããéã«ãå šäœã®æžè¡°ã決å®ãããã®ã¯äžèš2ã€ã®ä¿æ°ã®åèšã§ãããšããããšãèŠããŠããããšã¯éèŠã§ãã
æå¹ãªå€ã®ç¯å²ã¯ãæžè¡°ããªãããšãè¡šããŒããããå®å šã«æžè¡°ããç¡é倧ãŸã§ã§ããAbsorptionãŸãã¯Scatteringä¿æ°ãšåæ§ãå®éã«äœ¿çšãããæ倧å€ã¯ãçŽ1/ç¹åŸŽãµã€ãºããŸãã¯1/ãã¯ã»ã«ãµã€ãºã§ãããåäžã®ãã¯ã»ã«ãå ã®å€§åãæ¶æ» ãããããšãæå®ããŸããExtinctionä¿æ°ã®åäœã¯ã1/mã§ãã
Emission
Emissionã¯ãå ãæŸåºããæ質ãè¡šçŸããŸããçã®ãããªã¢ã«ã¯ãäŸãã°ãçã®æž©åºŠã«åºã¥ããŠçºå ããŸãã
Emissionã®åäœã¯æŸå°èŒåºŠ/mã§ãç¯å²ã¯ãŒãããç¡é倧ã§ãã
Phase Function
äœçžé¢æ°ã¯ãæ£ä¹±ãã»ãã®æ¹åãããç¹å®ã®æ¹åã«èµ·ãããããå Žåã«ã¯äžåäžãªæ£ä¹±ãè¡šçŸããŸããå ããã®ãŸãŸåæ¹æ¹åã«æ£ä¹±ããããšãå€ãå Žåã¯åæ¹æ£ä¹±ãå ãå ã®æ¹åã«æ²¿ã£ãŠéåãã«æ£ä¹±ããããšãå€ãå Žåã¯åŸæ¹æ£ä¹±ã§ãã
ããªã¥ãŒã¡ããªãã¯åªè³ªã«æãäžè¬çã«äœ¿çšãããPhaseé¢æ°ã¯ãHenyey-Greenstein äœçžé¢æ°ã§ããããã¯ã-1ãã1ã®ç¯å²ã®åäžãã©ã¡ãŒã¿ãgãã«ãã£ãŠç¹åŸŽä»ããããŸããgã0ã®å Žåã¯çæ¹æ£ä¹±ã§ãg > 0ã®å Žåã¯åæ¹æ£ä¹±ãg < 0ã®å Žåã¯åŸæ¹æ£ä¹±ã§ãã
ã©ã€ã
ããŸããŸãªã©ã€ãã®ã¿ã€ãã«å¯Ÿå¿ããŠããŸããNukeåºæã®ã©ã€ãããŒã矀ãšã«ã¹ã¿ã ã®ããŒããçµã¿åãããŠäœ¿çšããã¬ã³ããŒããŒããžå ¥åãšããŠæž¡ãããšãã§ããŸãã
ã泚æ
ãã€ã³ãã©ã€ã
ãã€ã³ãã©ã€ãã¯ãNukeåºæã®Point ããŒãããŸãã¯ã¿ã€ãã«Pointãèšå®ããE_Lightã®ã©ã¡ããã䜿çšããŠäœæããããšãã§ããŸããcolor(ã«ã©ãŒ)ãintensity(匷床)ãfalloff type(ãã©ãŒã«ãªãã¿ã€ã)ã®é ç®ã®ã¿ã䜿çšãããŸãã
ã¹ãããã©ã€ã
ã¹ãããã©ã€ãã¯ãNukeåºæã®SpotLightããŒãã«ããäœæããããšãã§ããŸããcolor(ã«ã©ãŒ)ãintensity(匷床)ãfalloff type(ãã©ãŒã«ãªãã¿ã€ã)ãcone angle(åéè§)ãcone penumbra angle(åéå圱è§åºŠ)ã®é ç®ã®ã¿ã䜿çšãããŸãã
å蟺圢ãšãªã¢ã©ã€ã
å蟺圢ãšãªã¢ã©ã€ãã¯ãE_Light ããŒãã䜿çšããã¿ã€ãã«Quad Areaãèšå®ããããšã§äœæããããšãã§ããŸãããšãªã¢ã©ã€ãã®ãµã€ãºãšåãã¯ãããŒãã®transformã䜿çšããŠå¶åŸ¡ããããšãã§ããŸãã
ç°å¢/IBLã©ã€ã
ç°å¢/IBLã©ã€ãã¯ãNukeåºæã®Environmentã©ã€ãããŒãã«ããäœæããããšãã§ããŸããcolor(ã«ã©ãŒ)ãintensity(匷床)ã®é ç®ã®ã¿ã䜿çšãããŸããçŸåšå¯Ÿå¿ããŠãããããã¯ã緯床/çµåºŠã®ç°å¢ãããã®ã¿ã®ãããSphericalTransformã䜿çšããã«ãç»åãçŽæ¥EnvironmentããŒãã«æ¥ç¶ããŠãã ããã
ã¢ã³ããšã³ãã©ã€ã
ã¢ã³ããšã³ãã©ã€ãã¯ãå šæ¹åããäžå®ã®ç §æãæäŸããŸããããªã¥ãŒã ã¬ã³ããªã³ã°ã®å Žåãããã¯IBLãšã»ãŒåããããåŠçãéããªããŸããã¢ã³ããšã³ãã©ã€ãã¯ãç»åãè¿œå ã§å ¥åããã«Nukeåºæã®Environmentã©ã€ãããŒãã䜿çšããããšã§äœæã§ããŸããcolor(ã«ã©ãŒ)ãšintensity(匷床)ã®é ç®ã®ã¿ã䜿çšãããŸãã
ããŒã«ãã¢ãŠã
Eddyã察å¿ããŠããããŒã«ãã¢ãŠãã«ã¯ã2ã€ã®ç°ãªãçš®é¡ããããŸããäžéæãªããŒã«ãã¢ãŠãã¯ã E_HoldoutããŒãã«ããäœæãããã¬ã³ããŒããŒãã«çŽæ¥æž¡ãããšãã§ããŸããåéæãªããŒã«ãã¢ãŠãã¯ãæšæºã®ããªã¥ãŒã¡ããªãã¯ãã£ã³ãã«ã®ã³ã³ããžãããã€ãã©ã€ã³ã«ããäœæãããShaderããŒããžå ¥åãšããŠæž¡ãããŸãã
ã«ã©ãŒã¹ããŒã¹
äžè¬çã«ãEddyã®ã¬ã³ãã©ãŒã¯ãä»ã®ã¬ã³ãã©ãŒãNukeèªäœã®ããã«ãã«ã©ãŒã¹ããŒã¹ã®éžæã«é¢ããŠã¯éäŸååã§ããåºåã®ã«ã©ãŒã¹ããŒã¹ã¯ãåã®å ¥åãšåã«åãã«ã©ãŒã¹ããŒã¹ã«ãªããŸããããããSunSkyããŒããfireã·ã§ãŒãã®ãããªããã€ãã®ããŒãã§ã¯ãããèªäœã®è²ãçæããå¿ èŠããããããã«ã©ãŒã¹ããŒã¹ãæå®ããªããã°ãããŸããã
Eddyã§ã«ã¹ã¿ã ã®ã«ã©ãŒã¹ããŒã¹ãç»é²ããããšãã§ããŸãããããã®ã«ã¹ã¿ã ã«ã©ãŒã¹ããŒã¹ã¯ãã«ã©ãŒã¹ããŒã¹ãæå®å¯èœãªãã¹ãŠã®ããŒãã§äœ¿çšããããšãã§ããŸããã«ã¹ã¿ã ã®ã«ã©ãŒã¹ããŒã¹ãç»é²ããã«ã¯ãEddyã®ãnodeScriptsããã©ã«ãã«æ°ããpythonãã¡ã€ã«ã眮ããŸãã以äžã¯ãããã€ãã®æ°ããã«ã©ãŒã¹ããŒã¹ãç»é²ããpythonãã¡ã€ã«ã®äŸã§ãã
custom_color_spaces.py
from eddy import * from eddy.imath import M33f, V2f # ProPhoto RGB # Registering using primary chromaticities. register_color_space_primaries(name="ProPhotoRGB", display_name="ProPhoto RGB", red_primary=V2f(0.7347, 0.2653), green_primary=V2f(0.1596, 0.8404), blue_primary=V2f(0.0366, 0.0001), white_point=V2f(0.3457, 0.3585)) # PAL/SECAM RGB # Registering using conversion matrix directly. pal_mtx = M33f((( 3.0628971, -1.3931791, -0.4757517 ), (-0.9692660, 1.8760108, 0.0415560 ), ( 0.0678775, -0.2288548, 1.0693490 ))) register_color_space_matrix(name="pal", display_name="PAL/SECAM RGB", from_xyz=pal_mtx)
詳现ã¯ãã«ã©ãŒã¹ããŒã¹é¢æ° APIããã¥ã¡ã³ã(è±èª)ãåç §ããŠãã ããã