WebXRããŒã«ãŒã¬ã¹ãã©ããã³ã°ãæ¢æ±ãç°å¢ããŒã¹ã®ããžã·ã§ãã³ã°ãSLAMã平颿€åºãæ·±ãæãäžããäžçäžã®ãŠãŒã¶ãŒã«åããæ²¡å ¥åARäœéšã®æ§ç¯æ¹æ³ã解説ããŸãã
çŸå®ãè§£ãæŸã€ïŒWebXRããŒã«ãŒã¬ã¹ãã©ããã³ã°éçºè ã¬ã€ã
é·å¹Žã«ããããæ¡åŒµçŸå®ïŒARïŒã®å¯èœæ§ã¯ç©ççãªã·ã³ãã«ã«çžãããŠããŸãããæ°ããè»ã®3Dã¢ãã«ãèŠãã«ã¯ããŸãQRã³ãŒããå°å·ããå¿ èŠããããŸãããã·ãªã¢ã«ã®ç®±ãããã£ã©ã¯ã¿ãŒãé£ã³åºãããã«ã¯ããã®ç®±èªäœãå¿ èŠã§ãããããã¯ããŒã«ãŒããŒã¹ARã®æä»£ã§ãããå·§åŠã§åºç€çãªæè¡ã§ããããããã«ã¯å åšçãªå¶éã䌎ããŸãããç¹å®ã®æ¢ç¥ã®èŠèŠã¿ãŒã²ãããå¿ èŠãšããARã®éæ³ãå°ããããããããå®çŸ©ããã空éã«éã蟌ããŠããã®ã§ãã仿¥ããã®ãã©ãã€ã ã¯ãã¯ããã«åŒ·åã§çŽæçãªæè¡ã«ãã£ãŠæã¡ç ŽãããŸããããããããŒã«ãŒã¬ã¹ãã©ããã³ã°ã§ãã
ããŒã«ãŒã¬ã¹ãã©ããã³ã°ãç¹ã«ç°å¢ããŒã¹ã®äœçœ®ãã©ããã³ã°ã¯ãçŸä»£ã®é åçãªæ¡åŒµçŸå®ãé§åãããšã³ãžã³ã§ããããã¯ããžã¿ã«ã³ã³ãã³ããå°å·ãããåè§åœ¢ããè§£ãæŸã¡ãåäŸã®ãªãèªç±ãã§ç§ãã¡ã®äžçã«ååšãããããšãå¯èœã«ããŸããããã¯ãçŸå®ã®ãªãã³ã°ã«ãŒã ã«ä»®æ³ã®ãœãã¡ã眮ããããæ··éãã空枯ã§ããžã¿ã«ã®ã¬ã€ãã远ã£ãããåºå€§ãªå ¬åã§å¹»æ³çãªçãç©ãèµ°ãåãã®ãèŠããããããšãå¯èœã«ããæè¡ã§ããWebXR Device APIãéããŠãŠã§ãã®æ¯é¡ãªãã¢ã¯ã»ã·ããªãã£ãšçµã¿åãããããšã§ãã¢ããªã¹ãã¢ããã®ããŠã³ããŒããšããæ©æŠãªãã«ãæ²¡å ¥åã®äœéšãäžçäžã®ãªãŒãã£ãšã³ã¹ã«å³åº§ã«æäŸããããã®åŒ·åãªæ¹çšåŒãçã¿åºããŸãã
ãã®å æ¬çãªã¬ã€ãã¯ãWebXRã«ãããç°å¢ããŒã¹ãã©ããã³ã°ã®ä»çµã¿ãèœåããããŠå®è·µçãªå¿çšãçè§£ãããéçºè ããããã¯ããããŒãžã£ãŒããããŠãã¯ãããžãŒæå¥œå®¶ã®ããã®ãã®ã§ããç§ãã¡ã¯ã³ã¢æè¡ãåè§£ããäž»èŠãªæ©èœãæ¢æ±ããéçºã®çŸç¶ãæŠèгãããããŠç©ºéèªèãŠã§ãã®æªæ¥ãèŠæ®ããŸãã
ç°å¢ããŒã¹ã®äœçœ®ãã©ããã³ã°ãšã¯ïŒ
ãã®æ žå¿ã«ãããŠãç°å¢ããŒã¹ã®äœçœ®ãã©ããã³ã°ãšã¯ãããã€ã¹ïŒéåžžã¯ã¹ããŒããã©ã³ãå°çšã®ARãããã»ããïŒããæèŒãããã»ã³ãµãŒã®ã¿ã䜿çšããŠãç©ç空éå ã§ã®èªèº«ã®äœçœ®ãšåãããªã¢ã«ã¿ã€ã ã§çè§£ããèœåã®ããšã§ããããã¯ç¶ç¶çã«2ã€ã®åºæ¬çãªåãã«çããŸãããç§ã¯ã©ãã«ããã®ãïŒããããŠãç§ã¯ã©ã¡ããåããŠããã®ãïŒããã®éæ³ã¯ãç°å¢ã«é¢ããäºåã®ç¥èãç¹å¥ãªããŒã«ãŒãå¿ èŠãšããã«ãããéæããæ¹æ³ã«ãããŸãã
ãã®ããã»ã¹ã¯ãã³ã³ãã¥ãŒã¿ãŒããžã§ã³ãšã»ã³ãµãŒããŒã¿åæã®æŽç·Žãããåéã«äŸåããŠããŸããããã€ã¹ã¯å¹æçã«åšå²ã®ç°å¢ã®äžæçã§åçãªããããæ§ç¯ãããã®ãããå ã§ã®èªèº«ã®åãã远跡ããŸããããã¯ãéšå±ã¹ã±ãŒã«ã®ARã«ã¯äžæ£ç¢ºãããGPSããå¶çŽãå€ãããããŒã«ãŒããŒã¹ARãšã¯å šãç°ãªããã®ã§ãã
èå°è£ã®éæ³ïŒã³ã¢æè¡
ã¯ãŒã«ããã©ããã³ã°ãšããé©ç°çãªåæ¥ã¯ãäž»ã«SLAMïŒSimultaneous Localization and MappingïŒèªå·±äœçœ®æšå®ãšç°å¢å°å³äœæã®åæå®è¡ïŒãšããŠç¥ãããããã»ã¹ãéããŠéæãããä»ã®æèŒã»ã³ãµãŒããã®ããŒã¿ã«ãã£ãŠåŒ·åãããŸãã
SLAMïŒARã®ç®
SLAMã¯ããŒã«ãŒã¬ã¹ãã©ããã³ã°ã®ã¢ã«ãŽãªãºã çãªå¿èéšã§ããããã¯ãããã€ã¹ãæªç¥ã®ç°å¢ã®ããããæ§ç¯ãããšåæã«ããã®ãããå ã§ã®èªèº«ã®äœçœ®ã远跡ãç¶ããªããã°ãªããªããšããèšç®äžã®åé¡ã§ããããã¯åšæçãªããã»ã¹ã§ãã
- ãããã³ã°ïŒMappingïŒïŒããã€ã¹ã®ã«ã¡ã©ãäžçã®ãããªãã¬ãŒã ããã£ããã£ããŸããã¢ã«ãŽãªãºã ã¯ãããã®ãã¬ãŒã ãåæãããç¹åŸŽç¹ããšåŒã°ãããŠããŒã¯ã§å®å®ããé¢å¿ç¹ãèå¥ããŸãããããã¯ããŒãã«ã®è§ãã©ã°ã®ç¬ç¹ãªè³ªæããããã¯é¡çžã®ç«¯ãªã©ã§ãããããã®ç¹ã®éåãããç¹çŸ€ããšãåŒã°ããç°å¢ã®çãª3Dãããã圢æããŸãã
- èªå·±äœçœ®æšå®ïŒLocalizationïŒïŒããã€ã¹ãåããšãã¢ã«ãŽãªãºã ã¯ãããã®ç¹åŸŽç¹ãã«ã¡ã©ã®ãã¥ãŒå ã§ã©ã®ããã«å€åãããã远跡ããŸãããã¬ãŒã éã®ãã®ãªããã£ã«ã«ãããŒãèšç®ããããšã§ãããã€ã¹ã®åãïŒåé²ã暪移åãå転ãªã©ïŒãæ£ç¢ºã«æšæž¬ã§ããŸããããã¯èªèº«ãäœæããã°ããã®ãããã«å¯ŸããŠèªå·±äœçœ®ãæšå®ããŸãã
- åæã«ãŒãïŒSimultaneous LoopïŒïŒéèŠãªã®ã¯ãäž¡æ¹ã®ããã»ã¹ãåæã«ãã€ç¶ç¶çã«è¡ãããããšã§ããããã€ã¹ãéšå±ã®ããå€ãã®éšåãæ¢çŽ¢ããã«ã€ããŠããããã«æ°ããç¹åŸŽç¹ã远å ããããããããå ç¢ã«ããŸããããå ç¢ãªãããã¯ãããæ£ç¢ºã§å®å®ããèªå·±äœçœ®æšå®ãå¯èœã«ããŸãããã®çµ¶ãéãªãæ¹è¯ãããã©ããã³ã°ãå®å®ãããã®ã§ãã
ã»ã³ãµãŒãã¥ãŒãžã§ã³ïŒèŠãããå®å®åè£ çœ®
ã«ã¡ã©ãšSLAMãäžçãžã®èŠèŠçãªã¢ã³ã«ãŒãæäŸããäžæ¹ã§ããããã«ã¯éçããããŸããã«ã¡ã©ã¯æ¯èŒçäœãåšæ³¢æ°ïŒäŸïŒæ¯ç§30ã60åïŒã§ãã¬ãŒã ããã£ããã£ããæãå ŽæãéãåãïŒã¢ãŒã·ã§ã³ãã©ãŒïŒã§ã¯èŠåŽããããšããããŸããããã§æ £æ§èšæž¬ãŠãããïŒIMUïŒãç»å ŽããŸãã
IMUã¯ãå é床èšãšãžã£ã€ãã¹ã³ãŒããå«ããããã§ããããã¯éåžžã«é«ãåšæ³¢æ°ïŒæ¯ç§æ°çŸãŸãã¯æ°ååïŒã§å é床ãšè§éåºŠãæž¬å®ããŸãããã®ããŒã¿ã¯ãããã€ã¹ã®åãã«é¢ããæ å ±ã®çµ¶ãéãªãæµããæäŸããŸããããããIMUã¯ãããªããããããããšããæ§è³ªããããŸããããã¯æéãšãšãã«èç©ããå°ããªèª€å·®ã§ãèšç®ãããäœçœ®ãäžæ£ç¢ºã«ãªãåå ãšãªããŸãã
ã»ã³ãµãŒãã¥ãŒãžã§ã³ã¯ãé«åšæ³¢ã ãããªããããããIMUããŒã¿ãšãäœåšæ³¢ã ãèŠèŠçã«æ¥å°ãããã«ã¡ã©/SLAMããŒã¿ãç¥çã«çµã¿åãããããã»ã¹ã§ããIMUãã«ã¡ã©ãã¬ãŒã éã®ã®ã£ãããåããŠæ»ãããªåããå®çŸããSLAMããŒã¿ã宿çã«IMUã®ããªãããè£æ£ããçŸå®äžçã«åã¢ã³ã«ãŒããŸãããã®åŒ·åãªçµã¿åããããä¿¡ææ§ã®ããARäœéšã«å¿ èŠãªãå®å®ããäœé å»¶ã®ãã©ããã³ã°ãå¯èœã«ããã®ã§ãã
ããŒã«ãŒã¬ã¹WebXRã®äž»èŠãªæ©èœ
SLAMãšã»ã³ãµãŒãã¥ãŒãžã§ã³ã®åºç€æè¡ã¯ãéçºè ãWebXR APIãšãã®ãµããŒããã¬ãŒã ã¯ãŒã¯ãéããŠæŽ»çšã§ããäžé£ã®åŒ·åãªæ©èœã®ããã¯ãè§£é€ããŸãããããã¯çŸä»£ã®ARã€ã³ã¿ã©ã¯ã·ã§ã³ã®æ§æèŠçŽ ã§ãã
1. 6èªç±åºŠïŒ6DoFïŒãã©ããã³ã°
ããã¯ééããªããå€ãæè¡ããã®æãéèŠãªé£èºã§ãã6DoFãã©ããã³ã°ã¯ããŠãŒã¶ãŒãç©ççã«ç©ºéå ãç§»åãããã®åããããžã¿ã«ã·ãŒã³ã«åæ ãããããšãå¯èœã«ãããã®ã§ããããã¯ä»¥äžãå«ã¿ãŸãã
- 3DoFïŒå転ãã©ããã³ã°ïŒïŒããã¯åãã远跡ããŸããåºå®ãããç¹ããäžäžå·Šå³ãåšå²ãèŠæž¡ãããšãã§ããŸããããã¯360床ãããªãã¥ãŒã¢ã§äžè¬çã§ãã3ã€ã®èªç±åºŠã¯ãããïŒããªããïŒããšãŒïŒéŠãæšªã«æ¯ãïŒãããŒã«ïŒé ãå·Šå³ã«åŸããïŒã§ãã
- +3DoFïŒäœçœ®ãã©ããã³ã°ïŒïŒãããçã®ARãå¯èœã«ãã远å èŠçŽ ã§ãã空éå ã®äžŠé²ã远跡ããŸããååŸã«æ©ããããå·Šå³ã«ç§»åããããããããã ãç«ã¡äžãã£ããã§ããŸãã
6DoFã«ããããŠãŒã¶ãŒã¯ä»®æ³ã®è»ã®åšããæ©ããŠããããè§åºŠãã調ã¹ãããä»®æ³ã®åœ«å»ã«è¿ã¥ããŠçްéšãèŠãããARã²ãŒã ã§ç©ççã«çºå°ç©ãé¿ãããããããšãã§ããŸããããã¯ãŠãŒã¶ãŒãååçãªèгå¯è ãããèåãããçŸå®å ã®èœåçãªåå è ãžãšå€ããŸãã
2. 平颿€åºïŒæ°Žå¹³ããã³åçŽïŒ
ä»®æ³ãªããžã§ã¯ããç§ãã¡ã®äžçã«å±ããŠãããšæããããããã«ã¯ããããããã®äžçã®è¡šé¢ãå°éããå¿ èŠããããŸãã平颿€åºã¯ãã·ã¹ãã ãç°å¢å ã®å¹³ããªé¢ãèå¥ã§ããããã«ããæ©èœã§ããWebXR APIã¯éåžžã以äžãæ€åºã§ããŸãã
- æ°Žå¹³é¢ïŒåºãããŒãã«ãã«ãŠã³ã¿ãŒããããªã©ãå¹³ãã§æ°Žå¹³ãªè¡šé¢ãããã¯ãå®¶å ·ããã£ã©ã¯ã¿ãŒãããŒã¿ã«ãªã©ãå°é¢ã«çœ®ãããã¹ããªããžã§ã¯ããé 眮ããããã«äžå¯æ¬ ã§ãã
- åçŽé¢ïŒå£ããã¢ãçªããã£ãããããªã©ãããã«ãããä»®æ³ã®çµµãæããããããžã¿ã«ã®ãã¬ããåãä»ãããããã£ã©ã¯ã¿ãŒãçŸå®äžçã®å£ãçªãç Žã£ãŠçŸããããããããªäœéšãå¯èœã«ãªããŸãã
åœéçãªEã³ããŒã¹ã®èгç¹ããèŠããšãããã¯ã²ãŒã ãã§ã³ãžã£ãŒã§ããã€ã³ãã®å°å£²æ¥è ã¯ããŠãŒã¶ãŒãèªåã®ã¢ããŒãã®åºã«æ°ããã©ã°ãã©ã®ããã«èŠããããèŠèŠåãããããšãã§ãããã©ã³ã¹ã®ç»å»ã¯ãã³ã¬ã¯ã¿ãŒã®å£ã«ããçµµç»ã®WebARãã¬ãã¥ãŒãæäŸã§ããŸããããã¯è³Œè²·æ±ºå®ãä¿é²ããã³ã³ããã¹ããšå®çšæ§ãæäŸããŸãã
3. ããããã¹ããšã¢ã³ã«ãŒ
ã·ã¹ãã ãäžçã®ãžãªã¡ããªãçè§£ãããããããšå¯Ÿè©±ããæ¹æ³ãå¿ èŠã§ããããã§ããããã¹ããšã¢ã³ã«ãŒãç»å ŽããŸãã
- ããããã¹ãïŒããã¯ããŠãŒã¶ãŒã3Däžçã®ã©ããæããŠãããããŸãã¯ã¿ããããŠããããæ±ºå®ããããã®ã¡ã«ããºã ã§ããäžè¬çãªå®è£ ã§ã¯ãç»é¢ã®äžå€®ïŒãŸãã¯ç»é¢äžã®ãŠãŒã¶ãŒã®æïŒããã·ãŒã³ã«èŠããªãã¬ã€ïŒå ç·ïŒããã£ã¹ãããŸãããã®ã¬ã€ãæ€åºãããå¹³é¢ãŸãã¯ç¹åŸŽç¹ãšäº€å·®ãããšãã·ã¹ãã ã¯ãã®äº€å·®ç¹ã®3D座æšãè¿ããŸããããã¯ãªããžã§ã¯ããé 眮ããããã®åºæ¬çãªã¢ã¯ã·ã§ã³ã§ãããŠãŒã¶ãŒãç»é¢ãã¿ããããããããã¹ããå®è¡ããããã®çµæã®äœçœ®ã«ãªããžã§ã¯ããé 眮ãããŸãã
- ã¢ã³ã«ãŒïŒã¢ã³ã«ãŒã¯ãã·ã¹ãã ãç©æ¥µçã«è¿œè·¡ããçŸå®äžçã®ç¹å®ã®ç¹ãšåãã§ããããããã¹ãã䜿çšããŠä»®æ³ãªããžã§ã¯ããé 眮ãããšãæé»çã«ãã®ãªããžã§ã¯ãã®ã¢ã³ã«ãŒãäœæããŠããããšã«ãªããŸããSLAMã·ã¹ãã ã®äž»ãªä»äºã¯ããã®ã¢ã³ã«ãŒãã²ããŠã¯ããªãã®ä»®æ³ãªããžã§ã¯ããããã®çŸå®äžçã®äœçœ®ã«åºå®ããç¶ããããšãä¿èšŒããããšã§ããããªããæ©ãå»ã£ãŠæ»ã£ãŠããŠããã·ã¹ãã ã®äžçãããã®çè§£ã«ããããªããžã§ã¯ãã¯ããªãã眮ããå Žæã«æ£ç¢ºã«ååšãç¶ããŸããã¢ã³ã«ãŒã¯ãæ°žç¶æ§ãšå®å®æ§ã®éèŠãªèŠçŽ ãæäŸããŸãã
4. å æšå®
ãªã¢ãªãºã ã«ãšã£ãŠåŸ®åŠã§ãããªããéåžžã«éèŠãªæ©èœãå æšå®ã§ããã·ã¹ãã ã¯ã«ã¡ã©ãã£ãŒããåæããŠããŠãŒã¶ãŒã®ç°å¢ã®åšå²å ã®ç¶æ ãæšå®ã§ããŸããããã«ã¯ä»¥äžãå«ãŸããŸãã
- 匷床ïŒéšå±ã¯ã©ããããæãããããŸãã¯æããã
- è²æž©åºŠïŒå ã¯æããïŒçœç±é»çã®ãããªïŒããæ¶ŒããïŒæã空ã®ãããªïŒãã
- æåæ§ïŒé«åºŠãªã·ã¹ãã ã®å ŽåïŒïŒã·ã¹ãã ã¯äž»èŠãªå æºã®æ¹åãããæšå®ãããªã¢ã«ãªåœ±ã®æåœ±ãå¯èœã«ããããšããããŸãã
ãã®æ å ±ã«ããã3Dã¬ã³ããªã³ã°ãšã³ãžã³ã¯ãçŸå®äžçã«äžèŽããæ¹æ³ã§ä»®æ³ãªããžã§ã¯ããç §ããããšãã§ããŸããä»®æ³ã®éå±çã¯éšå±ã®æãããšè²ãåå°ãããã®åœ±ã¯æšå®ãããå æºã«å¿ããŠæããããªã£ãã硬ããªã£ããããŸãããã®åçŽãªæ©èœã¯ãä»®æ³ãšçŸå®ãèåãããäžã§ä»ã®ã»ãšãã©ã®æ©èœããã倧ããªåœ¹å²ãæãããããžã¿ã«ãªããžã§ã¯ããå¹³åŠã§å Žéãã«èŠããäžè¬çãªãã¹ããã«ãŒå¹æããé²ããŸãã
ããŒã«ãŒã¬ã¹WebXRäœéšã®æ§ç¯ïŒå®è·µçæŠèŠ
çè«ãçè§£ããããšãšããããå®è£ ããããšã¯å¥ã§ãã幞ããªããšã«ãWebXRã®éçºè ãšã³ã·ã¹ãã ã¯æçããŠããå ç¢ã§ãããããå°éã¬ãã«ã«å¯Ÿå¿ããããŒã«ãæäŸããŠããŸãã
WebXR Device APIïŒåºç€
ããã¯ãææ°ã®ãŠã§ããã©ãŠã¶ïŒAndroidã®ChromeãiOSã®Safariãªã©ïŒã«å®è£ ãããŠããäœã¬ãã«ã®JavaScript APIã§ãããåºç€ãšãªãããã€ã¹ããŒããŠã§ã¢ããã³ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ïŒAndroidã®ARCoreãiOSã®ARKitïŒã®ARæ©èœãžã®åºæ¬çãªããã¯ãæäŸããŸããã»ãã·ã§ã³ç®¡çãå ¥åãåŠçãã平颿€åºãã¢ã³ã«ãŒãªã©ã®æ©èœãéçºè ã«å ¬éããŸãããã®APIãçŽæ¥äœ¿çšããŠæžãããšãã§ããŸãããã»ãšãã©ã®éçºè ã¯ãè€éãª3Dæ°åŠãšã¬ã³ããªã³ã°ã«ãŒããç°¡çŽ åããé«ã¬ãã«ã®ãã¬ãŒã ã¯ãŒã¯ãéžæããŸãã
人æ°ã®ãã¬ãŒã ã¯ãŒã¯ãšã©ã€ãã©ãª
ãããã®ããŒã«ã¯ãWebXR Device APIã®å®åçãªåŠçãæœè±¡åãã匷åãªã¬ã³ããªã³ã°ãšã³ãžã³ãšã³ã³ããŒãã³ãã¢ãã«ãæäŸããŸãã
- three.jsïŒãŠã§ãã§æã人æ°ã®ãã3Dã°ã©ãã£ãã¯ã¹ã©ã€ãã©ãªã§ããããèªäœã¯ARãã¬ãŒã ã¯ãŒã¯ã§ã¯ãããŸãããããã®`WebXRManager`ã¯WebXRæ©èœãžã®åªããçŽæ¥çãªã¢ã¯ã»ã¹ãæäŸããŸãã絶倧ãªãã¯ãŒãšæè»æ§ãæäŸãããããã¬ã³ããªã³ã°ãã€ãã©ã€ã³ãšã€ã³ã¿ã©ã¯ã·ã§ã³ã现ããå¶åŸ¡ããå¿ èŠãããéçºè ã«éžã°ããŠããŸããä»ã®å€ãã®ãã¬ãŒã ã¯ãŒã¯ã¯ãããåºç€ã«æ§ç¯ãããŠããŸãã
- A-FrameïŒthree.jsã®äžã«æ§ç¯ãããA-Frameã¯ã宣èšçãªãšã³ãã£ãã£ã»ã³ã³ããŒãã³ãã»ã·ã¹ãã ïŒECSïŒãã¬ãŒã ã¯ãŒã¯ã§ããã3Dããã³VR/ARã·ãŒã³ã®äœæãä¿¡ããããªãã»ã©ã¢ã¯ã»ã¹ããããããŸããåçŽãªHTMLã®ãããªã¿ã°ã§è€éãªã·ãŒã³ãå®çŸ©ã§ããŸããã©ããããããã¿ã€ãã³ã°ãæè²ç®çããããŠåŸæ¥ã®ãŠã§ãéçºã®ããã¯ã°ã©ãŠã³ããæã€éçºè ã«ãšã£ãŠåªããéžæè¢ã§ãã
- Babylon.jsïŒãŠã§ãåãã®åŒ·åã§å®å šãª3Dã²ãŒã ããã³ã¬ã³ããªã³ã°ãšã³ãžã³ã§ããè±å¯ãªæ©èœã»ããã匷åãªã°ããŒãã«ã³ãã¥ããã£ããããŠçŽ æŽãããWebXRãµããŒããèªããŸãããã®åªããããã©ãŒãã³ã¹ãšéçºè ã«åªããããŒã«ã§ç¥ãããŠãããè€éãªåçšããã³ãšã³ã¿ãŒãã©ã€ãºã¢ããªã±ãŒã·ã§ã³ã§äººæ°ã®éžæè¢ãšãªã£ãŠããŸãã
ã¯ãã¹ãã©ãããã©ãŒã 察å¿ã®ããã®åçšãã©ãããã©ãŒã
WebXRéçºã«ãããäž»èŠãªèª²é¡ã¯ãäžçäžã®ãã©ãŠã¶ãµããŒããšããã€ã¹æ©èœã®æçåã§ããåç±³ã®ãã€ãšã³ãiPhoneã§åäœãããã®ããæ±åã¢ãžã¢ã®ãããã¬ã³ãžAndroidããã€ã¹ã§ã¯åäœããªããããããŸãããåçšãã©ãããã©ãŒã ã¯ãç¬èªã®ãã©ãŠã¶ããŒã¹ã®SLAMãšã³ãžã³ãæäŸããããšã§ãã®åé¡ã解決ããŸããããã«ããããã€ãã£ãã®ARCoreãARKitãµããŒãããªãããã€ã¹ã§ããã¯ããã«åºç¯ãªããã€ã¹ã§åäœããŸãã
- 8th Wall (çŸNiantic)ïŒãã®åéã«ããã誰ããèªããããŒã±ãããªãŒããŒã§ãã8th Wallã®SLAMãšã³ãžã³ã¯ããã®å質ããããŠæãéèŠãªããšãšããŠããã®å€§èŠæš¡ãªããã€ã¹ãªãŒãã§æåã§ããWebAssemblyãä»ããŠãã©ãŠã¶å ã§ã³ã³ãã¥ãŒã¿ãŒããžã§ã³ãå®è¡ããããšã«ãããæ°ååå°ã®ã¹ããŒããã©ã³ã«ããã£ãŠäžè²«ããé«å質ã®ãã©ããã³ã°äœéšãæäŸããŸããããã¯ãæœåšçãªãªãŒãã£ãšã³ã¹ã®å€§éšåãæé€ããããã«ã¯ãããªãã°ããŒãã«ãã©ã³ãã«ãšã£ãŠäžå¯æ¬ ã§ãã
- ZapparïŒARåéã§é·å¹Žã®å®çžŸãæã€Zapparã¯ãç¬èªã®å ç¢ãªãã©ããã³ã°æè¡ãåãã匷åã§å€çšéãªãã©ãããã©ãŒã ãæäŸããŠããŸãã圌ãã®ZapWorksããŒã«ã¹ã€ãŒãã¯ãéçºè ããã¶ã€ããŒåãã«å æ¬çãªã¯ãªãšã€ãã£ãããã³ãããªãã·ã³ã°ãœãªã¥ãŒã·ã§ã³ãæäŸããåºç¯ãªããã€ã¹ãšãŠãŒã¹ã±ãŒã¹ãã¿ãŒã²ããã«ããŠããŸãã
ã°ããŒãã«ãªãŠãŒã¹ã±ãŒã¹ïŒå®è·µã«ãããããŒã«ãŒã¬ã¹ãã©ããã³ã°
ç°å¢ããŒã¹ã®WebARã®å¿çšã¯ããããå±ããããšã®ã§ããã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ãšåãããã倿§ã§ãã
Eã³ããŒã¹ãšå°å£²
ããã¯æãæçãããŠãŒã¹ã±ãŒã¹ã§ãããã©ãžã«ã®å®¶å ·å°å£²æ¥è ã顧客ã«ã¢ããŒãã«æ°ããã¢ãŒã ãã§ã¢ã眮ããæ§åãèŠããããšãããéåœã®ã¹ããŒã«ãŒãã©ã³ããç±ççãªãã¡ã³ã«ææ°ã®éå®åãèªåã®è¶³ã§ãã¬ãã¥ãŒãããããšãŸã§ããéšå±ã«è©Šã眮ããæ©èœã¯æšæºçãªæåŸ ã«ãªãã€ã€ãããŸããããã¯äžç¢ºå®æ§ãæžãããã³ã³ããŒãžã§ã³çãé«ããè¿åãæžãããŸãã
æè²ãšãã¬ãŒãã³ã°
ããŒã«ãŒã¬ã¹ARã¯ãèŠèŠåã®ããã®é©åœçãªããŒã«ã§ãããšãžããã®å€§åŠçã¯ãåç©ãå·ã€ããããšãªããæºã®äžã§ä»®æ³ã®ã«ãšã«ãè§£åã§ããŸãããã€ãã®èªåè»æŽå士ã¯ãæ¬ç©ã®è»ã®ãšã³ãžã³ã«çŽæ¥éããŠè¡šç€ºãããARã¬ã€ãã®æç€ºã«åŸãããšãã§ããæ£ç¢ºæ§ãåäžããããã¬ãŒãã³ã°æéãççž®ããŸããã³ã³ãã³ãã¯ç¹å®ã®æå®€ãç 究宀ã«çžããããã©ãããã§ãã¢ã¯ã»ã¹ã§ããŸãã
ããŒã±ãã£ã³ã°ãšãã©ã³ããšã³ã²ãŒãžã¡ã³ã
ãã©ã³ãã¯æ²¡å ¥åã®ã¹ããŒãªãŒããªã³ã°ã®ããã«WebARãæŽ»çšããŠããŸããäžççãªé£²æäŒç€Ÿã¯ããŠãŒã¶ãŒã®ãªãã³ã°ã«ãŒã ã«ã颚å€ãããªãã©ã³ãã®äžçãžãšç¶ãããŒã¿ã«ãäœæã§ããŸããåœéçãªæ ç»ã¹ã¿ãžãªã¯ããã¡ã³ãææ°ã®å€§ãããäœããé£ã³åºããç身倧ã®ã¢ãã¡ãã£ã©ã¯ã¿ãŒãšåçãæ®ãããšãå¯èœã«ããŸãããããã¯ãã¹ãŠãã¹ã¿ãŒã®QRã³ãŒããã¹ãã£ã³ããããšããå§ãŸããŸããã圌ãã®ç°å¢å ã§ããŒã«ãŒã¬ã¹ã«è¿œè·¡ãããŸãã
ããã²ãŒã·ã§ã³ãšãŠã§ã€ãã¡ã€ã³ãã£ã³ã°
åœé空枯ãåç©é€šãèŠæ¬åžã®ãããªå€§èŠæš¡ã§è€éãªæœèšã¯ãARãŠã§ã€ãã¡ã€ã³ãã£ã³ã°ã®å®ç§ãªåè£å°ã§ããããã€åœéç©ºæž¯ã®æ è¡è ã¯ãæºåž¯é»è©±ã§2DããããèŠäžãã代ããã«ãæºåž¯é»è©±ãããããŠåºã«è¡šç€ºãããä»®æ³ã®çµè·¯ãèŠãŠãã²ãŒããŸã§çŽæ¥æ¡å ãããããšãã§ããŸããæšèãé¢å¿ã®ããå°ç¹ã«ã¯ãªã¢ã«ã¿ã€ã ã§ç¿»èš³ã衚瀺ãããŸãã
課é¡ãšä»åŸã®æ¹åæ§
éåžžã«åŒ·åã§ããäžæ¹ãããŒã«ãŒã¬ã¹WebXRã«ã¯èª²é¡ããªãããã§ã¯ãããŸãããæè¡ã¯ãããã®ããŒãã«ãä¹ãè¶ããããã«çµ¶ããé²åããŠããŸãã
çŸåšã®å¶éäºé
- ããã©ãŒãã³ã¹ãšããããªãŒæ¶è²»ïŒã«ã¡ã©ãã£ãŒããšè€éãªSLAMã¢ã«ãŽãªãºã ãåæã«å®è¡ããããšã¯èšç®ã³ã¹ããé«ããããªãã®ããããªãŒé»åãæ¶è²»ãããããã¢ãã€ã«äœéšã«ãšã£ãŠéèŠãªèæ ®äºé ã§ãã
- ãã©ããã³ã°ã®å ç¢æ§ïŒç¹å®ã®æ¡ä»¶äžã§ã¯ããã©ããã³ã°ã倱æãããäžå®å®ã«ãªã£ããããããšããããŸããç §æãäžååãªå Žåãéãæ¥ãªåãããããŠèŠèŠçãªç¹åŸŽãå°ãªãç°å¢ïŒçã£çœãªå£ãåå°çã®é«ãåºãªã©ïŒã¯ãã·ã¹ãã ãäœçœ®ãèŠå€±ãåå ãšãªãå¯èœæ§ããããŸãã
- ãããªãããåé¡ïŒé·è·é¢ãŸãã¯é·æéã«ããã£ãŠããã©ããã³ã°ã®ããããªäžæ£ç¢ºããèç©ããä»®æ³ãªããžã§ã¯ããå ã ã¢ã³ã«ãŒãããŠããäœçœ®ãããã£ãããšãããªãããããåå ãšãªãããšããããŸãã
- ãã©ãŠã¶ãšããã€ã¹ã®æçåïŒåçšãã©ãããã©ãŒã ãããã軜æžããäžæ¹ã§ããã€ãã£ãã®ãã©ãŠã¶ãµããŒãã«äŸåããããšã¯ãã©ã®æ©èœãã©ã®OSããŒãžã§ã³ãšããŒããŠã§ã¢ã¢ãã«ã§ãµããŒããããŠããããšããè€éãªãããªãã¯ã¹ãããã²ãŒãããããšãæå³ããŸãã
ä»åŸã®å±æïŒæ¬¡ã«æ¥ããã®
ç°å¢ãã©ããã³ã°ã®æªæ¥ã¯ãããæ·±ããããæ°žç¶çã§ãããæå³çãªäžçã®çè§£ãåµé ããããšã«çŠç¹ãåœãŠãŠããŸãã
- ã¡ãã·ã³ã°ãšãªã¯ã«ãŒãžã§ã³ïŒå¹³é¢æ€åºã®æ¬¡ã®äžæ©ã¯ãå®å šãª3Dã¡ãã·ã³ã°ã§ããã·ã¹ãã ã¯ç°å¢å šäœã®å®å šãªå¹ŸäœåŠçã¡ãã·ã¥ããªã¢ã«ã¿ã€ã ã§äœæããŸããããã«ããããªã¯ã«ãŒãžã§ã³ïŒä»®æ³ãªããžã§ã¯ããçŸå®äžçã®ãªããžã§ã¯ãã«ãã£ãŠæ£ããé ãããèœåïŒãå¯èœã«ãªããŸããä»®æ³ã®ãã£ã©ã¯ã¿ãŒãå®éã®ãœãã¡ã®åŸãããªã¢ã«ã«æ©ããšãããæ³åããŠã¿ãŠãã ãããããã¯ã·ãŒã ã¬ã¹ãªçµ±åã«åããéèŠãªã¹ãããã§ãã
- æ°žç¶çãªã¢ã³ã«ãŒãšARã¯ã©ãŠãïŒãããã³ã°ããã空éãšãã®ã¢ã³ã«ãŒãä¿åããåŸã§åèªã¿èŸŒã¿ããä»ã®ãŠãŒã¶ãŒãšå ±æããèœåãããããARã¯ã©ãŠããã®æŠå¿µã§ããããªãã¯çŸå®ã®å·èµåº«ã«å®¶æãžã®ä»®æ³ã®ã¡ã¢ãæ®ãã圌ãã¯åŸã§èªåã®ããã€ã¹ã§ãããèŠãããšãã§ããŸããããã«ããããã«ããŠãŒã¶ãŒã§æ°žç¶çãªARäœéšãå¯èœã«ãªããŸãã
- æå³çè§£ïŒAIãšæ©æ¢°åŠç¿ã«ãããã·ã¹ãã ã¯åã«å¹³ããªé¢ãèŠãã ãã§ãªãããããäœã§ããããçè§£ã§ããããã«ãªããŸããããã€ã¹ã¯ãããã¯ããŒãã«ããããã¯æ€ åããããã¯çªããšèªèããããã«ãªããŸããããã«ãããã³ã³ããã¹ããèªèããARãè§£ãæŸãããä»®æ³ã®ç«ãæ¬ç©ã®æ€ åã«é£ã³ä¹ãããšãç¥ã£ãŠããããARã¢ã·ã¹ã¿ã³ããæ¬ç©ã®ãã¬ãã®é£ã«ä»®æ³ã®ã³ã³ãããŒã«ãé 眮ãããããããšãã§ããããã«ãªããŸãã
ã¯ããã«ïŒããŒã«ãŒã¬ã¹WebXRãžã®ç¬¬äžæ©
æ§ç¯ãå§ããæºåã¯ã§ããŸãããïŒæåã®ã¹ããããèžã¿åºãæ¹æ³ã¯æ¬¡ã®ãšããã§ãã
- ãã¢ãæ¢çŽ¢ããïŒãã¯ãããžãŒãçè§£ããæè¯ã®æ¹æ³ã¯ããããäœéšããããšã§ããWebXR Device APIã®å ¬åŒãµã³ãã«ãA-Frameã®ããã¥ã¡ã³ãã®äŸããããŠ8th Wallã®ãããªãµã€ãã®ã·ã§ãŒã±ãŒã¹ãããžã§ã¯ãããã§ãã¯ããŠãã ãããèªåã®ã¹ããŒããã©ã³ã䜿ã£ãŠãäœãã©ã®ããã«æ©èœããã©ã®ããã«æãããã確èªããŠãã ããã
- ããŒã«ãéžæããïŒåå¿è ã«ãšã£ãŠãA-Frameã¯åŠç¿æ²ç·ãç·©ããã§ãããããçŽ æŽãããåºçºç¹ã§ããJavaScriptãš3Dã®æŠå¿µã«æ £ããŠããå Žåã¯ãthree.jsãBabylon.jsã«é£ã³èŸŒãããšã§ãããå€ãã®ãã¯ãŒãåŸãããŸããäž»ãªç®æšãåçšãããžã§ã¯ãã§æå€§ã®ãªãŒããéæããããšã§ããã°ã8th WallãZapparã®ãããªãã©ãããã©ãŒã ãæ€èšããããšãå¿ é ã§ãã
- ãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ïŒUXïŒã«çŠç¹ãåœãŠãïŒåªããARã¯ãã¯ãããžãŒã ãã§ã¯ãããŸããããŠãŒã¶ãŒã®ãžã£ãŒããŒã«ã€ããŠèããŠãã ããããŠãŒã¶ãŒããªã³ããŒãã£ã³ã°ããå¿ èŠããããŸããæºåž¯é»è©±ãåºã«åããåãããŠãšãªã¢ãã¹ãã£ã³ããããã«æç€ºããŸãã衚é¢ãæ€åºãããã€ã³ã¿ã©ã¯ã·ã§ã³ã®æºåãã§ãããšãã«ãæç¢ºãªèŠèŠçãã£ãŒãããã¯ãæäŸããŸããã€ã³ã¿ã©ã¯ã·ã§ã³ã¯ã·ã³ãã«ã§çŽæçã«ä¿ã¡ãŸãã
- ã°ããŒãã«ã³ãã¥ããã£ã«åå ããïŒããªãã¯äžäººã§ã¯ãããŸãããWebXRéçºè ã®æŽ»æ°ã«æºã¡ãåœéçãªã³ãã¥ããã£ããããŸããWebXRã®DiscordãµãŒããŒãthree.jsãšBabylon.jsã®å ¬åŒãã©ãŒã©ã ããããŠGitHubäžã®ç¡æ°ã®ãã¥ãŒããªã¢ã«ããªãŒãã³ãœãŒã¹ãããžã§ã¯ãã¯ãåŠç¿ãšãã©ãã«ã·ã¥ãŒãã£ã³ã°ã®ããã®éåžžã«è²ŽéãªãªãœãŒã¹ã§ãã
çµè«ïŒç©ºéèªèãŠã§ãã®æ§ç¯
ç°å¢ããŒã¹ã®ããŒã«ãŒã¬ã¹ãã©ããã³ã°ã¯ãæ¡åŒµçŸå®ãããããªç®æ°ãããããã³ãã¥ãã±ãŒã·ã§ã³ã忥ããšã³ã¿ãŒãã€ã³ã¡ã³ãã®ããã®åŒ·åã§ã¹ã±ãŒã©ãã«ãªãã©ãããã©ãŒã ãžãšæ ¹æ¬çã«å€ããŸãããããã¯èšç®ãæœè±¡çãªãã®ããç©ççãªãã®ãžãšç§»ããããžã¿ã«æ å ±ãç§ãã¡ãäœãäžçã«ã¢ã³ã«ãŒãããããšãå¯èœã«ããŸãã
WebXRãæŽ»çšããããšã§ãç§ãã¡ã¯ãããã®ç©ºéèªèäœéšãåäžã®URLã§ã°ããŒãã«ãªãŠãŒã¶ãŒããŒã¹ã«æäŸããã¢ããªã¹ãã¢ãã€ã³ã¹ããŒã«ã®éå£ãåãå£ãããšãã§ããŸãããã®æ ã¯ãŸã çµãã£ãŠããŸããããã©ããã³ã°ãããå ç¢ã§ãæ°žç¶çã§ãæå³çã«èªèã§ããããã«ãªãã«ã€ããŠãç§ãã¡ã¯åã«éšå±ã«ãªããžã§ã¯ããé 眮ããããšãè¶ ããçã«ã€ã³ã¿ã©ã¯ãã£ãã§ç©ºéãèªèãããŠã§ããã€ãŸãç§ãã¡ã®çŸå®ãèŠãŠãçè§£ããã·ãŒã ã¬ã¹ã«çµ±åãããŠã§ããåµé ããŠããã§ãããã