WebGLå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ïŒVRSïŒã§ãäžçäžã®å€æ§ãªããã€ã¹ã«ããã3Dã°ã©ãã£ãã¯ã¹ã®ããã©ãŒãã³ã¹ãšå質ãæé©åããã®å©ç¹ã課é¡ãæªæ¥ã解説ããŸãã
WebGLå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ïŒã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã®ããã®é©å¿åã¬ã³ããªã³ã°å質ã®å®çŸ
ãŠã§ãã¯ãæ²¡å ¥åã®ã²ãŒã ãæŽç·ŽãããããŒã¿ããžã¥ã¢ã©ã€ãŒãŒã·ã§ã³ããããªã¢ã«ãªè£œåã³ã³ãã£ã®ã¥ã¬ãŒã¿ãä»®æ³ãã¬ãŒãã³ã°ã·ãã¥ã¬ãŒã·ã§ã³ãŸã§ããªããã§ã€ã³ã¿ã©ã¯ãã£ããª3DäœéšãæäŸããããã®åŒ·åãªãã©ãããã©ãŒã ãžãšé²åããŸãããããããé©ç°çãªèŠèŠçå¿ å®åºŠã®è¿œæ±ã¯ãäžçäžã®ããŒããŠã§ã¢èœåã®å€æ§ãªçŸå®ãšãã°ãã°è¡çªããŸãããŠãŒã¶ãŒã¯ãæå 端ã®ãã¹ã¯ãããã¯ãŒã¯ã¹ããŒã·ã§ã³ããæé ãªäŸ¡æ Œã®ã¢ãã€ã«ããã€ã¹ãŸã§ããããããç°ãªãèšç®èœåãšã°ã©ãã£ãã¯ã¹åŠçãŠãããïŒGPUïŒãæã€ãããããã®ãããŠã§ãã³ã³ãã³ãã«ã¢ã¯ã»ã¹ããŸãã
ãã®æ ¹æ¬çãªèª²é¡ãã€ãŸããåºç¯ãªããã€ã¹ã¹ãã¯ãã©ã ã«ããã£ãŠäžè²«ããé«å質ãªäœéšãæäŸãããšãã課é¡ããã¬ã³ããªã³ã°æè¡ã®é©æ°ãæšé²ããŠããŸããããã®ãããªç»æçãªã€ãããŒã·ã§ã³ã®äžã€ããçŸåšWebGLãšã³ã·ã¹ãã ã«å°å ¥ããã€ã€ããå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ïŒVRSïŒã§ããVRSã¯ãã°ã©ãã£ãã¯ã¹ã®ã¬ã³ããªã³ã°æ¹æ³ã«ããããã©ãã€ã ã·ãããæå³ãããããªãŒãµã€ãºãçãªã¢ãããŒããããããã©ãŒãã³ã¹ãšèŠèŠå質ãåæã«æé©åãããããã€ã³ããªãžã§ã³ãã§é©å¿çãªæ¹æ³è«ãžãšç§»è¡ããŸãã
ãã®å æ¬çãªã¬ã€ãã§ã¯ãWebGLå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ã®è€éããæãäžãããã®åºæ¬ååãä»çµã¿ãã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã«ãšã£ãŠã®å€å€§ãªå©ç¹ãéçºè ãçŽé¢ãã課é¡ããããŠãã®ææãªæªæ¥ã«ã€ããŠæ¢æ±ããŸããç§ãã¡ã®ç®æšã¯ããã®åŒ·åãªæè¡ãåããããã解説ããã©ãã«ããŠã誰ããé«å¿ å®åºŠã®ãŠã§ãã°ã©ãã£ãã¯ã¹ãå©çšã§ããããã«ãããã®å¯èœæ§ãæããã«ããããšã§ãã
å¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ãçè§£ããïŒã³ã¢ã³ã³ã»ãã
WebGL VRSã®è©³çްã«ç«ã¡å ¥ãåã«ãã·ã§ãŒãã£ã³ã°ã®åºæ¬æŠå¿µãšãåŸæ¥ã®ã¬ã³ããªã³ã°ãã€ãã©ã€ã³ã«å åšããéå¹çæ§ãçè§£ããããšãäžå¯æ¬ ã§ãã
ã·ã§ãŒãã£ã³ã°ãšã¯äœãïŒ
ãªã¢ã«ã¿ã€ã 3Dã°ã©ãã£ãã¯ã¹ã«ãããŠããã·ã§ãŒãã£ã³ã°ããšã¯ãç»åãæ§æãããã¯ã»ã«ã®è²ãå ã衚é¢ã®ç¹æ§ãèšç®ããããã»ã¹ãæããŸããGPUã¯ããã·ã§ãŒããŒããšåŒã°ããããã°ã©ã ãå ·äœçã«ã¯ããã¯ã»ã«ã·ã§ãŒããŒããŸãã¯ããã©ã°ã¡ã³ãã·ã§ãŒããŒãã䜿çšããŠãããã®èšç®ãå®è¡ããŸãã3Dãªããžã§ã¯ããå ããç»é¢äžã®ãã¹ãŠã®ãã¯ã»ã«ã«å¯ŸããŠãGPUã¯ãã©ã°ã¡ã³ãã·ã§ãŒããŒãå®è¡ããŠæçµçãªè²ã決å®ããŸããããã«ã¯ãã©ã€ãã£ã³ã°ããã¯ã¹ãã£ããããªã¢ã«ã®ããããã£ãããŸããŸãªãã¹ãããã»ãã·ã³ã°ãšãã§ã¯ãã«é¢é£ããè€éãªèšç®ãå«ãŸããŸãã
çŸä»£ã®ã°ã©ãã£ãã¯ã¹ã§ã¯ãç»é¢äžã«æ°çŸäžã®ãã¯ã»ã«ãååšããããšãå€ããããããã«å¯ŸããŠæŽç·Žããããã©ã°ã¡ã³ãã·ã§ãŒããŒãå®è¡ããããšã¯ãä¿¡ããããªãã»ã©ãªãœãŒã¹ãæ¶è²»ããŸãããã®ããã»ã¹ã¯GPUã®èšç®äºç®ã®å€§éšåãæ¶è²»ãããã¬ãŒã ã¬ãŒããšå šäœçãªããã©ãŒãã³ã¹ã«çŽæ¥åœ±é¿ãäžããŸãã
åäžã·ã§ãŒãã£ã³ã°ã®ããã©ãŒãã³ã¹èª²é¡
åŸæ¥ãGPUã¯ç»é¢å šäœã«ããã£ãŠåãã·ã§ãŒãã£ã³ã°ã¬ãŒããåäžã«é©çšããŠããŸãããããã¯ã泚ç®ã®äžå¿ã«ãããã¯ã»ã«ããŒãããèæ¯ã«ãããã¯ã»ã«ãé§ã«èŠããããã¯ã»ã«ããã¹ãŠåãã¬ãã«ã®è©³çްãªã·ã§ãŒãã£ã³ã°èšç®ãåããããšãæå³ããŸãããã®åäžãªã¢ãããŒãã¯ãå®è£ ã¯ç°¡åã§ãããé倧ãªéå¹çæ§ãåŒãèµ·ãããŸãïŒ
- ç¡é§ãªèšç®ïŒ GPUã®åŽåã®å€ãã¯ã人éã®ç®ã詳现ãããŸãèªèããªãé åãäŸãã°åšèŸºèŠéã圱ã®äžã®é åããŸãã¯åäžãªãã¯ã¹ãã£ãæã€é åã®ã·ã§ãŒãã£ã³ã°ã«è²»ããããŸãã
- ãªãœãŒã¹ã®ããã«ããã¯ïŒ ããã©ãŒãã³ã¹ã®äœãããŒããŠã§ã¢ããè€éãªã·ãŒã³ãã¬ã³ããªã³ã°ããå Žåãåäžãªã·ã§ãŒãã£ã³ã°ã®è² è·ã¯å®¹æã«GPUãå§åããäœããã¬ãŒã ã¬ãŒããã«ã¯ã€ãããããŠè³ªã®æªããŠãŒã¶ãŒäœéšã«ã€ãªãããŸãã
- ãšãã«ã®ãŒæ¶è²»ïŒ äžèŠãªèšç®ãè¡ãããšã¯ãçŽæ¥çã«é«ããšãã«ã®ãŒæ¶è²»ã«ã€ãªãããããã¯ã¢ãã€ã«ããã€ã¹ãæç¶å¯èœãªã³ã³ãã¥ãŒãã£ã³ã°å®è·µã«ãšã£ãŠéèŠãªèŠçŽ ã§ãã
å¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ïŒVRSïŒã®ç޹ä»
å¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ã¯ãé©å¿åã¬ã³ããªã³ã°åè³ªã®æŠå¿µãå°å ¥ããããšã§ããããã®éå¹çæ§ã«å¯ŸåŠããŸãããã¹ãŠã®ãã¯ã»ã«ãåå¥ã«ã·ã§ãŒãã£ã³ã°ããïŒ1x1ã·ã§ãŒãã£ã³ã°ã¬ãŒãïŒä»£ããã«ãVRSã§ã¯éçºè ãç»é¢ã®ç°ãªãé åã«å¯ŸããŠç°ãªãã·ã§ãŒãã£ã³ã°ã¬ãŒããæå®ã§ããŸããããã¯ãåäžã®ãã©ã°ã¡ã³ãã·ã§ãŒããŒã®å®è¡ã§è€æ°ã®ãã¯ã»ã«ãã«ããŒã§ããããšãæå³ãããããã®é åã®èšç®è² è·ã广çã«åæžããŸãã
ç»é¢äžã«ã°ãªãããæ·ãããŠãããšæ³åããŠãã ãããVRSã䜿ãã°ã次ã®ããã«æ±ºå®ã§ããŸãïŒ
- ãŠãŒã¶ãŒã®èŠç·ãéäžããç»é¢ã®äžå€®éšåã¯ãé«è©³çްã®ã·ã§ãŒãã£ã³ã°ãåããŸãïŒäŸïŒ1x1ããã¯ã»ã«ããšã«1åã®ã·ã§ãŒããŒåŒã³åºãïŒã
- åšèŸºé åãèŠèŠçã«éèŠåºŠã®äœãé åã¯ãããç²ãã·ã§ãŒãã£ã³ã°ãåããŸãïŒäŸïŒ2x2ã4ãã¯ã»ã«ã®ãããã¯ã«å¯ŸããŠ1åã®ã·ã§ãŒããŒåŒã³åºãïŒã
- è²ãéåžžã«åäžãªé åããå€§å¹ ã«ãŒãããŠããé åã¯ãããã«ç²ãã·ã§ãŒãã£ã³ã°ãåããããšããããŸãïŒäŸïŒ4x4ã16ãã¯ã»ã«ã®ãããã¯ã«å¯ŸããŠ1åã®ã·ã§ãŒããŒåŒã³åºãïŒã
èŠèŠçãªéèŠæ§ã«åºã¥ããŠã·ã§ãŒãã£ã³ã°ãªãœãŒã¹ãã€ã³ããªãžã§ã³ãã«å²ãåœãŠãããšã§ãVRSã¯GPUãå šäœçãªèŠèŠå質ã«ã»ãšãã©ç¥èŠã§ãã圱é¿ãäžããããšãªããããé«ãããã©ãŒãã³ã¹ãéæããããšãå¯èœã«ããŸããããã«ãããããæ»ãããªãã¬ãŒã ã¬ãŒããé»åæ¶è²»ã®åæžããããŠãŠãŒã¶ãŒäœéšãæãªãããšãªãããè€éãªã·ãŒã³ãã¬ã³ããªã³ã°ããèœåãããããããŸãã
WebGL VRSã®ä»çµã¿ïŒã®ã£ãããåãã
ãŠã§ãäžã®3Dã°ã©ãã£ãã¯ã¹ã®æšæºã§ããWebGLã¯ãåºç€ãšãªãããŒããŠã§ã¢ã®èœåããŠã§ãéçºè ã«å ¬éããå¿ èŠããããŸããå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°æ©èœã¯ããã©ãŠã¶APIãšãã€ãã£ãGPUæ©èœã®éã®ã®ã£ãããåããWebGLæ¡åŒµæ©èœãéããŠå ¬éãããŸãã
WebGLã®ãšã³ã·ã¹ãã ãšæ¡åŒµæ©èœ
OpenGL ESãåºç€ãšããWebGLã¯ãã³ã¢ä»æ§ã®äžéšã§ã¯ãªããç¹å®ã®ããŒããŠã§ã¢ãšãã©ã€ãã§ãµããŒããããŠããæ°æ©èœãå°å ¥ããããã«æ¡åŒµæ©èœã«äŸåããŠããŸããVRSã®å Žåãé¢é£ããæ¡åŒµæ©èœã¯éåžž `WEBGL_variable_rate_shading` ã§ãïŒãŸãã¯ãåºç€ãšãªã `D3D12_VARIABLE_SHADING_RATE_TIER` ãVulkanã® `VK_NV_shading_rate_image` / `VK_KHR_fragment_shading_rate` ã®æŠå¿µã«æ²¿ã£ããã³ããŒåºæã®æ¡åŒµæ©èœïŒã
éçºè ã¯éåžžããã®æ¡åŒµæ©èœã®å¯çšæ§ã確èªããååšããå Žåã¯ãã®æ©èœãå©çšããŠã·ã§ãŒãã£ã³ã°ã¬ãŒããå¶åŸ¡ã§ããŸããæ£ç¢ºãªAPIã¯å®è£ ãæšæºã®é²åã«ãã£ãŠè¥å¹²ç°ãªãå ŽåããããŸãããåºæ¬ååã¯äžè²«ããŠããŸãã
WebGL VRSã®æŠå¿µçã¡ã«ããºã
äœã¬ãã«ã®å®è£ 詳现ã¯ãã©ãŠã¶ãšGPUãã©ã€ãã«ãã£ãŠåŠçãããŸããããŠã§ãéçºè ã¯ä»¥äžã®ãããªã¡ã«ããºã ãéããŠæŠå¿µçã«VRSãšå¯Ÿè©±ããŸãïŒ
- ã·ã§ãŒãã£ã³ã°ã¬ãŒãã¢ã¿ããã¡ã³ãïŒã·ã§ãŒãã£ã³ã°ã¬ãŒãã€ã¡ãŒãž/ãã¹ã¯ïŒïŒ æãæè»ã§åŒ·åãªã¢ãããŒãã¯ãGPUã«ãã¯ã¹ãã£ïŒãã°ãã°ã·ã§ãŒãã£ã³ã°ã¬ãŒãã€ã¡ãŒãžãŸãã¯ãã¹ã¯ãšåŒã°ããïŒãæäŸããããšã§ãããã®ãã¯ã¹ãã£ã®åãã¯ã»ã«ã¯ãç»é¢äžã®ãã倧ããªãã¯ã»ã«ãããã¯ã«å¯Ÿå¿ããŸãïŒäŸïŒ16x16ãã¯ã»ã«ãããã¯ãã·ã§ãŒãã£ã³ã°ã¬ãŒãã€ã¡ãŒãžã®åäžãã¯ã»ã«ã«ãããã³ã°ãããïŒããã®ãã¯ã»ã«ã«æ ŒçŽãããŠããå€ãã察å¿ããç»é¢ãã¯ã»ã«ãããã¯ã®ã·ã§ãŒãã£ã³ã°ã¬ãŒããæ±ºå®ããŸããäŸãã°ãããå€ã¯1x1, 1x2, 2x1, 2x2ããããã¯4x4ã®ãããªããã«ç²ãã¬ãŒãã瀺ãããšããããŸãã
- ããªããã£ãããš/æç»ã³ãŒã«ããšã®ã¬ãŒãïŒTier 1 VRSïŒïŒ ããåçŽãªVRSå®è£ ã§ã¯ãéçºè ãæç»ã³ãŒã«å šäœãŸãã¯ããªããã£ãã«å¯ŸããŠåäžãªã·ã§ãŒãã£ã³ã°ã¬ãŒããèšå®ã§ããŸããããã¯ç²åºŠãäœãã§ãããç¹ã«é ãã®ãªããžã§ã¯ããèŠèŠçã«éèŠã§ãªãããšãããã£ãŠãããªããžã§ã¯ãã«å¯ŸããŠããã©ãŒãã³ã¹äžã®å©ç¹ãæäŸããŸãã
VRSãæå¹åããèšå®ããããšãGPUã®ã©ã¹ã¿ã©ã€ã¶ã¹ããŒãžã¯æå®ãããã·ã§ãŒãã£ã³ã°ã¬ãŒããèæ ®ã«å ¥ããŸããåžžã«ãã¯ã»ã«ããšã«1åãã©ã°ã¡ã³ãã·ã§ãŒããŒãåŒã³åºã代ããã«ã2x2ãã¯ã»ã«ãããã¯ã«å¯ŸããŠ1ååŒã³åºãããã®çµæã®è²ããããã¯å ã®4ã€ã®ãã¯ã»ã«ãã¹ãŠã«ãããŒããã£ã¹ãããããšããããŸããããã«ããããã©ã°ã¡ã³ãã·ã§ãŒããŒã®å®è¡åæ°ã广çã«æžå°ããGPUãµã€ã¯ã«ãç¯çŽãããŸãã
ã·ã§ãŒãã£ã³ã°ã¬ãŒãã®èª¬æ
ã·ã§ãŒãã£ã³ã°ã¬ãŒãã¯éåžžãåäžã®ãã©ã°ã¡ã³ãã·ã§ãŒããŒåŒã³åºãã«ãã£ãŠã·ã§ãŒãã£ã³ã°ããããã¯ã»ã«æ°ãç€ºãæ¯çã§è¡šãããŸããäžè¬çãªäŸã¯æ¬¡ã®ãšããã§ãïŒ
- 1x1: ãã¯ã»ã«ããšã«1åã®ãã©ã°ã¡ã³ãã·ã§ãŒããŒåŒã³åºããããã¯åŸæ¥ã®æé«å質èšå®ã§ãã
- 1x2: å¹ 1ãã¯ã»ã«ãé«ã2ãã¯ã»ã«ã®ãããã¯ã«å¯ŸããŠ1åã®ãã©ã°ã¡ã³ãã·ã§ãŒããŒåŒã³åºãã
- 2x1: å¹ 2ãã¯ã»ã«ãé«ã1ãã¯ã»ã«ã®ãããã¯ã«å¯ŸããŠ1åã®ãã©ã°ã¡ã³ãã·ã§ãŒããŒåŒã³åºãã
- 2x2: 2x2ãã¯ã»ã«ãããã¯ïŒ4ãã¯ã»ã«ïŒã«å¯ŸããŠ1åã®ãã©ã°ã¡ã³ãã·ã§ãŒããŒåŒã³åºããããã¯å€ãã®å Žåãããã©ãŒãã³ã¹åäžãšèŠèŠå質ã®è¯ããã©ã³ã¹ã§ãã
- 4x4: 4x4ãã¯ã»ã«ãããã¯ïŒ16ãã¯ã»ã«ïŒã«å¯ŸããŠ1åã®ãã©ã°ã¡ã³ãã·ã§ãŒããŒåŒã³åºããããã¯æã倧ããªããã©ãŒãã³ã¹åäžããããããŸãããäžé©åã«é©çšããããšé¡èãªèŠèŠçå£åãåŒãèµ·ããå¯èœæ§ããããŸãã
ã·ã§ãŒãã£ã³ã°ã¬ãŒãã®éžæã¯ãå®å šã«èŠèŠçãªã³ã³ããã¹ããšããã©ãŒãã³ã¹èŠä»¶ã«äŸåããŸããVRSã®çŸããã¯ããããã®ã¬ãŒããç»é¢å šäœã§åçã«çµã¿åãããèœåã«ãããŸãã
VRSã«ããé©å¿åã¬ã³ããªã³ã°æŠç¥
VRSã®çã®åã¯ããã®é©å¿èœåããçãŸããŸããéçºè ã¯ãæ§ã ãªåºæºã«åºã¥ããŠã·ã§ãŒãã£ã³ã°ã¬ãŒããåçã«èª¿æŽããã€ã³ããªãžã§ã³ããªæŠç¥ãèæ¡ããçã«é©å¿çãªã¬ã³ããªã³ã°å質ãå®çŸã§ããŸãã以äžã«ããã€ãã®äž»èŠãªæŠç¥ã瀺ããŸãïŒ
äžå¿çª©ã¬ã³ããªã³ã°
ãã®æŠç¥ã¯ããŠãŒã¶ãŒã®èŠç·ãéèŠãªããŒãã£ã«ãªã¢ãªãã£ïŒVRïŒããã³æ¡åŒµçŸå®ïŒARïŒã¢ããªã±ãŒã·ã§ã³ã§ç¹ã«å¹æçã§ãã人éã®èŠèŠç³»ã®äžå¿çª©ïŒé®®æãªèŠèŠãæ åœããç¶²èã®äžå¿éšïŒã«çæ³ãåŸãŠããŸãïŒ
- ã¡ã«ããºã ïŒ ã¢ã€ãã©ããã³ã°ããŒããŠã§ã¢ã䜿çšãããšãã¢ããªã±ãŒã·ã§ã³ã¯ãŠãŒã¶ãŒãç»é¢ã®ã©ããèŠãŠãããã倿ã§ããŸãã
- VRSã®é©çšïŒ ãŠãŒã¶ãŒã®èŠç·ã®çäžïŒäžå¿çª©é åïŒã¯æé«ã®ã·ã§ãŒãã£ã³ã°ã¬ãŒãïŒ1x1ïŒã§ã¬ã³ããªã³ã°ãããŸããäžå¿çª©ããã®è·é¢ãåšèŸºã«åãã£ãŠå¢ãã«ã€ããŠãã·ã§ãŒãã£ã³ã°ã¬ãŒãã¯åŸã ã«äœäžããŸãïŒäŸïŒ2x2ããããŠ4x4ãžïŒã
- å©ç¹ïŒ ãŠãŒã¶ãŒã¯éäžããŠããå Žæã§é«å¿ å®åºŠãèªèãã人éã®ç®ã詳现ãããŸãåŠçããªãåšèŸºéšã§å€§å¹ ãªããã©ãŒãã³ã¹åäžãéæãããŸããããã¯ãVRã§é«ãå®å®ãããã¬ãŒã ã¬ãŒããç¶æããä¹ãç©é ããæžãããã¹ã¿ã³ãã¢ãã³ãããã»ããã®ããããªãŒå¯¿åœãå»¶ã°ãããã«äžå¯æ¬ ã§ãã
ã³ã³ãã³ãã«å¿ããã·ã§ãŒãã£ã³ã°
VRSã¯ãã·ãŒã³ã®ç°ãªãéšåã®èŠèŠçç¹æ§ãéèŠæ§ã«åºã¥ããŠé©çšã§ããŸãïŒ
- 深床ã«åºã¥ãã·ã§ãŒãã£ã³ã°ïŒ ã«ã¡ã©ã«è¿ããªããžã§ã¯ãã¯ããã°ãã°æ³šç®ã®å¯Ÿè±¡ãšãªããããããé«ãã·ã§ãŒãã£ã³ã°ã¬ãŒãã§ã¬ã³ããªã³ã°ã§ããŸããé ãã«ãããªããžã§ã¯ããç¹ã«å°ããå Žåã被åçæ·±åºŠå¹æã§ãŒãããŠèŠããå Žåã¯ãããç²ãã·ã§ãŒãã£ã³ã°ã¬ãŒãã䜿çšã§ããŸãã
- ãããªã¢ã«/ãã¯ã¹ãã£ã®åäžæ§ïŒ åäžãªè²ãåçŽãªãããªã¢ã«ããŸãã¯ãŒããããã¯ã¹ãã£ãæã€é åïŒäŸïŒåè²ã®å£ãã¹ã«ã€ããã¯ã¹ããã£ã©ã¯ã¿ãŒã®èåŸã«ãããŒãããèæ¯ïŒã¯ãå質ã®äœäžãã»ãšãã©æããããããšãªããããäœãã·ã§ãŒãã£ã³ã°ã¬ãŒãã®æ©æµãåããããšãã§ããŸããéã«ãéåžžã«è©³çްãªãã¯ã¹ãã£ãè€éãªãããªã¢ã«ã¯1x1ã¬ãŒããç¶æããŸãã
- ã¢ãŒã·ã§ã³ã«åºã¥ãã·ã§ãŒãã£ã³ã°ïŒ å€§å¹ ãªã¢ãŒã·ã§ã³ãã©ãŒãçºçããŠããã·ãŒã³ã®éšåããéãåããªããžã§ã¯ãã¯ããã©ãŒå¹æãèªç¶ã«ãã£ããŒã«ã®äœäžããã¹ã¯ãããããããäœãã·ã§ãŒãã£ã³ã°ã¬ãŒãã§ã¬ã³ããªã³ã°ã§ããŸãã
- ãªããžã§ã¯ãã®éèŠåºŠïŒ äž»äººå ¬ã®ãã£ã©ã¯ã¿ãŒãéèŠãªã€ã³ã¿ã©ã¯ãã£ãèŠçŽ ã¯åžžã«1x1ã§ã¬ã³ããªã³ã°ããããããããŸããããèæ¯ã®å°éå ·ãéã€ã³ã¿ã©ã¯ãã£ããªèŠçŽ ã¯ããç²ãã¬ãŒãã䜿çšã§ããŸãã
ããã©ãŒãã³ã¹é§åã®é©å¿
ãã®æŠç¥ã¯ããªã¢ã«ã¿ã€ã ã®ããã©ãŒãã³ã¹ã¡ããªã¯ã¹ã«åºã¥ããŠã·ã§ãŒãã£ã³ã°ã¬ãŒããåçã«èª¿æŽããŸãïŒ
- ãã¬ãŒã ã¬ãŒãç®æšïŒ ã¢ããªã±ãŒã·ã§ã³ã®ãã¬ãŒã ã¬ãŒããæãŸããç®æšïŒäŸïŒ60 FPSïŒãäžåã£ãå Žåãã·ã¹ãã ã¯ããã©ãŒãã³ã¹ãåäžãããããã«ãéèŠåºŠã®äœãé åã®ã·ã§ãŒãã£ã³ã°ã¬ãŒããæ®µéçã«äžããããšãã§ããŸãããã¬ãŒã ã¬ãŒããç®æšãè¶ ããå Žåã¯ãèŠèŠå質ãåäžãããããã«ã·ã§ãŒãã£ã³ã°ã¬ãŒããæ®µéçã«äžããããšãã§ããŸãã
- ããã€ã¹èœåã®æ€åºïŒ åæããŒãæã«ãã¢ããªã±ãŒã·ã§ã³ã¯ãŠãŒã¶ãŒã®ããã€ã¹ïŒäŸïŒã¢ãã€ã«å¯Ÿãã¹ã¯ããããçµ±åGPU察ãã£ã¹ã¯ãªãŒãGPUïŒãæ€åºããåæã®ããŒã¹ã©ã€ã³ã·ã§ãŒãã£ã³ã°æŠç¥ãèšå®ã§ããŸããããã©ãŒãã³ã¹ã®äœãããã€ã¹ã¯ããã©ã«ãã§ããç©æ¥µçãªVRSã䜿çšãããã€ãšã³ããã·ã³ã¯éåžžã«ç¹å®ã®é«è² è·ã·ããªãªã§ã®ã¿VRSã䜿çšãããããããŸããã
- é»åäºç®ïŒ ã¢ãã€ã«ããã€ã¹ãããããªãŒé»æºã§å®è¡ãããŠããã¢ããªã±ãŒã·ã§ã³ã®å ŽåãVRSãç©æ¥µçã«é©çšããŠãšãã«ã®ãŒãç¯çŽããèŠèŠäœéšãå®å šã«ç ç²ã«ããããšãªãäœ¿çšæéãå»¶é·ã§ããŸãã
ãŠãŒã¶ãŒèšå®ã®çµ±å
VRSã¯ãã°ãã°èªååãããŸããããŠãŒã¶ãŒã«èšå®ãšããŠå ¬éããããšãã§ããŸããäŸãã°ãã²ãŒã ã¯ãããã©ãŒãã³ã¹ã¢ãŒããïŒããç©æ¥µçãªVRSïŒãããã©ã³ã¹ã¢ãŒããããå質ã¢ãŒããïŒæå°éã®VRSïŒãªã©ã®ãªãã·ã§ã³ãæäŸãããŠãŒã¶ãŒãèªåã®å¥œã¿ãããŒããŠã§ã¢ã«åãããŠäœéšã調æŽã§ããããã«ããŸãã
ã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã«ãšã£ãŠã®WebGL VRSã®å©ç¹
WebGLå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ããããã圱é¿ã¯ãç¹ã«ã°ããŒãã«ãªèŠç¹ããèŠããšç倧ã§ããããã¯ãäžçäžã®å€æ§ãªããŒããŠã§ã¢ç°å¢ããçããã¢ã¯ã»ã·ããªãã£ãšããã©ãŒãã³ã¹ã®æ Œå·®ã®å€ãã«å¯ŸåŠããŸãã
1. 倿§ãªããŒããŠã§ã¢ã§ã®ããã©ãŒãã³ã¹åäž
äžçäžã®å€ãã®ãŠãŒã¶ãŒã«ãšã£ãŠããã€ãšã³ãã®ã³ã³ãã¥ãŒãã£ã³ã°ããŒããŠã§ã¢ãžã®ã¢ã¯ã»ã¹ã¯äŸç¶ãšããŠç¹æš©ã§ããVRSã¯ã以äžã®æ¹æ³ã§ãã®å·®ãåããŸãïŒ
- ããã¹ã ãŒãºãªäœéšïŒ GPUã®è² è·ã軜æžããããšã§ãVRSã¯å€§å¹ ã«é«ãå®å®ãããã¬ãŒã ã¬ãŒããå¯èœã«ããç¹ã«ããã«ã¬ã³ãžããšã³ããªãŒã¬ãã«ã®ããã€ã¹ã§ãã¯ããã«ã¹ã ãŒãºã§æ¥œãããŠãŒã¶ãŒäœéšããããããŸããããã«ãããããå€ãã®äººã ãã€ã©ã€ã©ããã©ã°ãã«ã¯ã€ããªãã«ãè€éãª3DãŠã§ãã³ã³ãã³ãã«é¢ããããšãã§ããŸãã
- è€éãªã·ãŒã³ãã¢ã¯ã»ã¹å¯èœã«ïŒ éçºè ã¯ãVRSãå¹ åºããªãŒãã£ãšã³ã¹ã®ããã«ã¬ã³ããªã³ã°ãã€ã³ããªãžã§ã³ãã«æé©åã§ããããšãç¥ã£ãŠãããããããèŠèŠçã«éå¿çãªã·ãŒã³ãã¢ããªã±ãŒã·ã§ã³ãèšèšã§ããããã«ãªããŸããããã«ã¯ããã詳现ãªç°å¢ãããå€ãã®ãªããžã§ã¯ãããŸãã¯ããæŽç·ŽãããèŠèŠå¹æãå«ãŸãããããããŸããã
2. ãšãã«ã®ãŒå¹çã®åäž
ãšãã«ã®ãŒæ¶è²»ã¯ãåã ã®ãŠãŒã¶ãŒã«ãšã£ãŠãå°çã«ãšã£ãŠãéå€§ãªæžå¿µäºé ã§ããVRSã¯ã以äžã«ãã£ãŠç©æ¥µçã«è²¢ç®ããŸãïŒ
- ããããªãŒå¯¿åœã®å»¶é·ïŒ æºåž¯é»è©±ãã¿ãã¬ãããã©ãããããã§ã¯ãGPUã®è² è·ãæžããããšãçŽæ¥é»åæ¶è²»ã®äœäžã«ã€ãªãããããããªãŒå¯¿åœãå»¶ã°ãããŠãŒã¶ãŒãå é»ãå¿ èŠãšããã«é·æéã€ã³ã¿ã©ã¯ãã£ããª3Dã³ã³ãã³ããæ¥œããããšãã§ããŸãã
- çºç±ã®äœæžïŒ GPUã®äœæ¥ãå°ãªããšããããšã¯çºç±ãå°ãªãããšãæå³ããããã¯ããã€ã¹ã®å¯¿åœãç¶æããç¹ã«æããæ°åãé·æéã®äœ¿çšäžã«ãŠãŒã¶ãŒã®å¿«é©ããä¿ã€ããã«äžå¯æ¬ ã§ãã
- æç¶å¯èœãªã³ã³ãã¥ãŒãã£ã³ã°ïŒ ããåºãã¬ãã«ã§ã¯ãæ°çŸäžã®ããã€ã¹ã«ãããGPU䜿çšéãæé©åããããšã¯ããããšãã«ã®ãŒå¹çã®é«ããŠã§ãã«è²¢ç®ããäžççãªæç¶å¯èœæ§ã®ç®æšãšäžèŽããŸãã
3. ããã€ã¹äºææ§ãšã¢ã¯ã»ã·ããªãã£ã®æ¡å€§
VRSã¯ãããŒããŠã§ã¢ã®ã®ã£ãããåããããã®éèŠãªã€ããŒãã©ãŒã§ãããå é²çãª3Dã³ã³ãã³ããããåºãäžçã®äººå£çµ±èšã«ã¢ã¯ã»ã¹å¯èœã«ããŸãïŒ
- æªéæåžå Žãžã®å°éïŒ ãã€ãšã³ãã®ã²ãŒãã³ã°PCãé«äŸ¡ãªã¹ããŒããã©ã³ãäžè¬çã§ãªãå°åã§ã¯ãVRSã¯ãªãããªã€ã³ã¿ã©ã¯ãã£ããŠã§ãäœéšãäŸç¶ãšããŠå¹æçã«æäŸãããããšãä¿èšŒããããžã¿ã«ã€ã³ã¯ã«ãŒãžã§ã³ãä¿é²ããŸãã
- ã€ã³ã¯ã«ãŒã·ããã¶ã€ã³ïŒ éçºè ã¯ããã¢ãã€ã«ãã¡ãŒã¹ãããŸãã¯ãäœã¹ããã¯ãã¡ãŒã¹ããã®ã¢ãããŒãã§èšèšãããã®åŸããã匷åãªããã€ã¹ã®ããã«åè³ªãæ®µéçã«åäžãããããšãã§ããŸããããããã£ã¢ã®ããŒããŠã§ã¢ã§ããããŸãåäœããªãã³ã³ãã³ããäœæããããšã匷å¶ãããããšã¯ãããŸããã
4. éèŠãªéšåã§ã®ããé«ãèŠèŠçå¿ å®åºŠ
é説çã§ãããäžéšã®é åã®å質ãäœäžãããããšã§ãVRSã¯å®éã«å šäœçãªèŠèŠçå¿ å®åºŠãåäžãããããšãã§ããŸãïŒ
- ãªãœãŒã¹ã®åå²ãåœãŠïŒ ç²ãã·ã§ãŒãã£ã³ã°ã«ãã£ãŠç¯çŽãããGPUãµã€ã¯ã«ã¯ããã詳现ãªãžãªã¡ããªã®ã¬ã³ããªã³ã°ãéèŠãªé åã®ãã¯ã¹ãã£è§£å床ã®åäžããŸãã¯æã圱é¿ã®ããå Žæã§ã®ããæŽç·Žããããã¹ãããã»ãã·ã³ã°ãšãã§ã¯ãã®æå¹åãªã©ãä»ã®é åã«åå²ãåœãŠã§ããŸãã
- ç¥èŠçæé©åïŒ äººéã®ç®ã¯èŠéå šäœã§åäžã«è©³çŽ°ã«ææã§ã¯ãªããããéèŠåºŠã®äœãé åã®è©³çްãã€ã³ããªãžã§ã³ãã«æžããããšã§ããŠãŒã¶ãŒãå®éã«é«å質ãšããŠèªèãããã®ã«ãªãœãŒã¹ãéäžãããããšãã§ããç¥èŠçã«åªããäœéšã«ã€ãªãããŸãã
5. ãŠã§ãã°ã©ãã£ãã¯ã¹ã®å°æ¥æ§ã確ä¿
3DãŠã§ãã³ã³ãã³ãããŸããŸãè€éã«ãªãããªã¢ã«ã¿ã€ã ã®ã€ã³ã¿ã©ã¯ãã£ããã£ãžã®èŠæ±ãé«ãŸãã«ã€ããŠãVRSã¯æä»£ã®å ãè¡ãããã®éèŠãªããŒã«ãæäŸããŸããããã«ããããŠã§ããäžçã®ãŠãŒã¶ãŒããŒã¹ã®å€§éšåã眮ãå»ãã«ããããšãªããæå 端ã®ã°ã©ãã£ãã¯ã¹ã®ãã©ãããã©ãŒã ãšããŠé²åãç¶ããããšãä¿èšŒãããŸãã
WebGL VRSå°å ¥ã«ããã課é¡ãšèæ ®äºé
WebGL VRSã®å©ç¹ã¯é åçã§ããããã®æ¡çšãšå¹æçãªå®è£ ã«ã¯ãéçºè ãšããåºç¯ãªãŠã§ãã³ãã¥ããã£ã察åŠããªããã°ãªããªãäžé£ã®èª²é¡ã䌎ããŸãã
1. ãã©ãŠã¶ãšããŒããŠã§ã¢ã®ãµããŒã
- 倿§ãªå®è£ ïŒ VRSã¯æ¯èŒçæ°ããæ©èœã§ããããã®ãµããŒãã¯GPUãã³ããŒïŒäŸïŒNVIDIA, AMD, IntelïŒãšãã®åãã©ã€ãããŒãžã§ã³ã«ãã£ãŠç°ãªããŸãããã©ãŠã¶ãã³ããŒã¯ãããã®æ©èœãWebGLæ¡åŒµæ©èœãéããŠäžè²«ããŠå ¬éããããåªããŠããŸãããããã«ã¯æéããããããšããããŸãã
- éå±€çãªãµããŒãïŒ VRSã¯ãã°ãã°ç°ãªãããã£ã¢ãã§æäŸãããŸãããã£ã¢1ã¯éåžžãæç»ã³ãŒã«ããšãŸãã¯ããªããã£ãããšã®ã·ã§ãŒãã£ã³ã°ã¬ãŒããæäŸãããã£ã¢2ã¯éåžžã«è©³çްãªã·ã§ãŒãã£ã³ã°ã¬ãŒãã€ã¡ãŒãžãå¯èœã«ããŸããæå€§ã®å©çãåŸãããã«ã¯ãããé«åºŠãªãã£ã¢ã®å¹ åºããµããŒããäžå¯æ¬ ã§ãã
- ãã©ã°ã¡ã³ãã·ã§ãŒãã£ã³ã°ã¬ãŒãAPIã®é²åïŒ åºç€ãšãªãã°ã©ãã£ãã¯ã¹APIïŒVulkanãDirectX 12ãªã©ïŒããã©ã°ã¡ã³ãã·ã§ãŒãã£ã³ã°ã¬ãŒãæ©èœãé²åãããã«ã€ããŠãWebGLã远éããå¿ èŠãããããããåæã«ã¯APIã®å€æŽããã©ãããã©ãŒã éã§ã®ããããªäžäžèŽã«ã€ãªããå¯èœæ§ããããŸãã
2. èŠèŠçã¢ãŒãã£ãã¡ã¯ãã®å¯èœæ§
VRSã«é¢ããäž»ãªæžå¿µã¯ãæ³šææ·±ãå®è£ ããªããšç®ã«èŠããèŠèŠçã¢ãŒãã£ãã¡ã¯ããçºçããããšã§ãïŒ
- ãããã¯ãã€ãºïŒ ç²ãã·ã§ãŒãã£ã³ã°ã¬ãŒãã¯ãç¹ã«éããšããžã现ãããã£ããŒã«ããŸãã¯ã·ã§ãŒãã£ã³ã°ã¬ãŒããæ¥æ¿ã«å€åããé åã§ãç®ã«èŠããããããã¯ç¶ããŸãã¯ãã¯ã»ã«åãããå€èгãåŒãèµ·ããå¯èœæ§ããããŸãã
- ã¡ãã€ã/ãããã³ã°ïŒ ã·ã§ãŒãã£ã³ã°ã¬ãŒããæ»æçãããããé©åãªãã¬ã³ãã£ã³ã°ãªãã«å€æŽããããšãã·ãŒã³ã®äžéšãçªç¶ãã£ããŒã«ã¬ãã«ã倿ŽããããããŠãŒã¶ãŒã¯ã¡ãã€ããããããã³ã°ããç¥èŠããå¯èœæ§ããããŸãã
- ç·©åçïŒ éçºè ã¯ãã·ã§ãŒãã£ã³ã°ã¬ãŒãéã®ã¹ã ãŒãºãªç§»è¡ãèŠèŠç圱é¿ãæå°éã®å ŽæïŒäŸïŒãŒãããé åãäœã³ã³ãã©ã¹ãã®é åïŒã§ã®ã¿VRSãé©çšãããããŸããŸãªãã£ã¹ãã¬ã€è§£å床ã§ã®åºç¯ãªãã¹ãã«åºã¥ãæ éãªèª¿æŽãªã©ã®æŠç¥ãæ¡çšããå¿ èŠããããŸãã
3. å®è£ ãšçµ±åã®è€éã
- ã¬ã³ããªã³ã°ãã€ãã©ã€ã³ã®èŠçŽãïŒ VRSã广çã«çµ±åããã«ã¯ãåã«æ¡åŒµæ©èœãæå¹ã«ãã以äžã®ããšããã°ãã°å¿ èŠã§ããç¹ã«åçãªã·ã§ãŒãã£ã³ã°ã¬ãŒãã€ã¡ãŒãžã®å Žåãã¬ã³ããªã³ã°ãã€ãã©ã€ã³ã®å€æŽãå¿ èŠã«ãªãããšããããŸããéçºè ã¯ãã·ãŒã³åæã深床ãããã¡ãã¢ãŒã·ã§ã³ãã¯ã¿ãŒããŸãã¯ã¢ã€ãã©ããã³ã°ããŒã¿ã«åºã¥ããŠãããã®ã€ã¡ãŒãžãçæããã³æŽæ°ããå¿ èŠããããŸãã
- ã·ã§ãŒããŒã®å€æŽïŒ ã³ã¢ã®ã·ã§ãŒããŒããžãã¯ã¯åããããããŸããããéçºè ã¯VRSãã·ã§ãŒããŒã®å®è¡ã«ã©ã®ããã«åœ±é¿ããããçè§£ããããç²ãã¬ãŒãã«å¯ŸããŠããå ç¢ã«ãªãããã«ãã©ã°ã¡ã³ãã·ã§ãŒããŒãé©å¿ãããå¿ èŠããããããããŸããã
- ãã¹ããšãã¥ãŒãã³ã°ïŒ VRSã®æé©åã¯ç°¡åãªäœæ¥ã§ã¯ãããŸããã察象ãšãªãäžçäžã®ãªãŒãã£ãšã³ã¹å šäœã§ããã©ãŒãã³ã¹åäžãšèŠèŠåè³ªã®æé©ãªãã©ã³ã¹ãèŠã€ããã«ã¯ãããŸããŸãªããŒããŠã§ã¢æ§æãšãã£ã¹ãã¬ã€ãµã€ãºã§ã®åºç¯ãªãã¹ããå¿ èŠã§ãã
4. éçºè ããŒã«ãšãããã°
VRSã䜿çšãã广çãªéçºã«ã¯ãå°éã®ããŒã«ãå¿ èŠã§ãïŒ
- å¯èŠåïŒ ç»é¢å šäœã®ã¢ã¯ãã£ããªã·ã§ãŒãã£ã³ã°ã¬ãŒããå¯èŠåã§ãããããã°ããŒã«ã¯ãVRSãæ»æçãããããŸãã¯ååã«æ»æçã§ãªãé åãç¹å®ããããã«äžå¯æ¬ ã§ãã
- ããã©ãŒãã³ã¹ãããã¡ã€ãªã³ã°ïŒ VRSããã©ã°ã¡ã³ãã·ã§ãŒããŒã®è² è·ã«äžãã圱é¿ã瀺ã詳现ãªGPUãããã¡ã€ã©ããæé©åã®ããã«å¿ èŠã§ãã
- åŠç¿æ²ç·ïŒ éçºè ãç¹ã«é«åºŠãªã°ã©ãã£ãã¯ã¹ããã°ã©ãã³ã°ã«äžæ £ããªéçºè ã¯ãVRSã®ãã¥ã¢ã³ã¹ãšãã®ã¬ã³ããªã³ã°ãã€ãã©ã€ã³ãšã®çžäºäœçšãçè§£ããããã®åŠç¿æ²ç·ã«çŽé¢ããŸãã
5. ã³ã³ãã³ãäœæã¯ãŒã¯ãããŒ
ã¢ãŒãã£ã¹ãããã¯ãã«ã«ã¢ãŒãã£ã¹ããVRSãæèããå¿ èŠããããŸãïŒ
- ã¢ã»ããã®æºåïŒ çŽæ¥çãªèŠä»¶ã§ã¯ãããŸããããVRSãã©ã®ããã«é©çšãããããçè§£ããããšã¯ãåšèŸºé åã®ãã¯ã¹ãã£ãã£ããŒã«ãåäžãªãµãŒãã§ã¹ã®ãã¶ã€ã³ãªã©ãã¢ã»ããäœæã®æ±ºå®ã«åœ±é¿ãäžããå¯èœæ§ããããŸãã
- å質ä¿èšŒïŒ QAããŒã ã¯ãå¹ åºãããã€ã¹ãšã·ããªãªã«ããã£ãŠVRSé¢é£ã®ã¢ãŒãã£ãã¡ã¯ãããã¹ãããæºåãã§ããŠããªããã°ãªããŸããã
å®äžçã§ã®å¿çšãšã°ããŒãã«ãªåœ±é¿
WebGL VRSã®å®çšçãªå¿çšã¯åºç¯ã§ãããäžçäžã®æ§ã ãªã»ã¯ã¿ãŒã§ããžã¿ã«äœéšãåäžããã倧ããªå¯èœæ§ãç§ããŠããŸãã
1. ãã©ãŠã¶ããŒã¹ã®ã²ãŒã
- ã¢ãã€ã«ã²ãŒã ïŒ ç¹ã«ããã«ã¬ã³ãžã®ã¹ããŒããã©ã³ãé«ãæ®åçãèªãå°åã§æ¥æé·ããŠããã¢ãã€ã«ã²ãŒã åžå Žã«ãšã£ãŠãVRSã¯ç»æçãªæè¡ã§ããããèŠèŠçã«è±ãã§æµåçãªäœéšãå¯èœã«ãããšã³ã²ãŒãžã¡ã³ããšæºè¶³åºŠãé«ããŸããè€éãª3Dã¬ãŒã·ã³ã°ã²ãŒã ããã©ãŠã¶ã§ã¹ã ãŒãºã«åäœããããã€ã¹ã®ãã¯ãŒã«å¿ããŠã°ã©ãã£ãã¯ã¹ãé©å¿çã«èª¿æŽããæ§åãæ³åããŠã¿ãŠãã ããã
- ã¯ã©ãŠãã²ãŒãã³ã°ïŒ å€ãã¯ãµãŒããŒãµã€ãã§ã¬ã³ããªã³ã°ãããŸãããã¯ã©ã€ã¢ã³ããµã€ãã®ã¬ã³ããªã³ã°ããã€ããªããã¢ãããŒããæ©æµãåããå¯èœæ§ããããŸããããçŽæ¥çã«ã¯ããã©ãŠã¶ãã€ãã£ãã®ã¯ã©ãŠãã²ãŒãã³ã°ã¯ã©ã€ã¢ã³ãã®å ŽåãVRSã¯ããŒã«ã«ã®ãã³ãŒãããã³ã¬ã³ããªã³ã°ãã€ãã©ã€ã³ãæé©åããããšã§åž¯åå¹ èŠä»¶ãåæžã§ããŸãã
- eã¹ããŒããšã«ãžã¥ã¢ã«ã²ãŒã ïŒ ãã©ãŠã¶ããŒã¹ã®eã¹ããŒããã«ãžã¥ã¢ã«ã²ãŒã ã®ç«¶äºã®å ¬å¹³æ§ãšå¹ åºãã¢ã¯ã»ã·ããªãã£ã確ä¿ãããããVRSã¯æ¿ããã¢ã¯ã·ã§ã³äžã§ãé«ããã¬ãŒã ã¬ãŒããç¶æã§ããŸãã
2. Eã³ããŒã¹ãšè£œåã³ã³ãã£ã®ã¥ã¬ãŒã¿
- ã€ã³ã¿ã©ã¯ãã£ããª3D補åãã¥ãŒïŒ äžçäžã®äŒæ¥ããã«ã¹ã¿ã èªåè»ããããŒãœãã©ã€ãºãããå®¶å ·ãŸã§ã補åã®3Dã³ã³ãã£ã®ã¥ã¬ãŒã¿ãæ¡çšããŠããŸããVRSã¯ããããã®éåžžã«è©³çްãªã¢ãã«ããŠãŒã¶ãŒã®ã¿ãã¬ãããå€ãã©ãããããã§ããªã¢ã«ã¿ã€ã ã§ã¹ã ãŒãºã«æäœããã³è¡šç€ºãããããšãä¿èšŒããããŒããŠã§ã¢ã«é¢ä¿ãªããããè±ãã§æ å ±ã«åºã¥ããã·ã§ããã³ã°äœéšãæäŸããŸãã
- é¢è±çã®äœäžïŒ é ããŠã«ã¯ã€ã3Dã³ã³ãã£ã®ã¥ã¬ãŒã¿ã¯ããŠãŒã¶ãŒã®äžæºãã«ãŒãã®æŸæ£ã«ã€ãªããå¯èœæ§ããããŸããVRSã¯æµåçãªäœéšãä¿èšŒããæœåšçãªé¡§å®¢ãåŒãä»ãç¶ããŸãã
3. æè²ããã³ãã¬ãŒãã³ã°ã·ãã¥ã¬ãŒã·ã§ã³
- ã¢ã¯ã»ã¹ããããåŠç¿ç°å¢ïŒ ãªã³ã©ã€ã³æè²ãã©ãããã©ãŒã ãç¹ã«ç§åŠãå»çãå·¥åŠåéã§ã¯ãã€ã³ã¿ã©ã¯ãã£ããª3Dã·ãã¥ã¬ãŒã·ã§ã³ããã䜿çšãããŸããVRSã¯ããã€ãšã³ãã®ã³ã³ãã¥ãŒãã£ã³ã°ã©ããžã®ã¢ã¯ã»ã¹ã«é¢ä¿ãªãããããã®è€éãªã·ãã¥ã¬ãŒã·ã§ã³ãäžçäžã®åŠçãå°éå®¶ã«ãšã£ãŠããã¢ã¯ã»ã¹ããããããŸããããã«ã¯ãä»®æ³è§£åã建ç¯ãŠã©ãŒã¯ã¹ã«ãŒããŸãã¯æ©æ¢°æäœã·ãã¥ã¬ãŒã·ã§ã³ãªã©ãå«ãŸããŸãã
- ã°ããŒãã«ãªã³ã©ãã¬ãŒã·ã§ã³ïŒ ç°ãªãåœã®ããŒã ããã©ãŠã¶ã§çŽæ¥3Dã¢ãã«ãã·ãã¥ã¬ãŒã·ã§ã³ã§å ±åäœæ¥ã§ããVRSããã¹ãŠã®åå è ã«å¯ŸããŠäžè²«ããããã©ãŒãã³ã¹ã®é«ãäœéšãä¿èšŒããŸãã
4. ããŒã¿å¯èŠåãšåæ
- ã€ã³ã¿ã©ã¯ãã£ããªããã·ã¥ããŒãïŒ è€éã§å€æ¬¡å ã®ããŒã¿å¯èŠåã¯ãèšå€§ãªããŒã¿ã»ããã衚çŸããããã«ãã°ãã°3Dã°ã©ãã£ãã¯ã¹ã«äŸåããŸããVRSã¯ãæ°çŸäžã®ããŒã¿ãã€ã³ããæ±ãå Žåã§ãããããã®ã€ã³ã¿ã©ã¯ãã£ããªãã£ãŒããã°ã©ããã¹ã ãŒãºã«ã¬ã³ããªã³ã°ããã®ã«åœ¹ç«ã¡ãã°ããŒãã«äŒæ¥ã«ãšã£ãŠããŒã¿åæããŒã«ãããå ç¢ã§å¿çæ§ã®é«ããã®ã«ããŸãã
- ç§åŠç ç©¶ïŒ äžçäžã®ç ç©¶è ããååãå°è³ªæ§é ããŸãã¯å€©æããŒã¿ã®ã€ã³ã¿ã©ã¯ãã£ããª3Dã¢ãã«ããå°éã®ãœãããŠã§ã¢ãå¿ èŠãšããã«ãŠã§ããã©ãŠã¶ã§çŽæ¥å ±æããã³æ¢çŽ¢ã§ããVRSãããã©ãŒãã³ã¹ãæ¯æŽããŸãã
5. WebããŒã¹ã®AR/VRäœéš
- ã€ããŒã·ããŠã§ãïŒ WebXRã®å°é ã«ããããã©ãŠã¶ãéããŠçŽæ¥é åçãªAR/VRäœéšãæäŸããããšãçŸå®ã«ãªãã€ã€ãããŸããVRSãç¹ã«äžå¿çª©ã¬ã³ããªã³ã°ã¯ãå¿«é©ã§æ²¡å ¥æã®ããVRã«å¿ èŠãšãããé«ãå®å®ãããã¬ãŒã ã¬ãŒãïŒéåžž90 FPS以äžïŒãéæããããã«çµ¶å¯Ÿã«äžå¯æ¬ ã§ãããç¹ã«ã¹ã¿ã³ãã¢ãã³ãããã»ãããäœé»åããã€ã¹ã§éèŠã§ãã
- ã€ããŒã·ãæè¡ãžã®ã°ããŒãã«ãªã¢ã¯ã»ã·ããªãã£ïŒ ããã¹ã ãŒãºãªAR/VRãå¯èœã«ããããšã§ãVRSã¯ã€ããŒã·ããŠã§ãäœéšãžã®åå ¥éå£ãäžãããã®æå 端æè¡ãäžçäžã®ãŠãŒã¶ãŒã«ãšã£ãŠããã¢ã¯ã»ã¹ããããããŸãã
WebGLãšVRSã®æªæ¥ïŒä»åŸã®å±æ
WebGLå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ã®æ ã¯å§ãŸã£ãã°ããã§ããããã®æªæ¥ã¯ãŠã§ãã°ã©ãã£ãã¯ã¹ãšããŒããŠã§ã¢ã®ããåºç¯ãªçºå±ãšçµ¡ã¿åã£ãŠããŸãã
WebGPUãšå é²çãªã°ã©ãã£ãã¯ã¹API
VRSã¯æ¡åŒµæ©èœãéããŠWebGLã«å°å ¥ãããŠããŸãããæ¬¡äžä»£ã®ãŠã§ãã°ã©ãã£ãã¯ã¹APIã§ããWebGPUã¯ãå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ïŒVulkanã§ã¯ãã°ãã°ããã©ã°ã¡ã³ãã·ã§ãŒãã£ã³ã°ã¬ãŒãããæŠå¿µçã«ã¯ãã¡ãã·ã¥ã·ã§ãŒãã£ã³ã°ããšåŒã°ããïŒã®ãã€ãã£ããµããŒããå«ããããçŸä»£çãªGPUæ©èœãå ¬éããããã«ãŒãããèšèšãããŠããŸããWebGPUã¯GPUã«å¯Ÿããããæç€ºçã§äœã¬ãã«ã®å¶åŸ¡ãæäŸãããŠã§ãäžã§ã®VRSå®è£ ãããã«å¹ççã§æè»ãªãã®ã«ããã§ããããWebGPUã®æ¡çšãæ¡å€§ããã«ã€ããŠãVRSã¯ãŠã§ãéçºè ã«ãšã£ãŠã®ã³ã¢æ©èœãšããŠç¢ºç«ãããã§ãããã
æšæºåãšçžäºéçšæ§
ç°ãªãã°ã©ãã£ãã¯ã¹APIãšããŒããŠã§ã¢éã§VRSæ©èœãæšæºåããåãçµã¿ãé²ããããŠããŸãããã®æšæºåã¯éçºãç°¡çŽ åãããã©ãŠã¶ãããã€ã¹éã§ã®äžè²«ããåäœãä¿èšŒããæ¡çšãå éãããŸããçµ±äžãããã¢ãããŒãã¯ãã°ããŒãã«ãªãŠã§ãéçºã³ãã¥ããã£ã«ãšã£ãŠäžå¯æ¬ ã§ãã
AIãšæ©æ¢°åŠç¿ã®çµ±å
VRSã®é©å¿çãªæ§è³ªã¯ã人工ç¥èœïŒAIïŒãæ©æ¢°åŠç¿ïŒMLïŒãšã®çµ±åã«çæ³çãªåè£ãšãªããŸããå°æ¥ã®å®è£ ã§ã¯ã次ã®ãããªããšãèããããŸãïŒ
- ã€ã³ããªãžã§ã³ããªã·ã§ãŒãã£ã³ã°ã¬ãŒãäºæž¬ïŒ 倧éã®ã¬ã³ããªã³ã°ããŒã¿ã§ãã¬ãŒãã³ã°ãããMLã¢ãã«ãããã¬ãŒã ãå®å šã«ã¬ã³ããªã³ã°ãããåã§ãã£ãŠããç°ãªãã·ãŒã³é åã®æé©ãªã·ã§ãŒãã£ã³ã°ã¬ãŒãããªã¢ã«ã¿ã€ã ã§äºæž¬ããããå¹ççã§ã¢ãŒãã£ãã¡ã¯ãã®ãªãé©å¿ãå®çŸããŸãã
- ç¥èŠçå質ã¡ããªã¯ã¹ïŒ AIã䜿çšããŠã¬ã³ããªã³ã°ããããã¬ãŒã ãåæããç¥èŠãããå質ã«é¢ãããã£ãŒãããã¯ãæäŸããããšã§ãVRSã¢ã«ãŽãªãºã ãããã©ãŒãã³ã¹ãæå€§åããªããç¹å®ã®èŠèŠçå¿ å®åºŠç®æšãç¶æããããã«ã¬ãŒããåçã«èª¿æŽã§ããããã«ãªããŸãã
ããŒããŠã§ã¢æ¡çšã®æ¡å€§
ãã€ãã£ãVRSæ©èœãåããæ°ããGPUãããšã³ããªãŒã¬ãã«ã®ã¢ãã€ã«ãããã»ãããããã€ãšã³ãã®ãã£ã¹ã¯ãªãŒãGPUãŸã§ããã¹ãŠã®åžå Žã»ã°ã¡ã³ãã§ããæ®åããã«ã€ããŠãWebGL VRSã®ãªãŒããšåœ±é¿ã¯å¢å€§ããã°ããã§ãããã®ãŠããã¿ã¹ãªããŒããŠã§ã¢ãµããŒãã¯ããã®æœåšèœåãäžççã«å®å šã«å®çŸããããã«äžå¯æ¬ ã§ãã
çµè«ïŒãã¹ãŠã®äººã®ããã®ãããã¹ããŒããªãŠã§ãã°ã©ãã£ãã¯ã¹ãžã®ã¢ãããŒã
WebGLå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ã¯ãŠã§ãã°ã©ãã£ãã¯ã¹ã«ãããæ¥µããŠéèŠãªé²æ©ã§ãããé«å¿ å®åºŠã®ã€ã³ã¿ã©ã¯ãã£ããª3DäœéšãããŒããŠã§ã¢ã®å¶çŽã«ãã£ãŠå¶éãããã®ã§ã¯ãªãããã¹ãŠã®å€§éžã®ããã¹ãŠã®ããã€ã¹ã®ããã¹ãŠã®ãŠãŒã¶ãŒã®ããã«æé©åãããæªæ¥ã«ç§ãã¡ãè¿ã¥ããŸãã
éçºè ãGPUãªãœãŒã¹ãã€ã³ããªãžã§ã³ãã«å²ãåœãŠãããšãå¯èœã«ããããšã§ãVRSã¯ãäžççã«å€æ§ãªããŒããŠã§ã¢ç°å¢ã«ãããŠãäžè²«æ§ã®ããé«å質ã§ããã©ãŒãã³ã¹ã®é«ããŠãŒã¶ãŒäœéšãæäŸãããšããæ ¹æ¬çãªèª²é¡ã«åãçµãã§ããŸãããšã³ã¿ãŒãã€ã¡ã³ãããæè²ãEã³ããŒã¹ãŸã§ãæŽç·ŽããããŠã§ãã¢ããªã±ãŒã·ã§ã³ã«å¯ŸããŠãããã¹ã ãŒãºãªãã¬ãŒã ã¬ãŒããå»¶é·ãããããããªãŒå¯¿åœããããŠããåºãã¢ã¯ã»ã·ããªãã£ãçŽæããŸãã
å®è£ ããã©ãŠã¶ãµããŒããèŠèŠçã¢ãŒãã£ãã¡ã¯ãã®åé¿ãšãã£ã課é¡ã¯æ®ããŸãããWebGLæ¡åŒµæ©èœã®ç¶ç¶çãªéçºãšWebGPUã®ç»å Žã¯ãVRSã®ããå ç¢ã§åºç¯ãªæ¡çšãžã®éãåãéããŠããŸãããŠã§ãéçºè ãšããŠããã®æè¡ãåãå ¥ããããšã¯ãåã«ããã©ãŒãã³ã¹ãæé©åããããšã ãã§ã¯ãããŸãããããã¯ãããžã¿ã«ã€ã³ã¯ã«ãŒãžã§ã³ãä¿é²ããçã«ã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ããŠã§ãã®å®å šãªèŠèŠçå¯èœæ§ãäœéšã§ããããã«ããããšã§ãã
é©å¿åã¬ã³ããªã³ã°åè³ªã®æä»£ãå°æ¥ããWebGLå¯å€ã¬ãŒãã·ã§ãŒãã£ã³ã°ã¯ãã®æåç·ã«ç«ã¡ããŠã§ãããã¹ãŠã®äººã«ãšã£ãŠããèŠèŠçã«èŠäºã§ãå ¬å¹³ã«ã¢ã¯ã»ã¹å¯èœãªãã©ãããã©ãŒã ã«ããŠããŸãã