iOS 11ãã追å ããããARæ©è½ãå®è£ ããããã®ãã¬ã¼ã ã¯ã¼ã¯ãARKitãã«ã¤ãã¦WWDCã®ã©ãï¼Appleã®ãããããã«ç´æ¥è³ªåã§ããã³ã¼ãã¼ï¼ã§èãããã¨ã®ã¡ã¢ã§ãã注ç®ã®ãã¬ã¼ã ã¯ã¼ã¯ãªã®ã§è¡åãã§ãã¦ã¾ããããä¸å¯§ã«è²ã ã¨æãã¦ãããã®ã§ãå¿ããªããã¡ã«æ¸ãã¦ãããã¨æãã¾ãã
ï¼WWDCã»ãã·ã§ã³ã¹ã©ã¤ãããï¼
æ¢åå®è£ ã¨ã©ãå ±åããããï¼
先日の記事ã«ãæ¸ããã®ã§ãããä»åãã¦ããä¼ç¤¾ã®ã¢ããªãFyuseãã¯ã¹ããã§3Dçãªåçãæ®ãã¢ããªã§ããã®æ®å½±ãè£å©ããããã«ãæ®å½±å¯¾è±¡ã®å¨å²ã«3Dã®ãARã¬ã¤ããã表示ããã¨ããæ©è½ãAVFoundation+Metal+SceneKit+ç¬èªã®ç»åå¦çã©ã¤ãã©ãªï¼ãã©ããã³ã°çï¼ã§å®è£ ãã¾ããã
ARKitã使ãã¨ãªãã¨ãè¦iOS 11以ä¸ãè¦A9以ä¸ã®ããã»ããµã¨ããæ¡ä»¶ãæºããå¿ è¦ãããããã§ãããå½ç¶2017å¹´ç¾å¨ã§ã¯å¤ãã®ã¢ããªã¯ãããããã£ã¨åºãiOSãã¼ã¸ã§ã³ãiOSããã¤ã¹ããµãã¼ããããã¯ãã§ãã
ã§ãã¾ãèããã®ã¯ãããããæ¢åå®è£ ã¨ARKitãå ±åãããã®ã«ã
if <# iOS 11ä»¥ä¸ #> && <# A9ä»¥ä¸ #> { // ARKitã使ãå®è£ } else if <# æ¢åå®è£ ã使ãæ¡ä»¶ #> { // æ¢åå®è£ } else { // ããä»¥å¤ }
ã¿ãããªã®ãé¿ããæ¹æ³ããã£ãããã¾ãããï¼ã¨ã
â åçï¼ãªããARKitã使ãã«ã¯iOS 11以ä¸ãA9以ä¸ãå¿ è¦ã ã
ã»ã»ã»ã¯ãããããããã§ãããå¤ãªè³ªåãã¦ãã¿ã¾ãããã§ããã£ããæ¥ãã®ã§é£ãä¸ãã£ã¦èãã¦ã¿ã¾ããã
ãä»ã®ARå©ç¨ã¢ããªãiOS 10以ä¸ã¯ã¾ã åããªãã¨æããã©ã¿ããªã©ããã¦ãã®ï¼ãã¨ãã°ãã±ã¢ã³Goã¨ãã
â åçï¼ç¥ããªãã
ã»ã»ã»ã¯ãããããããã§ããããï¼ããç¥ã£ã¦ã¦ãè¨ããªãã§ãããï¼
æ¢åå®è£ ã¨æ¯è¼ããARKitã®ã¢ããã³ãã¼ã¸ã¯ä½ã ã¨æããï¼
質åãæªãã£ãã®ã§ãããããæ¢ã«å®è£ ãæ¸ãã§ãã¦ãARKitã使ãã¨ãªãã¨æ¢åå®è£ ã«ãã©ã¹ãã¦ãã¼ã¸ã§ã³ãããå¿ è¦ã¨ãããã¡ãªãããããã¤ã¤ãããã§ãARKitã使ãçç±ã¯ããã®ããã¨ãã観ç¹ãããæã ã®æ¢åå®è£ ã¨æ¯è¼ããARKitã使ãã¡ãªããã«ã¤ãã¦èãã¦ã¿ã¾ããã
â åçï¼
- Appleã®ç´æ£ãã¬ã¼ã ã¯ã¼ã¯ã¯å ¬éAPIãããã£ã¨ä¸ã®ã¬ã¤ã¤ã¼ãå©ç¨ããå®è£ ãã§ããã®ã§ããµã¼ããã¼ãã£è£½ã®å®è£ ããããã¼ãã¦ã§ã¢ã«æé©åããã¦ããããã£ã¦ããããªã¼æ¶è²»éãå¦çé度ã®é¢ã§åªãã¦ããã¨èãããã
- ã¦ã¼ã¶ã¼ãã¿ããããªãã¦ããARã®ã»ãã·ã§ã³ãéå§ããæç¹ã§ã·ã¼ã³ã®è§£æãå®äºãã¦ããï¼ããã¯å³å¯ã«ã¯æã ã®ç¨éã«ã¨ã£ã¦ã¯ã¢ããã³ãã¼ã¸ã§ã¯ãªããããéããã§ã¯ããï¼
- ããã¤ã¹ã®å§¿å¢ãèæ ®ãã¦ãã¼ãã¤ã³ããæ½åºãã¦ãã®ã§ãããã¤ã¹ãåããã¨äºã ï¼ãã¿ã¾ãããå®ã¯ãã®ã¸ãã¡ãã£ã¨ãããããã¾ããã§ããï¼
çµå±ã®ã¨ãããARã®ã·ã¼ã³ã¨ãã¦ã¯ã©ããããã®ãæ¤åºã§ããã®ã
æã ã®è¦ä»¶ã¨ãã¦ã¯ãæ°´å¹³é¢ã«ä½ããç½®ããããããããªãã¦ã対象ãªãã¸ã§ã¯ããå²ãããã«3Dãã¼ãã表示ãããããã§ãã
ã¨ãããARKitã¯æ¤åºããåºããã¼ãã«çã®æ°´å¹³é¢ã«ä½ããç½®ãå®è£ ããè¦å½ãããªãã®ã§ããããããã®ã£ã¦ARKitã§ã§ããã®ï¼ãã¨ãããã¨ãèãã¦ã¿ã¾ããã
ã§ãåçã¨ãã¦ã¯ãä»ã®ã¨ãããæ°´å¹³æ¹åãï¼horizontalï¼ã®ãå¹³é¢ãï¼planeï¼ããæ¤åºããªãããã§ãã
`ARPlaneAnchor.Alignment` ã¨ããenumãããã¾ãããå®ã¯ã¾ã `horizontal` ã¨ããè¦ç´ ã²ã¨ã¤ãããªãã¦ã`vertical` ã¨ããã®ã¯ã¾ã ããã¾ãããã¤ã¾ãå£ã®ãããªãåç´æ¹åã®å¹³é¢ããæ¤åºããããæã ã®ã¢ããªã®ããã«äººéãé åãåç©ã¨ãã£ãä»»æã®ãªãã¸ã§ã¯ããæ¤åºãããããããããã¨ã¯ç¾ç¶ã§ã¯ãµãã¼ããã¦ãªãããã§ãã
ãªã®ã§ããã±ã¢ã³Goã®ããã«ãã£ã©ã¯ã¿ã¼ã®3Dã¢ãã«ã表示ããã¿ã¤ãã®ARã«ã¯ããã§ãããæã ã®ã¢ããªã®ãããªç¨éããå®ä¸çã®ãã®ã«åããã¦ä½ãæ å ±ã表示ããããã¿ãããªã¿ã¤ãã®ARã«ãç¾ç¶ã§ã¯åãã¦ãªãããã§ãã
ã©ãããæ°´å¹³æ¹åã®å¹³é¢ãèªèããããã«ã¤ãã¦ãæãã¦ãããã®ã§ãããããç¨åº¦ã®å¤§ãããå¿ è¦ã§ããã¨ãã°ã¤ã¹ã®åº§é¢ã¯ååãªåºããããã®ã§æ°´å¹³é¢ã¨ãã¦æ¤åºãããããèãããã®ä¸ï¼ä¼ããã¾ãããï¼ï¼ã¿ãããªçããã®ã¯æ°´å¹³é¢ã¨ãã¦ã¯æ¤åºãããªãã¨ã
ãã ããä¸ã¤ææ¡ã¨ãã¦è¨ã£ã¦ãããã®ã¯ãæ¤åºãããã¼ãã¤ã³ãã¯APIããåããã®ã§ããããã使ã£ã¦èªåã§åç´æ¹åã®é¢ãªãä½ãªããåæ§æãããã¨ãªãã§ãããã¨è¨ã£ã¦ã¾ãããããã¯ããããããã¾ããã
深度æ å ±ã¯ä½¿ç¨ãã¦ããã®ãï¼
ãã¨ãã°iPhone 7 Plusã®ããã«Depthï¼ããã¹ï¼æ·±åº¦ï¼ãåãããããªããã¤ã¹ã®å ´åãããã使ã£ã¦ãã精度è¯ãæ¤åºãããããªå¦çãå é¨ã§ãã£ã¦ããããã®ãï¼ã¨ãããã¨ãèãã¾ããã
â åçï¼ä½¿ã£ã¦ãªã
æ®éã®ã«ã¡ã©ã ãã§ç²¾åº¦è¯ãåããããªã¢ã«ã´ãªãºã ã«ãªã£ã¦ãã¦ãããã¤ã¹ã«ããå¦çã®å·®ç°ã¯ãªãããã§ãã
ãããã«
çµè«ã¨ãã¦ã¯ãæã ã®ç¨éã«ã¯ä»ã®ã¨ããã¯åã£ã¦ãªãããã§ããããä»å¾ã®ã¢ããªéçºã®å¯è½æ§ãåºãã¦ãããé常ã«ããããããã¬ã¼ã ã¯ã¼ã¯ã§ãããã¨ã«ã¯ä»£ããã¯ãªãã®ã§ããã©ã¤ãã¼ãã§ã¯å¼ãç¶ã触ã£ã¦ãããã¨æã£ã¦ãã¾ãã