DX9ããDX10ãžã®ç§»è¡ãå§ãŸã£ãã°ããã®ãšããé©åãªå¹æãæã€ã¯ãŒã«ã«ã¢ãã«åãããæ°Žã䜿çšããå€ãã®ã²ãŒã ãç»å Žãå§ããŸããã ç¹ã«ãéå»ã®äžä»£ã®ã²ãŒã ãšåãCrysisãæ¯èŒããå Žåãéãã¯éåžžã«é¡èã§ããã ãã®ãããUE4ã®Houdiniãã©ã°ã€ã³ã䜿çšããŠãã·ã³ãã«ã§ãããªããçŸå®çãªå·ã®ã·ãã¥ã¬ãŒã·ã§ã³ãäœæããæ¹æ³ã«é¢ããã¬ã€ãã«åºäŒã£ããšããããã«ã€ããŠãèãããããã«ç¿»èš³ããŸããã
ããããŒã°
- Unrealããã³Houdini ã¢ã»ãããããŠã³ããŒãããŸãã ã€ã³ã¹ããŒã«ãããªã¯ãã¡ãã§ãã
- ãããžã§ã¯ãã®ã»ãšãã©ã¯ã Ben ShriverãšAndreas Gladã®ãã¥ãŒããªã¢ã«ã«åŸããŸããã
- ããŒããšã¹ã¯ãªãããæããªãã§ãã ããã èŠãç®ã»ã©é£ãããããŸããã
- æ°Žã«ã€ããŠã¯ãUnreal Starterã³ã³ãã³ãã®æ³ç·ãããã䜿çšããŸããã
ã¯ããã«
ç§ã®ååã¯ãµã€ã¢ã³ã§ãã QBasicãšPascalã§ããã°ã©ãã³ã°ãå§ããã®ã¯å¹Œãé ïŒããã«äŸããããŸã ïŒãã³ãŒãã£ã³ã°ãé£ããããšã«ããã«æ°ä»ãã3Dã¢ãŒãã«åãæ¿ããŸããã åæã«ãç§ã¯åžžã«ã²ãŒã ãäœæããæè¡çãªåŽé¢ã«èå³ãæã¡ç¶ããŸããããã®çµæãç§ã¯VFXã¢ãŒãã£ã¹ãã«ãªããŸããã ãã®è·æ¥ã¯èžè¡ãšæè¡ãããŸãçµã¿åãããŠããŸãã
Sacred 2 and XïŒRebirthã§ã¯3Dã¢ãŒãã£ã¹ããšããŠã RiMEã§ã¯The Invisible Hours㧠VFXã¢ãŒãã£ã¹ããšããŠåããŠããŸããã çŸåšã WiLDã«åãçµãã§ããŸãã
ã²ãŒã éçºã«é¢é£ããå人ãããžã§ã¯ããããã€ããããŸããGameArt Trickããã°ããã€ãã®Game Dev Podcast ãããã³Unrealãã¥ãŒããªã¢ã«ãšHoudiniãã¥ãŒããªã¢ã«ãå«ãYouTubeãã£ã³ãã«ã§ãã
Houdiniã®çŽ¹ä»
The Invisible Hoursã®å¶äœäžã«Houdiniãšåéã«ãªããŸããã ãã®åŸãäžæåæ¢ãå±éããªã¢ã«ã¿ã€ã ã§éåçã§ããå°ããªæµäœã·ãã¥ã¬ãŒã¿ãäœæããŸããã çµæã¯æ¬¡ã®ãšããã§ãã
åºå žïŒ Invisible Hours Fluid Simulation
Unrealã«æµäœã¢ããªã³ã°ãè¿œå ããæ¹æ³ãããããŸããã§ããã 幞ããªããšã«ã Vertex-Count-Agnostic Morph Target-Based Fluid Animationãšããé©ãã¹ãæè¡ãHoudiniã«å®è£ ããããããã²ãŒã ã«æµäœã·ãã¥ã¬ãŒã·ã§ã³ãè¿œå ããããšãã§ããŸããã ãã®æè¡ã¯ããšããšããŒãã³ã»ã·ã£ãŒã«ã«ãã£ãŠéçºãããŸããã
åºå žïŒ Norman Shaarã®UE4ã®Vertex-Count-Agnostic Morphã¿ãŒã²ãã
å®è£ ã«ã€ããŠè©³ããç¥ãããå Žåã¯ããã¯ã¹ãã£ãŒããŒã¯ã®ã¯ãŒã«ã¹ã¿ããã®ãã®ã»ã¯ã·ã§ã³ãã芧ãã ããã
å·ã®åœ±é¿ïŒãããžã§ã¯ãã®å§ãŸã
Realtime VFX River Challengeã§ããã·ãŒãžã£ã«ã«çæãããå·ã®äœãæ¹ãåŠã³ããã£ãã®ã§ãããã©ãããå§ãããããã®ãããããŸããã§ããã å¶ç¶ã Ben ShriverããçŽ æŽããããã¥ãŒããªã¢ã«ã«åºäŒããŸããã圌ã¯Horizoâân Zero Dawnã®å·ã«ã€ããŠè©±ããŠããŸãã ç§ã¯å€¢äžã«ãªããè©ŠããŠã¿ãããšã«ããŸããïŒ
ãšããã§ã Andreas Gladã® Houdiniå·ã«é¢ããå¥ã®éåžžã«ã¯ãŒã«ãªãã¥ãŒããªã¢ã«ããããŸãã
ãããã®ãããªã¯ãæåã¯æ¬åœã«å©ãã«ãªããåºç€ã«ãªããŸããã
ã©ã³ãã¹ã±ãŒããæ§ç¯ããéåžžã«é£ããæ¹æ³
ææžã¯éåžžã«è€éã§ããã äœæããã»ã¹ã説æããŠã誰ããç解ã§ããããã«ããŸãã
ãœãŒã¹ïŒ Houdiniã§å°åœ¢ãäœæãã
åè«ã§ãã ç°¡åãããã
å·ã®å¹æ
æåã®æé ã¯ãBenã®ãã¥ãŒããªã¢ã«ãã100ïŒ ã³ããŒãããŠãããã¯ãŒã«ã§ãã æåã«ã¹ãã©ã€ã³ãäœæããå°é¢ã«ãèœäžããããŸãã ããã¯ãã¹ãã©ã€ã³ã®ãã€ã³ãã§ã¬ãªãŒãã®é«ããèªã¿åãããã€ã³ãããã®é«ãã«ç§»åããããšã«ããè¡ãããŸãã
次ã«ãã¹ãââã©ã€ã³ãã€ã³ããæé¢ã«ãã¹ã©ã€ãããããŠãå·ãå°åœ¢ã«ããè¯ãçµ±åããŸãã
å®éããããã¯ç©ççãªæ¹æ³ã§ããŒã«ããŠã³ããŸããã 代ããã«ããµãŒãã§ã¹ã®ããŒã¹æ³ç·ãšãã€ã³ãã®æ³ç·ã䜿çšããŠãåãã€ã³ãã®ããŒã«ã«è»žãèšç®ããŸãïŒã¹ãã©ã€ã³ããã¹ããŒãã«æ²¿ã£ãŠç§»åããŸãïŒã 次ã«ãèšç®ããã軞ã«æ²¿ã£ãŠãã€ã³ããå°ã移åããŸãïŒãã®ããã»ã¹ã¯Benã®ãããªã§éåžžã«ãã瀺ãããŠããŸãïŒã
次ã®ã¹ãããã¯ãå·ãå·ã«æ²¿ã£ãŠæµããå°ããªäžããããããå·ãæ¯èŠ³ã®ããã«äžæµã«æµããªãããã«ããããšã§ãã
å°ããªPythonã¹ã¯ãªããã«ããã3D空éã®ã¹ãã©ã€ã³ãã€ã³ããåã®ãã®ããé«ããªãããšã¯ãããŸããã
èªç¶ããè¿œå ãããã1ã€ã®æ¹æ³ã¯ãé£ç¶ããåŸæãé¿ããããšã§ãã 代ããã«ãå·ã段éçã«æµããããã«ããŸãïŒèŠèŠåã®ãããããã§å·ã®ãžãªã¡ããªã瀺ããŸãããå®éã«ã¯1ã€ã®ã¹ãã©ã€ã³ã®ã¿ã䜿çšããŠããŸãïŒã
æåŸã«ãç¬èªã®ã¢ã€ãã¢ãããããã¹ãããã«é²ã¿ãŸããã¹ãã©ã€ã³ã«è²ãè¿œå ããŠãã¹ããŒãã®å ŽæïŒç·ïŒãéå§ç¹ïŒéç·è²ïŒãçµäºç¹ïŒèµ€ïŒãããŒã¯ããŸãã ããã¯ãåŸã§ããŸããŸãªæ°Žã®ãã¯ã¹ãã£ãæ··åããããŒãã£ã¯ã«ã·ã¹ãã ãé 眮ããã®ã«åœ¹ç«ã¡ãŸãã
ããã«ã€ããŠã¯ãBenã®ãããªã§å®å šã«èª¬æãããŠãããããå·ã®ãžãªã¡ããªã®äœæãé«éåããŸãããã æãéèŠãªç¹ã¯ãå·ã®å€çžã ããã¬ãªãŒããšåã³äœçœ®åãããããããšã§ãïŒæåã«ã¹ãã©ã€ã³ã§è¡ã£ãããã«ïŒã
æµãã«å¿ããå°åœ¢ã®å€åœ¢
ç¹°ãè¿ãã«ãªããŸãããããã¯ãã³ã®100ïŒ ã®ã¯ãŒã¯ãããŒã§ãããªãªãŒããå·ã®ãžãªã¡ããªã®äžã«ç§»åããŠã亀差ããªãããã«ããŸãã
次ã«ãå°åœ¢ã®åãã€ã³ãã«å¯ŸããŠãå ç·ãæããŸãã ããããå·ã®åœ¢ç¶ã«è©²åœããå Žåããããã®ãã€ã³ãã¯è¡æã®å ŽæãŸã§ç§»åããŸãã
ã©ãã«ããããããªãã£ãåãã€ã³ãã¯ãå ã®é«ããåãåããŸãã
ãã®gifã¯ãã¹ãã©ã€ã³ãå€æŽããããšãã«äœãèµ·ãããã瀺ããŠããŸãã
次ã«ã颚æ¯ã®é«ãã®é åãããªãŽã³ã«å€æãããåæ··åãããŸãã ããã§ãUnrealã§äœ¿çšããæºåãã§ããŸããã
次ã«ãUVå€æããããªã¢ã«ããããŒããããªã©ã«ã€ããŠèª¬æããŸãã
å·ã®åœ¢ç¶
å ã»ã©èŠãå·ã®åœ¢ç¶ã¯ããã®é åãåãåãããã ãã«äœ¿çšãããŸããã å®éã®å·ã¯å°ãèããUVããããåå²ãããŸããïŒç§ã®ã¹ããŒãã®è²ã¯ãŸã æ®ã£ãŠããããšã«æ³šæããŠãã ããïŒã
UVçæ
ã¹ãã©ã€ã³ã®é·ãã¯åžžã«å€åãããããUVã¯ããã«é©å¿ããå¿ èŠããããŸãã 幞ããªããšã«ãããã¯Houdiniã§ã¯éåžžã«ç°¡åã§ãã æåã«0-1-UV-Spaceã§UVãäœæããã¹ãã©ã€ã³ã®é·ãã枬å®ããŸãã ãã®å€ã¯ãUVã®ã¹ã±ãŒãªã³ã°ã«äœ¿çšã§ããŸãã ããã§ãã¹ãã©ã€ã³ãå€æŽããæ¹æ³ãšãäžçªäžã®UVãèªåçã«é©å¿ããæ¹æ³ã確èªã§ããŸãã ç§ãä¿¡ããŠãäžåºŠãããè©ŠããŠã¿ãããåã³æåã§UVãäœæããããšã¯æ±ºããŠãªãã§ãããã
ãã£ã³ãã«
å¥ã®è©³çŽ°ïŒãã£ã³ãã«ãããæã湿ãããããšæããŸããã ãããè¡ãã«ã¯ã颚æ¯ã®åããªãŽã³ããããã€ãã®å ç·ãäœæããå·ã«å ¥ããšããã®ããªãŽã³ã®ãã¹ãŠã®ãã€ã³ãã«è²ãå²ãåœãŠãŸãã äœæããããã¹ã¯ã¯æ¬¡ã®ãšããã§ãã
ãããŠãããã§ãããªã¢ã«ã«ãã¹ã¯ã䜿çšããŠããããŸãããšç²ãã®ç°ãªãå€ãå²ãåœãŠãäŸã瀺ããŸãã
ãããŒãã£ãŒã
Houdiniã䜿çšããæ²³å·æµéãããã®äœæã¯éåžžã«ç°¡åã§ãã ãããã¯ç§ã®å·ã®ãžãªã¡ããªã§ããããã¯å·ã®æ¹åã瀺ãã¹ãã©ã€ã³ã§ãããšããŒã ãšèšãã ãã§ããžãªã¡ããªã¯çªç¶å·ã®æµããè¡šãããŒã¯ã®è²ãååŸããŸãã
ãããŒããããé害ç©ã«å¿çãããå¥ã®ããŒããè¿œå ã§ããŸãã ä»ããããã®åšãã«æ°ŽãæµããŸãïŒ
ãããŠæãã¯ãŒã«ãªããšïŒUnrealã§ãããŒãããããã€ã¯ããããšãã§ããŸãïŒ UnrealãšHoudiniãåãæ¿ããå¿ èŠã¯ãããŸããã Houdiniã®Renderãã¿ã³ããã©ã¡ãŒã¿ãŒãšããŠèšå®ããã ãã§ãã ããã§ãé害ãã©ã®ããã«å€æŽãããã確èªããæ°ãããããŒããããèŠèŠåããŸãïŒããŒãã³ã°ã«ã¯GIFãããæéããããããšã«æ³šæããŠãã ããïŒã
ãã©ãŒã ãã¹ã¯
é害ç©ã®åšãã®æ°Žã«æ³¡ãäœãã«ã¯ãããããisoOffsetããŒãã䜿çšããŸãã åºæ¬çã«ããªããžã§ã¯ããŸã§ã®è·é¢ãå·ã®äžã®è²ã§ä¿åããŸãã ãã®åŸããã€ãºãè¿œå ãããã¹ã¯ã®æºåãã§ããŸããã
ãã©ãŒã ãã¹ã¯ã®éçæ§ãäœãããããã«ãå·ã«æ²¿ã£ãŠç§»åããå ã®ãã¹ã¯ããå·®ãåŒãåçŽãªPhotoshopã¯ã©ãŠããã³ãã¬ãŒãã䜿çšããŸãã
ãŸãã泡ã«ã€ããŠè©±ããŠããã®ã§ãã«ã¹ã±ãŒãã«ã¯åçŽãªæ³¡ã®ãã¯ã¹ãã£ããããããã¯å·ã®åŽã§ã®ã¿è¡šç€ºãããŸãã ãã©ãŒã æ§é ã¯å·ã®æ°Žãããéãã¹ã¯ããŒã«ããŸãã
ããŒãã£ã¯ã«ã·ã¹ãã
ã«ã¹ã±ãŒãã®äžéšãšäžéšãã©ãã«ããããæžãçããã®ã§ããããã®èŠçŽ ããã£ã«ã¿ãªã³ã°ãïŒã©ã€ã³ã䜿çšããŠå·ã®ãžãªã¡ããªãäœæïŒãäžå¿ã«ãã€ã³ããäœæãããããŒããã¯ã¹ããã®äžã«ã³ããŒããŸãã åŸã§ãUnrealã®ããŒãã£ã¯ã«ã·ã¹ãã ã«çœ®ãæããŸãã
é害ç©ã®åšãã®ããŒãã£ã¯ã«ã«ã€ããŠã¯ãIntersection AnalysisãšããããŒãã䜿çšããŠãé害ç©ãšå·ã®äº€å·®ç¹ãååŸããŸãã ãããã®äº€å·®ãšããžã«ã¯ãã€ã³ãããããŸãã ãããã®ä¹±æ°ã«ããããŒããã¯ã¹ïŒåŸã§Unrealã®ããŒãã£ã¯ã«ã·ã¹ãã ãšäº€æãããïŒãå床ã³ããŒããŸãã
Unrealã§ãããŒããã¯ã¹ã眮ãæãããšã次ã®ããã«ãªããŸãã
Unrealãžã®ãããžã§ã¯ãã®ãšã¯ã¹ããŒã
ããããHoudiniãšã³ãžã³ã¯ãUnityãUnrealã3ds MaxãMayaãCinema 4Dã®ãã©ã°ã€ã³ã§ããããããã®ããã°ã©ã ã§Houdiniã§çŽæ¥äœæãããããã¯ãŒã¯ããŒããå®è¡ããŸãã Houdiniãã¡ã€ã«ãããžã¿ã«è³ç£ãšããŠä¿åããã«ã¯ããšãªã¢ãšå·ã衚瀺ããå¿ èŠããããŸãã Unrealã®ä»ã®ãªãœãŒã¹ãšåæ§ã«ã€ã³ããŒãããŠäœ¿çšã§ããŸãã
ããã§ãHoudiniã§èšå®ãããã©ã¡ãŒã¿ãŒãå€æŽããããã¹ãã©ã€ã³ãå€æŽãããããŠãå·ã®æµããå€ããããšãã§ããŸãã
ãããªã¢ã«ã¯åŒãç¶ãUnrealã§äœæããã³å²ãåœãŠãããŸãããäºåã«å²ãåœãŠãããšãã§ããŸãïŒããã«ã€ããŠã¯ããã®ãã¥ãŒããªã¢ã«ã§èª¬æããŸãïŒã
Houdiniã®ã¯ãŒã¯ãããŒãåæ§ã«ç 究ãã¹ãã§ããïŒ
Houdiniã«ã¯åŠã¶ã¹ãããšããããããããŸãã ããã«ããããã¯æ°ããéçºããŒã«ã§ãããããããã¥ã¡ã³ãã«äžæ£ç¢ºããçããŸãã
ããããããã¯ã²ãŒã éçºè ã«ãšã£ãŠäžè¬çãªç¶æ³ã§ãã ç§ãã¡ã¯åžžã«ãæåã«é£Œãæ £ããããå¿ èŠã®ããé«åºŠãªæè¡ãšé£æºããŠããŸãã æãéèŠãªããšïŒããªãã¯äžäººã§ã¯ãããŸããã Thinking Procedural Discordã¯ãå©ãããæãããããã¯ãŒã«ãªäººã§ãã£ã±ãã§ãã ãããã®ãã£ããã§ã¯ãSideFXéçºè ãèŠã€ããããšãã§ããŸãïŒ
åç §è³æ
- ã¢ã»ãã Unrealããã³Houdiniã ã€ã³ã¹ããŒã«ãããªã¯ãã¡ãã§ãã
- äžåãã£ããïŒHoudini Thinking Procedural
- ãã³ã·ã¥ã©ã€ããŒãã¥ãŒããªã¢ã«
- Andreas Gladãã¥ãŒããªã¢ã«
- ãªããŒãã£ã¬ã³ãžã¹ã¬ãã
- ç®ã«èŠããªãæéã§ã®æ¶²äœå®è£ ã¬ããŒã
- Unrealããã³Houdiniã®ãã¥ãŒããªã¢ã«ãå«ãYouTubeãã£ã³ãã«
- é ç¹ã«ãŠã³ãã«äŸåããªãã¢ãŒãã¯ããŒãã³ã·ã£ãŒã«ãã¿ãŒã²ããã«