WebXR空éãªãŒãã£ãªã3DãªãŒãã£ãªããžã·ã§ãã³ã°ãæžè¡°ããçã«æ²¡å ¥çã§ãªã¢ã«ãªVR/ARäœéšãã°ããŒãã«ã«æäŸããäžã§æããéèŠãæ¢æ±ããŸãã
WebXR空éãªãŒãã£ãªïŒæ²¡å ¥åäœéšã®ããã®3DãªãŒãã£ãªããžã·ã§ãã³ã°ãšæžè¡°ã®ãã¹ã¿ãŒ
æ¥éã«é²åããæ¡åŒµçŸå®ïŒXRïŒã®é åã«ãããŠãçã®æ²¡å ¥æãå®çŸããã«ã¯ãåã«çŽ æŽãããããžã¥ã¢ã«ãè¶ ãããã®ãæ±ããããŸãã説åŸåã®ããä»®æ³ãŸãã¯æ¡åŒµäžçãåµé ããäžã§ãæã匷åã§ãããªãããã°ãã°éå°è©äŸ¡ãããŠããèŠçŽ ã®1ã€ã空éãªãŒãã£ãªã§ããæŽç·Žããã3DãªãŒãã£ãªããžã·ã§ãã³ã°ãšãªã¢ã«ãªæžè¡°ãå å«ããWebXR空éãªãŒãã£ãªã¯ãããæ·±ããšã³ã²ãŒãžã¡ã³ããè§£ãæŸã¡ããªã¢ãªãºã ãé«ãããŠãŒã¶ãŒã®ç¥èŠãå°ãããã®éµãšãªããŸãã
ãã®å æ¬çãªã¬ã€ãã§ã¯ãWebXRéçºã«ããã空éãªãŒãã£ãªã®è€éããæãäžããŸãã3DãªãŒãã£ãªããžã·ã§ãã³ã°ã®åºæ¬ååãæžè¡°ã®éèŠãªæŠå¿µããããŠéçºè ããããã®ãã¯ããã¯ãã©ã®ããã«æŽ»çšããŠã倿§ãªã°ããŒãã«ãªãŒãã£ãšã³ã¹ã®ããã«çã«å¿ããããªãæ²¡å ¥åäœéšãåµé ã§ããããæ¢ããŸããçµéšè±å¯ãªXRéçºè ã§ãã£ãŠããæ ãå§ããã°ããã§ãã£ãŠãã空éãªãŒãã£ãªã®çè§£ã¯äžå¯æ¬ ã§ãã
åºç€ïŒWebXRã«ãããŠç©ºéãªãŒãã£ãªãéèŠãªçç±
掻æ°ããµããä»®æ³åžå Žã«è¶³ãèžã¿å ¥ããããšãæ³åããŠã¿ãŠãã ãããèŠèŠçã«ã¯é®®ããã§è©³çްãããããŸãããããã¹ãŠã®é³ãåäžã®ç¹ããçºããããããæ¹åæ§ã®æããããæ¬ ããŠããããããšããã®å¹»æ³ã¯å£ããŠããŸããŸãã空éãªãŒãã£ãªã¯ãçŸå®äžçã§ç§ãã¡ãé³ãç¥èŠããæ¹æ³ãæš¡å£ããããšã§ããããã®ããžã¿ã«ç°å¢ã«çåœãšãªã¢ãªãºã ãæ³šå ¥ããŸããããã«ããããŠãŒã¶ãŒã¯æ¬¡ã®ããšãå¯èœã«ãªããŸãã
- 鳿ºãçŽæçã«ç¹å®ããïŒãŠãŒã¶ãŒã¯ãå·Šããèãããååã®å£°ãè¿ã¥ããŠããè»äž¡ãé ãã§é³Žãé³¥ã®ãããããªã©ãé³ãã©ãããæ¥ãŠããã®ããæ¬èœçã«çè§£ã§ããŸãã
- è·é¢ãšè¿æ¥åºŠã倿ããïŒé³éãšæç床ã¯ãé³ãã©ãã ãé¢ããŠãããã«ã€ããŠã®éèŠãªæ å ±ãæäŸããŸãã
- ç°å¢é³é¿ãç¥èŠããïŒãšã³ãŒãæ®é¿ããããŠé³ãããŸããŸãªçŽ æãã©ã®ããã«äŒãããã¯ãå Žæã®æèŠã«è²¢ç®ããŸãã
- ç¶æ³èªèãåäžãããïŒã€ã³ã¿ã©ã¯ãã£ããªXRã¢ããªã±ãŒã·ã§ã³ã§ã¯ã空éãªãŒãã£ãªã¯ããŠãŒã¶ãŒã®çŽæ¥ã®èŠçã®å€ã§èµ·ãã£ãŠããã€ãã³ãããŠãŒã¶ãŒã«èŠåããå®å šæ§ãšãšã³ã²ãŒãžã¡ã³ããåäžãããããšãã§ããŸãã
- ææ çãªã€ã³ãã¯ããä¿é²ããïŒé©åã«é 眮ããããã€ãããã¯ãªãªãŒãã£ãªã¯ãçµéšã®ææ çãªå ±é³Žãå€§å¹ ã«å¢å¹ ããããšãã§ããŸãã
æåçãªãã¥ã¢ã³ã¹ãèŠèŠçãªè§£éãç°ãªãã°ããŒãã«ãªãŒãã£ãšã³ã¹ã«ãšã£ãŠãèšèªã®å£ãè¶ ããæ®éçã«çè§£å¯èœã§ã€ã³ãã¯ãã®ããæèŠå ¥åãšããŠã®ç©ºéãªãŒãã£ãªã¯ãããã«éèŠã«ãªããŸããããã¯ãèšèªã®å£ãè¶ããå ±æãããçŽæçãªæ å ±å±€ãæäŸããŸãã
WebXRã«ããã3DãªãŒãã£ãªããžã·ã§ãã³ã°ã®çè§£
ãã®æ žå¿ã«ãããŠã3DãªãŒãã£ãªããžã·ã§ãã³ã°ã¯ããªã¹ããŒã®é éšã«å¯Ÿããçžå¯Ÿçãª3次å 空éã«é³æºãã¬ã³ããªã³ã°ããããšãå«ã¿ãŸããããã¯åãªãã¹ãã¬ãªãµãŠã³ãã§ã¯ãªãããŠãŒã¶ãŒã®åãåŸããäžãäžããããŠåšå²ã®ãã¹ãŠã«æ£ç¢ºã«é³ãé 眮ããããšã§ããWebXRã¯ããããéæããããã«ããã€ãã®äž»èŠãªãã¯ããã¯ã掻çšããŠããŸãã
1. ãã³ãã³ã°ãšã¹ãã¬ãªã€ã¡ãŒãžã³ã°
空éåã®æãåºæ¬çãªåœ¢æ ã¯ã¹ãã¬ãªãã³ãã³ã°ã§ããã鳿ºã®é³éãå·Šå³ã®ã¹ããŒã«ãŒïŒãŸãã¯ããããã©ã³ïŒéã§èª¿æŽãããŸããããã¯åºæ¬çãªãã¯ããã¯ã§ãããçã®3Dæ²¡å ¥æã«ã¯äžååã§ããããããããè€éãªç©ºéãªãŒãã£ãªã¬ã³ããªã³ã°ã®åºç€ã圢æããŸãã
2. ãã€ããŒã©ã«ãªãŒãã£ãªãšé éšäŒé颿°ïŒHRTFïŒ
ãã€ããŒã©ã«ãªãŒãã£ãªã¯ãããããã©ã³ãä»ããŠéåžžã«ãªã¢ã«ãª3DãµãŠã³ããæäŸãããŽãŒã«ãã¹ã¿ã³ããŒãã§ããããã¯ãè³ãšé ãéŒèã«å°éããåã«é³æ³¢ãšã©ã®ããã«çžäºäœçšããããã·ãã¥ã¬ãŒãããããšã«ãã£ãŠæ©èœããŸãããã®çžäºäœçšã¯ãé³ã®ç¹æ§ãããã®æ¹åãšãªã¹ããŒã®ãŠããŒã¯ãªè§£ååŠçæ§é ã«åºã¥ããŠåŸ®åŠã«å€åãããŸãã
é éšäŒé颿°ïŒHRTFïŒã¯ããããã®è€éãªé³é¿çžäºäœçšããã£ããã£ããæ°åŠçã¢ãã«ã§ããåHRTFã¯ãç¹å®ã®æ¹åããã®é³ãããªã¹ããŒã®é éšãèŽäœãããã³å€è³ïŒè³ä»ïŒã«ãã£ãŠã©ã®ããã«ãã£ã«ã¿ãªã³ã°ããããã衚ããŸããé©åãªHRTFã鳿ºã«é©çšããããšã«ãããéçºè ã¯é³ã3D空éã®ç¹å®ã®ç¹ããçºçããŠãããã®ãããªé¯èŠãäœæã§ããŸãã
- æ±çšHRTF vs. ããŒãœãã«HRTFïŒWebXRã¢ããªã±ãŒã·ã§ã³ã§ã¯ãæ±çšHRTFãäžè¬çã«äœ¿çšãããã»ãšãã©ã®ãŠãŒã¶ãŒã«ãšã£ãŠãªã¢ã«ãã®è¯å¥œãªãã©ã³ã¹ãæäŸããŸãããã ããé«åºŠã«ããŒãœãã©ã€ãºãããäœéšã®ç©¶æ¥µã®ç®æšã¯ãããããã¹ããŒããã©ã³ã¹ãã£ã³ã§ãã£ããã£ããããŠãŒã¶ãŒåºæã®HRTFãå©çšããããšã«ãªãã§ãããã
- WebXRã§ã®å®è£ ïŒWebXRãã¬ãŒã ã¯ãŒã¯ãšAPIã¯ãHRTFããŒã¹ã®ãã€ããŒã©ã«ã¬ã³ããªã³ã°ããµããŒãããŠããããšããããããŸããWeb Audio APIã®PannerNodeã®ãããªã©ã€ãã©ãªã¯HRTFã䜿çšããããã«èšå®ã§ããããé«åºŠãªãªãŒãã£ãªããã«ãŠã§ã¢ãœãªã¥ãŒã·ã§ã³ã¯å°çšã®WebXRãã©ã°ã€ã³ãæäŸããŸãã
3. ã¢ã³ããœããã¯ã¹
ã¢ã³ããœããã¯ã¹ã¯ã3DãµãŠã³ãããã£ããã£ããã³ã¬ã³ããªã³ã°ããããã®ãã1ã€ã®åŒ·åãªãã¯ããã¯ã§ããåã ã®é³æºã«çŠç¹ãåœãŠãã®ã§ã¯ãªããã¢ã³ããœããã¯ã¹ã¯é³å Žèªäœããã£ããã£ããŸããçç¶ãã€ã¯ããã©ã³ã¢ã¬ã€ã䜿çšããŠããã¹ãŠã®æ¹åããã®é³å§ãšæ¹åæåãåæã«èšé²ããŸãã
èšé²ãããã¢ã³ããœããã¯ã¹ä¿¡å·ã¯ãããŸããŸãªã¹ããŒã«ãŒæ§æã«ãã³ãŒãã§ããŸãããŸãã¯ãWebXRã«ãšã£ãŠéèŠãªãHRTFã䜿çšãããã€ããŒã©ã«ãªãŒãã£ãªã«ãã³ãŒãã§ããŸããã¢ã³ããœããã¯ã¹ã¯ãç¹ã«ä»¥äžã®ãããªå Žåã«åœ¹ç«ã¡ãŸãã
- ç°å¢ãªãŒãã£ãªã®ãã£ããã£ïŒçŸå®äžçã®å Žæã®ç°å¢é³ãä»®æ³ç°å¢ã§äœ¿çšããããã«èšé²ããŸãã
- æ²¡å ¥åãµãŠã³ãã¹ã±ãŒãã®äœæïŒãªã¹ããŒã®åãã«ãªã¢ã«ã«åå¿ãããè±ãã§å€æ¹åã®ãªãŒãã£ãªç°å¢ãæ§ç¯ããŸãã
- ã©ã€ã360°ãªãŒãã£ãªã¹ããªãŒãã³ã°ïŒç©ºéçã«é²é³ããããªãŒãã£ãªã®ãªã¢ã«ã¿ã€ã åçãå¯èœã«ããŸãã
4. ãªããžã§ã¯ãããŒã¹ãªãŒãã£ãª
ææ°ã®ãªãŒãã£ãªãšã³ãžã³ã¯ããŸããŸããªããžã§ã¯ãããŒã¹ãªãŒãã£ãªãžãšç§»è¡ããŠããŸãããã®ãã©ãã€ã ã§ã¯ãåã ã®ãµãŠã³ãèŠçŽ ïŒãªããžã§ã¯ãïŒã¯ãåºå®ãã£ã³ãã«ã«ããã¯ã¹ãããã®ã§ã¯ãªãããã®äœçœ®ãç¹æ§ãã¡ã¿ããŒã¿ã«ãã£ãŠå®çŸ©ãããŸããã¬ã³ããªã³ã°ãšã³ãžã³ã¯ããªã¹ããŒã®èŠç¹ãšç°å¢ã®é³é¿ã«å¿ããŠããããã®ãªããžã§ã¯ãã3D空éã«åçã«é 眮ããŸãã
ãã®ã¢ãããŒãã¯ãåã ã®ãµãŠã³ããXRã·ãŒã³å ã§ãªã¢ã«ãã€ç¬ç«ããŠåäœãããè€éãªãµãŠã³ããã¶ã€ã³ãå¯èœã«ãããèšãç¥ããªãæè»æ§ãšã¹ã±ãŒã©ããªãã£ãæäŸããŸãã
è·é¢ã®ç§åŠïŒãªãŒãã£ãªæžè¡°
åã«é³ã3D空éã«é 眮ããã ãã§ã¯äžååã§ãããªã¹ããŒããé¢ããã«ã€ããŠãããã¯ãªã¢ã«ã«æ¯ãèããªããã°ãªããŸãããããã§ãªãŒãã£ãªæžè¡°ãç»å ŽããŸããæžè¡°ãšã¯ãé³ã空éãäŒæããé害ç©ã«ééããã«ã€ããŠé³ã®åŒ·åºŠãäœäžããããšã§ãã
广çãªæžè¡°ã¯ã以äžã®ããã«éèŠã§ãã
- ãªã¢ã«ãªè·é¢ã®èšå®ïŒè·é¢ãšãšãã«éãã«ãªããªãé³ã¯ãäžèªç¶ã§æ··ä¹±ãæãããã«æããããŸãã
- ãŠãŒã¶ãŒã®çŠç¹ãèªå°ããïŒé ãã®é³ã¯èªç¶ã«èæ¯ã«ãã§ãŒããã忝ã®é³ãéç«ã€ããã«ããå¿ èŠããããŸãã
- ãªãŒãã£ãªã®ä¹±éããé²ãïŒæžè¡°ã¯ãè€æ°ã®é³æºã®ç¥èŠãããã©ãŠããã¹ã管çããã®ã«åœ¹ç«ã¡ããªãŒãã£ãªããã¯ã¹ããã管çããããããŸãã
æžè¡°ã¢ãã«ã®çš®é¡
æžè¡°ãã·ãã¥ã¬ãŒãããããã«ããã€ãã®ã¢ãã«ã䜿çšãããŠãããããããã«ç¬èªã®ç¹æ§ããããŸãã
a. éäºä¹ã®æ³åïŒè·é¢æžè¡°ïŒ
ããã¯æãåºæ¬çãªã¢ãã«ã§ããé³ã®åŒ·åºŠãããœãŒã¹ããã®è·é¢ã®äºä¹ã«åæ¯äŸããŠæžå°ãããšèŠå®ããŠããŸããç°¡åã«èšãã°ãè·é¢ã2åã«ãããšãé³ã®åŒ·åºŠã¯1/4ã«äœäžããŸããããã¯ãèªç¶ãªé³ã®æžè¡°ãã·ãã¥ã¬ãŒãããããã®è¯ãåºçºç¹ã§ãã
åŒïŒé³é = ãœãŒã¹é³é / (è·é¢Â²)
éãã空éã§ã¯æ£ç¢ºã§ãããéäºä¹ã®æ³åã¯ç°å¢èŠå ãèæ ®ããŠããŸããã
b. ç·åœ¢æžè¡°
ç·åœ¢æžè¡°ã§ã¯ãè·é¢ãå¢å ããã«ã€ããŠé³éãäžå®ã®å²åã§æžå°ããŸããããã¯éäºä¹ã®æ³åãããç©ççã«æ£ç¢ºã§ã¯ãããŸããããç¹å®ã®èšèšäžã®éžæã«åœ¹ç«ã€å ŽåããããŸããããšãã°ãçãç¯å²ã§ããäžè²«ããç¥èŠãããæžè¡°ãäœæããå Žåãªã©ã§ãã
c. ææ°æžè¡°
ææ°æžè¡°ã¯ãç¹ã«è¿ãè·é¢ã§ã¯éäºä¹ã®æ³åãããåŸã ã«é³ããã§ãŒãã¢ãŠãããé ãè·é¢ã§ã¯ããæ¥éã«ãã§ãŒãã¢ãŠãããŸããããã¯ãç¹å®ã®çš®é¡ã®é³ãç¹å®ã®é³é¿ç°å¢ã§ã¯ãããèªç¶ã«æããããããšããããŸãã
d. å¯Ÿæ°æžè¡°
å¯Ÿæ°æžè¡°ã¯ãç§ãã¡ãã©ãŠããã¹ïŒãã·ãã«ïŒãç¥èŠããæ¹æ³ãã·ãã¥ã¬ãŒãããããã«ãã䜿çšãããŸããç§ãã¡ã®è³ã¯é³å§ã®å€åãç·åœ¢ã«ç¥èŠããªããããããã¯å¿çé³é¿åŠçã«æãé¢é£æ§ã®é«ãã¢ãã«ã§ããå€ãã®ãªãŒãã£ãªãšã³ãžã³ã¯ãå¯Ÿæ°æžè¡°èšå®ãèš±å¯ããŸãã
è·é¢ãè¶ ããŠïŒãã®ä»ã®æžè¡°èŠå
ãªã¢ã«ãªæžè¡°ã¯ãè·é¢ä»¥äžã®ãã®ãå«ã¿ãŸãã
- é®èœïŒOcclusionïŒïŒé³æºãïŒå£ãæ±ãªã©ïŒãªããžã§ã¯ãã«ãã£ãŠãããã¯ãããŠããå Žåããªã¹ããŒãžã®çŽæ¥çµè·¯ã劚ããããŸããããã«ãããé³ãããããåšæ³¢æ°æåãå€åããå¯èœæ§ããããŸããWebXRãšã³ãžã³ã¯ããã£ã«ã¿ãŒãé©çšããç°å¢ã®ãžãªã¡ããªã«åºã¥ããŠé³éãäžããããšã§ãé®èœãã·ãã¥ã¬ãŒãã§ããŸãã
- åžåïŒç°å¢å ã®çŽ æãé³ãšãã«ã®ãŒãåžåããŸããã«ãŒãã³ãã«ãŒããããªã©ã®æãããçŽ æã¯é«åšæ³¢æ°ãããå€ãåžåããã³ã³ã¯ãªãŒããªã©ã®ç¡¬ã衚é¢ã¯ããããåå°ããŸããããã¯ããµãŠã³ãã®å šäœçãªé³è²ãšæžè¡°ã«åœ±é¿ããŸãã
- æ®é¿ïŒReverbïŒïŒå ã®é³æºã忢ããåŸã空éã«é³ãæç¶ããããšã§ããããã¯ã衚é¢ããã®åå°ã«ãã£ãŠåŒãèµ·ããããŸãããªã¢ã«ãªæ®é¿ã¯ãç°å¢ã®é³é¿ç¹æ§ïŒäŸïŒå°ãã也ç¥ããéšå± vs. 倧ããªæŽçªã®ãããªããŒã«ïŒãèšå®ããããã«äžå¯æ¬ ã§ãã
- ãããã©ãŒå¹æïŒå³å¯ã«ã¯æžè¡°ã§ã¯ãããŸãããããããã©ãŒå¹æïŒãœãŒã¹ãšãªã¹ããŒéã®çžå¯Ÿéåã«ããé³ã®ãããã®å€åïŒã¯ãç¹ã«ãšã³ãžã³ãã¢ã©ãŒã ã®ãããªæç¢ºãªé³èª¿æåãæã€é³ã®ç§»åãªããžã§ã¯ãã®ç¥èŠããããªã¢ãªãºã ã«å€§ããªåœ±é¿ãäžããŸãã
WebXRã«ããã空éãªãŒãã£ãªã®å®è£
WebXRã¢ããªã±ãŒã·ã§ã³ã«ç©ºéãªãŒãã£ãªãçµ±åããã«ã¯ãå©çšå¯èœãªããŒã«ãšãã¹ããã©ã¯ãã£ã¹ãçè§£ããå¿ èŠããããŸããäž»ãªæ¹æ³ã«ã¯ãWeb Audio APIãšå°çšã®XRãã¬ãŒã ã¯ãŒã¯ã®æŽ»çšãå«ãŸããŸãã
Web Audio APIã®äœ¿çš
Web Audio APIã¯ãWebãã©ãŠã¶ã§ã®ãªãŒãã£ãªæäœã®åºç€ãšãªããã¯ãããžãŒã§ãã空éãªãŒãã£ãªã®å Žåãäž»èŠãªã³ã³ããŒãã³ãã¯æ¬¡ã®ãšããã§ãã
- AudioContextïŒãªãŒãã£ãªæäœã管çããããã®ãšã³ããªãã€ã³ãã
- AudioNodesïŒãªãŒãã£ãªåŠçã®ãã«ãã£ã³ã°ãããã¯ã空éåã«æãé¢é£æ§ã®é«ãã®ã¯æ¬¡ã®ãšããã§ãã
- AudioBufferSourceNodeïŒãªãŒãã£ãªãã¡ã€ã«ã®åççšã
- GainNodeïŒé³éïŒæžè¡°ïŒã®å¶åŸ¡çšã
- PannerNodeïŒ3D空éåã®ã³ã¢ããŒããå ¥åä¿¡å·ãåãåãããªã¹ããŒã®åãã«å¯ŸããŠçžå¯Ÿçãª3D空éã«é 眮ããŸããããŸããŸãªãã³ãã³ã°ã¢ãã«ïŒç䟡é»åãHRTFïŒãšæžè¡°ã¢ãã«ããµããŒãããŸãã
- ConvolverNodeïŒæ®é¿ããã®ä»ã®ç©ºé广ãã·ãã¥ã¬ãŒãããããã«ã€ã³ãã«ã¹å¿çïŒIRïŒãé©çšããããã«äœ¿çšãããŸãã
äŸïŒæŠå¿µïŒïŒ
AudioContextãäœæããŸãã- ãªãŒãã£ãªãããã¡ïŒäŸïŒå¹æé³ïŒãããŒãããŸãã
- ãããã¡ãã
AudioBufferSourceNodeãäœæããŸãã PannerNodeãäœæããŸããAudioBufferSourceNodeãPannerNodeã«æ¥ç¶ããŸããPannerNodeãAudioContext.destinationïŒã¹ããŒã«ãŒ/ããããã©ã³ïŒã«æ¥ç¶ããŸãã- WebXR APIããååŸãããªã¹ããŒã®ã«ã¡ã©/ãããã»ããã®ããŒãºã«å¯ŸããŠçžå¯Ÿçã«
PannerNodeã3D空éã«é 眮ããŸãã - æžè¡°ãå¶åŸ¡ããããã«
PannerNodeã®ããããã£ïŒäŸïŒdistanceModelãrefDistanceãmaxDistanceãrolloffFactorïŒã調æŽããŸãã
éèŠäºé
ïŒ3D空éã§ã®ãªã¹ããŒã®äœçœ®ãšåãã¯ãéåžžãWebXR APIïŒäŸïŒ`navigator.xr.requestSession`ïŒã«ãã£ãŠç®¡çãããŸããPannerNodeã®äžçè¡åã¯ãXRãªã°ã®ããŒãºãšåæããŠæŽæ°ãããå¿
èŠããããŸãã
XRãã¬ãŒã ã¯ãŒã¯ãšã©ã€ãã©ãªã®æŽ»çš
Web Audio APIã¯åŒ·åã§ãããè€éãª3DãªãŒãã£ãªã®ç®¡çã¯è€éã«ãªãå¯èœæ§ããããŸããå€ãã®WebXRãã¬ãŒã ã¯ãŒã¯ãšã©ã€ãã©ãªã¯ããããã®è€éããæœè±¡åããŠããŸãã
- A-FrameïŒVRäœéšãæ§ç¯ããããã®äœ¿ããããWebãã¬ãŒã ã¯ãŒã¯ã空éãªãŒãã£ãªçšã®ã³ã³ããŒãã³ããæäŸããå€ãã®å Žåãå éšã§Web Audio APIãŸãã¯ä»ã®ã©ã€ãã©ãªãšçµ±åããŠããŸããéçºè ã¯ãA-Frameã·ãŒã³ã®ãšã³ãã£ãã£ã«ç©ºéãªãŒãã£ãªã³ã³ããŒãã³ããã¢ã¿ããã§ããŸãã
- Babylon.jsïŒWebçšã®å ç¢ãª3Dãšã³ãžã³ã§ããBabylon.jsã¯ã空éãµãŠã³ããµããŒããå«ãå æ¬çãªãªãŒãã£ãªæ©èœãæäŸããŸããWeb Audio APIãšçµ±åãã3Dã·ãŒã³å ã®ãªãŒãã£ãªãœãŒã¹ã®é çœ®ãæžè¡°ãããã³ãšãã§ã¯ãã®é©çšããŒã«ãæäŸããŸãã
- Three.jsïŒäž»ã«ã°ã©ãã£ãã¯ã¹ã©ã€ãã©ãªã§ãããThree.jsã¯ãªãŒãã£ãªæ©èœã®ããã«Web Audio APIãšçµ±åã§ããŸããéçºè ã¯ãThree.jsã®äžã«ç¬èªã®ç©ºéãªãŒãã£ãªãããŒãžã£ãŒãæ§ç¯ããããšããããããŸãã
- ãµãŒãããŒãã£è£œãªãŒãã£ãªããã«ãŠã§ã¢ïŒãããã§ãã·ã§ãã«ã°ã¬ãŒãã®ãªãŒãã£ãªäœéšã®ããã«ãWebXRãµããŒããæäŸããå°çšãªãŒãã£ãªãšã³ãžã³ãŸãã¯ããã«ãŠã§ã¢ã®çµ±åãæ€èšããŠãã ãããFMODãWwiseã®ãããªãœãªã¥ãŒã·ã§ã³ã¯ãåŸæ¥ãã¹ã¯ããã/ã³ã³ãœãŒã«åãã§ãããWebããã³XRæ©èœãæ¡åŒµããŠãããåçãªãŒãã£ãªããã·ã³ã°ãè€éãªæžè¡°æ²ç·ãæŽç·Žãããç°å¢å¹æã®ããã®é«åºŠãªæ©èœãæäŸããŠããŸãã
å®è·µçãªäŸãšã°ããŒãã«ãªèæ ®äºé
ããŸããŸãªWebXRã·ããªãªã§ç©ºéãªãŒãã£ãªãã©ã®ããã«é©çšã§ããããã°ããŒãã«ãªãŒãã£ãšã³ã¹ã念é ã«çœ®ããŠæ¢ã£ãŠã¿ãŸãããã
1. ããŒãã£ã«ããŒãªãºã ãšæåéºç£
- ã·ããªãªïŒäº¬éœã®å€ä»£å¯ºé¢ã®ããŒãã£ã«ãã¢ãŒã
- 空éãªãŒãã£ãªã¢ããªã±ãŒã·ã§ã³ïŒãã€ããŒã©ã«ãªãŒãã£ãªã䜿çšããŠã寺é¢ã®æ·å°ã®ç°å¢é³ïŒç«¹ã®èãããå§äŸ¶ã®é ãèªçµãæ°Žã®ç©ãããªããããïŒãåçŸããŸãããããã®é³ããªã¢ã«ã«æžè¡°ãããŠãå±å€ç°å¢ãšå¯ºé¢å ã®é³é¿ãåæ ãããŸããã°ããŒãã«ãªãŒãã£ãšã³ã¹ã«ãšã£ãŠããããã®æ¬ç©ã®ãµãŠã³ãã¹ã±ãŒãã¯ãããžã¥ã¢ã«ã ãããããŠãŒã¶ãŒã广çã«èŒžéããå°ççãªå Žæã«é¢ä¿ãªãååšæã®æèŠãåŒã³èµ·ããããšãã§ããŸãã
- ã°ããŒãã«ãªèæ ®äºé ïŒã¹ãã¬ãªã¿ã€ãã«é ŒããããµãŠã³ãã¹ã±ãŒããæåãšç°å¢ãæ£ç¢ºã«åæ ããŠããããšã確èªããŠãã ãããç¹å®ã®å Žæã®æ¬æ Œçãªé²é³ã調æ»ããŠãã ããã
2. å調çãªä»®æ³ã¯ãŒã¯ã¹ããŒã¹
- ã·ããªãªïŒä»®æ³äŒè°å®€ã§ååããå€åœç±ããŒã ã
- 空éãªãŒãã£ãªã¢ããªã±ãŒã·ã§ã³ïŒåå è ã話ããšãã¢ãã¿ãŒã«å¯Ÿãã声ã®äœçœ®ãæ£ç¢ºã«é 眮ãããå¿ èŠããããŸããHRTFããŒã¹ã®ãªãŒãã£ãªã䜿çšãããšããŠãŒã¶ãŒã¯èª°ãã©ããã話ããŠããã®ããç¥ãããšãã§ããŸããæžè¡°ãå®è£ ããŠãè¿ãã®ã¢ãã¿ãŒã®å£°ã®ã¿ãã¯ãªã¢ã«ãªããé ãã®ãã®ã¯éãã«ãªãããã«ããŸããããã¯ãèšèªçèæ¯ã倧ããç°ãªããéèšèªçãªæããããšç©ºéçãªååšã«å€§ããäŸåããã°ããŒãã«ããŒã ã«ãšã£ãŠäžå¯æ¬ ã§ãã
- ã°ããŒãã«ãªèæ ®äºé ïŒæœåšçãªãããã¯ãŒã¯é å»¶ãèæ ®ããŠãã ãããã¢ãã¿ãŒã®ç§»åãšåæããŠè¿ éã«æŽæ°ãããªãå Žåãé 眮ããããªãŒãã£ãªã¯ããã¡ãªãæããããããšããããŸãããŸããããŸããŸãªèŽèŠæåæ§ã奜ã¿ã®ãŠãŒã¶ãŒãèæ ®ããŠãã ããã
3. æ²¡å ¥åãã¬ãŒãã³ã°ã·ãã¥ã¬ãŒã·ã§ã³
- ã·ããªãªïŒå»ºèšçŸå Žã§ã®éæ©æäœã®å®å šãã¬ãŒãã³ã°ã·ãã¥ã¬ãŒã·ã§ã³ã
- 空éãªãŒãã£ãªã¢ããªã±ãŒã·ã§ã³ïŒãšã³ãžã³ã®èœé³ã¯æ¹åæ§ããããæ©æ¢°ãé¢ããã«ã€ããŠæžå°ããå¿ èŠããããŸããèŠåãµã€ã¬ã³ã¯ãå±éºã瀺ãäœçœ®ã§ãæç¢ºã§ç·æ¥ã§ããå¿ èŠããããŸããå·¥å ·ã®ããã¿é³ãšåšå²ã®çŸå Žã®ãã€ãºã¯ãä¿¡ããããèæ¯ãäœæããå¿ èŠããããŸãããªã¢ã«ãªæžè¡°ãšé®èœïŒäŸïŒå»ºç©ã«ãã£ãŠãã³ããã©ãã¯ã®é³ããããïŒã¯ãçèã®èšæ¶ãšç¶æ³èªèãæ§ç¯ããããã«äžå¯æ¬ ã§ãã
- ã°ããŒãã«ãªèæ ®äºé ïŒãªãŒãã£ãªãã¥ãŒãæ®éçã«çè§£ãããããã«ããŸããèŠåé³ã¯æç¢ºã§ã該åœããå Žåã¯åœéæšæºã«æºæ ããå¿ èŠããããŸãããªãŒãã£ãªç°å¢ã®è€éãã¯ãããŸããŸãªã¬ãã«ã®ãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«åãããŠèª¿æŽå¯èœã§ããå¿ èŠããããŸãã
4. ã€ã³ã¿ã©ã¯ãã£ãã¹ããŒãªãŒããªã³ã°ãšã²ãŒã
- ã·ããªãªïŒå¹œé屿·ã«èšå®ããããã¹ããªãŒã²ãŒã ã
- 空éãªãŒãã£ãªã¢ããªã±ãŒã·ã§ã³ïŒäžã®éã®åºæ¿ããããé³ãéãããã¢ã®åŸãããã®ãããããé ãã®é¢šã®ããªã声ãªã©ããããã®èŠçŽ ã¯ç·åŒµæãæ§ç¯ãããã¬ã€ã€ãŒãèªå°ããããã«äžå¯æ¬ ã§ããæ£ç¢ºãª3Dããžã·ã§ãã³ã°ãšåŸ®åŠãªæžè¡°ã®å€åã¯ãäžå®æãçã¿åºããæ¢æ±ã奚å±ããããšãã§ããŸãã
- ã°ããŒãã«ãªèæ ®äºé ïŒãã©ãŒã®æ¯å©ã¯æ®éçã§ããå¯èœæ§ããããŸããããªãŒãã£ãªãã¶ã€ã³ãæåçã«ç¹å®ã®ææããã°ããŒãã«ãªãŒãã£ãšã³ã¹ã«å ±é³ŽããªãããŸãã¯èª€è§£ãããå¯èœæ§ã®ããåç §ã«äŸåããªãããã«ããŸããçªç¶ã®é³ãæ²é»ãé ãã®é³ãªã©ã®æ®éçãªæèŠããªã¬ãŒã«çŠç¹ãåœãŠãŸãã
WebXR空éãªãŒãã£ãªéçºã®ããã®ãã¹ããã©ã¯ãã£ã¹
广çãªç©ºéãªãŒãã£ãªãäœæããã«ã¯ãæè¡çãªå®è£ 以äžã®ãã®ãå¿ èŠã§ããããã«ããã€ãã®ãã¹ããã©ã¯ãã£ã¹ããããŸãã
- åºæ¬ããå§ããïŒè€éãªãšãã§ã¯ãã远å ããåã«ãåºæ¬çãª3Dããžã·ã§ãã³ã°ãšæžè¡°ã¢ãã«ãæ£ããæ©èœããŠããããšã確èªããŠãã ããã
- 倿§ãªããŒããŠã§ã¢ã§ãã¹ãããïŒç©ºéãªãŒãã£ãªã¯ãããŸããŸãªããããã©ã³ãã¹ããŒã«ãŒã§ç°ãªã£ãŠèãããããšããããŸããããŸããŸãªããã€ã¹ã§ã¢ããªã±ãŒã·ã§ã³ããã¹ãããã°ããŒãã«ãªãŒãã£ãšã³ã¹ãã³ã³ãã³ãã«ã©ã®ããã«ã¢ã¯ã»ã¹ããããèæ ®ããŠãã ããã
- æçããåªå ããïŒè€éãªãµãŠã³ãã¹ã±ãŒãã§ããéèŠãªãªãŒãã£ãªãã¥ãŒã¯æç¢ºã§ããå¿ èŠããããŸããæžè¡°ãšããã·ã³ã°ã䜿çšããŠãéèŠãªé³ãç®ç«ã€ããã«ããŸãã
- ããããã©ã³ã§æåã«èšèšããïŒãã€ããŒã©ã«ã¬ã³ããªã³ã°ã®å Žåãããããã©ã³ã¯äžå¯æ¬ ã§ããæãæ²¡å ¥åã®äœéšã®ããã«ããŠãŒã¶ãŒãççšããããšãæ³å®ããŠãã ããã
- ããã©ãŒãã³ã¹ãæé©åããïŒè€éãªãªãŒãã£ãªåŠçã¯ããã©ãŒãã³ã¹ã«åœ±é¿ãäžããå¯èœæ§ããããŸãããªãŒãã£ãªãšã³ãžã³ããããã¡ã€ã«ããå¿ èŠã«å¿ããŠæé©åããŸãã
- ãŠãŒã¶ãŒã³ã³ãããŒã«ãæäŸããïŒãŠãŒã¶ãŒã«é³éã調æŽãããå Žåã«ãã£ãŠã¯ãªãŒãã£ãªèšå®ãã«ã¹ã¿ãã€ãºãããŸãïŒäŸïŒæ®é¿ãåãæ¿ããããªãã·ã§ã³ãããã°HRTFãéžæããïŒãããã¯ãããŸããŸãªå¥œã¿ãšã¢ã¯ã»ã·ããªãã£ããŒãºãæã€ã°ããŒãã«ãŠãŒã¶ãŒã«ãšã£ãŠç¹ã«éèŠã§ãã
- å®éã®ãŠãŒã¶ãŒãšå埩ããŠãã¹ãããïŒå€æ§ãªãŠãŒã¶ãŒã°ã«ãŒãããã®ãã£ãŒãããã¯ãåŸãŠã空éãªãŒãã£ãªã®ç¥èŠæ¹æ³ãçè§£ããŸãã1人ã«ãšã£ãŠçŽæçã§ããé³ããå¥ã®äººã«ãšã£ãŠã¯ããã§ã¯ãªããããããŸããã
- ã¢ã¯ã»ã·ããªãã£ãèæ ®ããïŒèŽèŠé害ã®ãããŠãŒã¶ãŒã«ã¯ãéèŠãªãªãŒãã£ãªæ å ±ã«å ããŠèŠèŠçãªæããããæäŸããŸãã
- æåçãªæèã«æ³šæããïŒé³ã¯æ®éçã§ããå¯èœæ§ããããŸããããã®è§£éã¯æåã«ãã£ãŠåœ±é¿ãåããå¯èœæ§ããããŸãããµãŠã³ããã¶ã€ã³ãæå³ãããã¡ãã»ãŒãžãšäžèŽãã誀ã£ãŠäžå¿«æãæ··ä¹±ãåŒãèµ·ãããªãããã«ããŸãã
WebXRã«ããã空éãªãŒãã£ãªã®æªæ¥
WebXRã«ããã空éãªãŒãã£ãªã®åéã¯ç¶ç¶çã«é²æ©ããŠããŸããç§ãã¡ã¯ä»¥äžãæåŸ ã§ããŸãã
- ããé«åºŠãªHRTFïŒAIãšã¹ãã£ã³æè¡ã®é²æ©ã«ãããããããŒãœãã©ã€ãºãããæ£ç¢ºãªHRTFå®è£ ã«ã€ãªããå¯èœæ§ããããŸãã
- AIé§åã®ãªãŒãã£ãªçæãšããã·ã³ã°ïŒAIã¯ãã·ãŒã³ã®ã³ã³ããã¹ããšãŠãŒã¶ãŒã®è¡åã«åºã¥ããŠã空éãªãŒãã£ãªãåçã«çæããã³ããã¯ã¹ã§ããŸãã
- ãªã¢ã«ã¿ã€ã é³é¿ã·ãã¥ã¬ãŒã·ã§ã³ïŒè€éã§å€åããç°å¢ãäŒæããé³ã®åçãªã·ãã¥ã¬ãŒã·ã§ã³ã
- è§ŠèŠãã£ãŒãããã¯ãšã®çµ±åïŒé³ãšè§ŠèŠã飿ºããããã倿èŠçãªã¢ãããŒãã
- æšæºåïŒããŸããŸãªãã©ãããã©ãŒã ããã©ãŠã¶å šäœã§ã®ç©ºéãªãŒãã£ãªãã©ãŒããããšAPIã®æšæºåã
çµè«
WebXR空éãªãŒãã£ãªã¯ã3DãªãŒãã£ãªããžã·ã§ãã³ã°ãšæžè¡°ã®ãã¹ã¿ãŒãéããŠãçã«é åçã§èª¬åŸåã®ããæ²¡å ¥åäœéšãåµé ããããã®èŽ æ²¢ã§ã¯ãªããå¿ èŠäžå¯æ¬ ãªãã®ã«ãªããŸãããçŸå®äžçã§ç§ãã¡ãé³ãç¥èŠããæ¹æ³ã®ååãçè§£ããããããWebXRç°å¢å ã§å¹æçã«é©çšããããšã«ãããéçºè ã¯äžçäžã®ãŠãŒã¶ãŒã茞éããããæ·±ããšã³ã²ãŒãžã¡ã³ããè²ã¿ãæ°ããã¬ãã«ã®ãªã¢ãªãºã ãè§£ãæŸã€ããšãã§ããŸãã
WebXRãšã³ã·ã¹ãã ãæçãç¶ããã«ã€ããŠã空éãªãŒãã£ãªã®éèŠæ§ã¯å¢ãã°ããã§ãããããã®ãã¯ããã¯ã®ç¿åŸã«æè³ããéçºè ã¯ã次äžä»£ã®æ²¡å ¥åã³ã³ãã³ããæäŸããæåç·ã«ç«ã¡ãä»®æ³ããã³æ¡åŒµäžçãç§ãã¡èªèº«ã®äžçãšåãããããªã¢ã«ã§å ±é³Žãããã®ã«ããã§ãããã
仿¥ãã空éãªãŒãã£ãªã®å®éšãå§ããŸããããäžçäžã©ãã«ããŠããããªãã®ãŠãŒã¶ãŒã¯æè¬ããã§ãããã