Ŀ¼Ŀ¼ ǰÑÔ µÚ1ÕÂUnity 3D ARÓ¦Óÿª·¢»ù´¡1 1.1¡¡Unity 3DÒýÇæ¼ò½é1 1.1.1Unity 3DµÄÏÂÔØÓë°²×°1 1.1.2Unity 3D²Ù×÷½çÃæ¼ò½é6 1.1.3Unity 3DµÄ»ù´¡×é¼þÓë²Ù×÷7 1.1.4Unity 3DµÄ×ÊÔ´É̵ê14 1.2Unity 3D±à³Ì»ù´¡14 1.2.1C#±à³Ì»ù´¡14 1.2.2C#ÃæÏò¶ÔÏó±à³Ì»ù´¡24 1.2.3C#ÃæÏò¶ÔÏó±à³Ì½ø½×26 1.2.4Unity 3DÖеÄC#½Å±¾30 1.3Unity 3D±à³Ì½ø½×32 1.3.1Unity 3DµÄÉè¼ÆÄ£Ê½32 1.3.2MonoBehaviorµÄÉúÃüÖÜÆÚ33 1.3.3¿ØÖÆGameObjectµÄλÖÃ37 1.3.4¿ØÖÆGameObjectµÄÉú³ÉºÍÏú»Ù40 1.3.5´¦ÀíUnity 3DÖеÄÎïÌåÅöײ43 1.3.6UI×é¼þµÄʹÓÃ45 1.4ARÖг£ÓõÄUnity 3D²å¼þ49 1.4.1ÊÓÆµ²¥·Å²å¼þ£ºEasy Movie Texture50 1.4.2¶¯»¿ØÖƲå¼þ£ºiTween53 1.4.3ÊÖÊÆ¿ØÖƲå¼þ£ºEasy Touch57 µÚ2ÕÂʹÓÃVuforia¿ª·¢ARÓ¦ÓÃ60 2.1Vuforia SDK¼ò½é60 2.1.1Vuforia SDKµÄÏÂÔØÓë°²×°60 2.1.2´´½¨App License Key62 2.1.3ÔÚSDKÖÐÊäÈëApp License Key63 2.2ʹÓÃVuforia SDK½øÐÐÎïÌåʶ±ð64 2.2.1ͼƬʶ±ð64 2.2.2³¤·½Ìåʶ±ð70 2.2.3Ô²ÖùÌåʶ±ð73 2.2.4ÎïÌåʶ±ð76 2.3ʹÓÃVuforia SDKÖÆ×÷ARÊÓÆµ80 2.3.1ÉÏ´«Ê¶±ðͼ80 2.3.2´´½¨Ê¶±ðÊÓÆµ²¥·ÅGameObject80 2.3.3´´½¨Ê¶±ðͼĿ±ê83 2.3.4±àÒëÔËÐгÌÐò85 2.4ÖÆ×÷AR¶ÔÕ½ÓÎÏ·87 2.4.1ÖÆ×÷ʶ±ðͼ87 2.4.2´´½¨×Óµ¯87 2.4.3 ´´½¨Íæ¼Ò½ÇÉ«90 2.4.4´´½¨µÐÈË102 2.4.5½«Íæ¼ÒºÍ½ÇÉ«É趨ΪImage Target104 µÚ3ÕÂARÓ¦ÓÃÖеÄÍØÕ¹¹¦ÄÜʵÏÖ110 3.1ÔÚUnity 3DÖÐʵÏÖÍøÂçͨÐÅ110 3.1.1¼ÆËã»úÍøÂç¼ò½é110 3.1.2´î½¨Ò»¸öHTTP·þÎñÆ÷111 3.1.3ʹÓÃWWW´ÓHTTP·þÎñÆ÷»ñȡͼƬ112 3.2ÔÚUnity 3DÖлñÈ¡ÌìÆøÐÅÏ¢115 3.2.1ͨ¹ýÍøÂçAPI»ñÈ¡ÌìÆøÊý¾Ý115 3.2.2ʹÓÃGZipStream½âѹËõ×Ö·ûÊý×é116 3.2.3ÔÚUnityÖз´ÐòÁл¯JSONÊý¾Ý117 3.3ÔÚUnity 3DÖлñÈ¡GPSÐÅÏ¢119 3.3.1LocationServiceÀà119 3.3.2¹¹½¨³¡¾°ºÍUI´¦ÀíÂß¼119 3.3.3»ñÈ¡GPSÊý¾Ý120 3.3.4ͨ¹ýµØÀíλÖûñÈ¡³ÇÊÐ123 3.4ÔÚUnityÖÐʵÏÖ¶þάÂëµÄÉú³ÉÓëʶ±ð126 3.4.1QR CodeBarcode Scanner and Generator¼ò½é126 3.4.2´î½¨¹¤³Ì³¡¾°127 3.4.2ɨÃè¶þάÂë128 3.4.3Éú³É¶þάÂë130 3.5ÔÚUnity 3DÖÐʵÏÖ¶¯Ì¬×ÊÔ´¼ÓÔØ132 3.5.1AssetBundle¼ò½é132 3.5.2ÈçºÎ´´½¨AssetBundle132 3.5.3ÈçºÎ¼ÓÔØAssetBundle 134 3.5.4AssetBundleÖ®¼äµÄÒÀÀµ¹ØÏµ135 3.6ÔÚUnity 3DÖÐʵÏÖÈȸüÐÂ141 3.6.1Èȸüз½°¸±È½Ï141 3.6.2XLua¼ò½é142 3.6.3ÈçºÎʹÓÃXLua¸üÐÂ142 µÚ4ÕÂʹÓÃOpenCV¿ª·¢Í¼Ïñʶ±ðÓ¦ÓÃ145 4.1OpenCVͼÏñʶ±ð¼ò½é145 4.1.1OpenCVͼÏñʶ±ð¼¼ÊõÓ¦ÓÃÁìÓò145 4.1.2OpenCV¼¼ÊõÄ£¿é¼ò½é145 4.1.3OpenCV For Unity²å¼þ½éÉÜ147 4.2ÅäÖûù´¡¿ª·¢»·¾³148 4.2.1¿ª·¢»·¾³ÒªÇó148 4.2.2µ¼ÈëOpenCV For Unity²å¼þ°ü148 4.2.3ÅäÖÃOpenCV For Unity²å¼þ149 4.2.4ÔËÐÐOpenCV For UnityʾÀý¹¤³Ì149 4.3Ãæ²¿Ê¶±ð152 4.3.1FaceTrackerSampleÀ©Õ¹²å¼þ¼ò½é152 4.3.2³¡¾°´î½¨152 4.3.3±àÐ´Ãæ²¿Ê¶±ð½Å±¾155 µÚ5ÕÂʹÓÃARToolkit½øÐÐAR¿ª·¢160 5.1ARToolKit¼ò½é160 5.1.1ARToolKitÊÇʲô160 5.1.2ARToolKitÌØÐÔ¼ò½é161 5.1.3ARToolKit²å¼þ°üµ¼Èë161 5.1.4ARToolKitÖеÄĿ¼¼ò½é163 5.2´î½¨Ò»¸ö¼òµ¥µÄAR³¡¾°163 5.2.1´´½¨²¢ÉèÖÃAR Controller163 5.2.2´´½¨²¢ÉèÖÃARMarker165 5.2.3´´½¨²¢ÉèÖÃAR OriginºÍAR Tracked Object165 5.2.4´´½¨²¢ÉèÖÃARCamera166 5.2.5ÔËÐг¡¾°168 5.3ARToolKitÖеÄʶ±ðͼ¼ò½é168 5.3.1´«Í³Ä£°åÕý·½ÐÎʶ±ðͼ168 5.3.22
1¡¢×Ô¶¯£ºÔÚÉÏ·½±£ÕÏ·þÎñÖбêÓÐ×Ô¶¯·¢»õµÄÉÌÆ·£¬ÅÄϺ󣬽«»á×Ô¶¯ÊÕµ½À´×ÔÂô¼ÒµÄÉÌÆ·,ÔÚ¶©µ¥ÏêÇéÖв鿴¿¨ÃÜ/»òÏÂÔØÁ´½Ó£»
2¡¢ÊÖ¶¯£ºÎ´±êÓÐ×Ô¶¯·¢»õµÄµÄÉÌÆ·£¬ÅÄϺó£¬Âô¼Ò»áÊÕµ½Óʼþ¡¢¶ÌÐÅÌáÐÑ£¬Âò¼Ò¿Éͨ¹ýQQ/µç»°µÄ·½Ê½ÁªÏµÉ̼ҷ¢»õ¡£
1¡¢ÃèÊö£ºÉÌÆ·ÃèÊö(º¬±êÌâ)Óëʵ¼ÊÉÌÆ·²»Ò»Öµģ¨Àý£ºÃèÊö³äÖµµÄQQ»áÔ±Ò»Ä꣬ʵ¼ÊÖ»³äÖµÁËÒ»¸öÔ»ò³äÖµÆäËûQQ×êµÈ£©£»
2¡¢ÑÝʾ£ºÓÐÑÝʾվʱ£¬Óëʵ¼ÊÉÌÆ·Ð¡ÓÚ95%Ò»Öµģ¨µ«ÃèÊöÖÐÓÐ"²»±£Ö¤ÍêȫһÑù¡¢Óб仯µÄ¿ÉÄÜÐÔ"ÀàËÆÏÔÖøÉùÃ÷µÄ³ýÍ⣩£»
3¡¢·¢»õ£ºÊÖ¶¯·¢»õÉÌÆ·£¬ÔÚÂô¼Òδ·¢»õǰ£¬ÒÑÉêÇëÍË¿îµÄ£»
4¡¢·þÎñ£ºÂô¼Ò²»Ìṩ°²×°·þÎñ»òÐè¶îÍâÊշѵ썵«ÃèÊöÖÐÓÐÏÔÖøÉùÃ÷µÄ³ýÍ⣩£»
5¡¢ÆäËû£ºÈçÖÊÁ¿·½ÃæµÄÓ²ÐÔ³£¹æÎÊÌâµÈ¡£
×¢£º¾ºËʵ·ûºÏÉÏÊöÈÎÒ»£¬¾ùÖ§³ÖÍ˿µ«Âô¼ÒÓèÒÔ»ý¼«½â¾öÎÊÌâÔò³ýÍâ¡£½»Ò×ÖеÄÉÌÆ·£¬Âô¼ÒÎÞ·¨¶ÔÃèÊö½øÐÐÐ޸ģ¡
1¡¢ÔÚδÅÄÏÂǰ£¬Ë«·½ÔÚQQÉÏËùÉ̶¨µÄÄÚÈÝ£¬Òà¿É³ÉΪ¾À·×ÆÀÅÐÒÀ¾Ý£¨É̶¨ÓëÃèÊö³åͻʱ£¬É̶¨Îª×¼£©£»
2¡¢ÔÚÉÌÆ·Í¬Ê±ÓÐÍøÕ¾ÑÝʾÓëͼƬÑÝʾ£¬ÇÒÕ¾ÑÝÓëͼÑݲ»Ò»ÖÂʱ£¬Ä¬Èϰ´Í¼ÑÝ×÷Ϊ¾À·×ÆÀÅÐÒÀ¾Ý£¨ÌرðÉùÃ÷»òÓÐÉ̶¨³ýÍ⣩£»
3¡¢ÔÚûÓÐ"ÎÞÈκÎÕýµ±ÍË¿îÒÀ¾Ý"µÄǰÌáÏ£¬Ð´ÓÐ"Ò»µ©ÊÛ³ö£¬¸Å²»Ö§³ÖÍË¿î"µÈÀàËÆµÄÉùÃ÷£¬ÊÓΪÎÞЧÉùÃ÷£»
4¡¢ËäÈ»½»ÒײúÉú¾À·×µÄ¼¸ÂʺÜС£¬µ«Ç뾡Á¿±£ÁôÈçÁÄÌì¼Ç¼ÕâÑùµÄÖØÒªÐÅÏ¢£¬ÒÔ·À²úÉú¾À·×ʱ±ãÓÚÎÒ˾¹¤×÷ÈËÔ±½éÈë¿ìËÙ´¦Àí¡£