ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM ĐỜ ÁN TÌM HIỂU CÁC FRAMEWORK HỖ TRỢ LÀM GAME 3D TƯƠNG TÁC, THỰC THỂ ẢO AR Giảng viên hướng dẫn: Ths Nguyễn Thị Thanh Trúc Sinh viên thực hiện: Lương Lý Công Thắng - 18520357 Hồ Công Thành - 18520359 TP Hồ Chí Minh, tháng 12 năm 2011 Mục lục Chương 1: Giới thiệu đề tài 1.1 Lý chọn đề tài 1.2 Mô tả đề tài 1.3 Mục tiêu đề tài Chương 2: Cơ sở lý thuyết 2.1 Công nghệ Augment Reality 2.2 Lịch sử 2.3 Các thiết bị dùng cho AR 2.3.1 Thiết bị đeo qua đầu (Head-Mounted Display - HMD) 2.3.2 Mắt kính AR 2.3.3 Kính áp tròng 2.3.4 Thiết bị cầm tay 2.3.5 Thiết bị chiếu 10 2.3.6 Các thiết bị Input 10 2.4 Cách thức hoạt động 10 2.5 Công nghệ SLAM 13 2.6 Một số ứng dụng Game AR 14 2.6.1 Pokemon GO 14 2.6.2 Angry Birds AR: Isle of Pigs 15 2.6.3 AR Dragon 16 Chương 3: Các framework hỗ trợ làm game AR 3.1 Wikitude SDK for Unity 17 17 3.1.1 Tổng quan 17 3.1.2 Kiến trúc và các tảng hỗ trợ 18 3.1.3 Các chức 19 3.1.3.1 Image Tracking: 19 3.1.3.2 Object Tracking: 21 3.1.3.3 Instant Tracking: 21 3.1.3.4 Plugin 21 3.1.4 Cách sử dụng 22 3.1.4.1 Đăng ký tài khoản của wikitude 23 3.1.4.2 Download và Setup 23 3.1.4.3 Image Tracking 26 3.1.4.4 Instant tracking 34 Instant tracking 34 Scene Picking 37 Save and Load Instant Target 38 Plane Detection 40 3.1.4.5 Object tracking và Scene Tracking 42 3.1.4.6 Quản lý Target 43 3.2 Vuforia 44 3.2.1 Tổng quan 44 3.2.2 Kiến trúc và các tảng hỗ trợ 45 3.2.2.1 Kiến trúc 45 3.2.2.2 Các tảng hỗ trợ 45 3.2.3 Các chức 48 3.2.3.1 Image Target 48 3.2.3.2 Cylinder Target 48 3.2.3.3 Multi-Target 49 3.2.3.4 VuMask 50 3.2.3.5 Model Target 51 3.2.3.6 Object Target 51 3.2.3.7 Area Target 51 3.2.3.8 Ground Plane 52 3.2.3.9 Vuforia Fusion 53 3.2.3.10 Device Tracking 53 3.2.4 Cách sử dụng 53 3.2.4.1 Tài khoản và license key 53 3.2.4.2 Download và Setup 55 3.2.4.3 Sử dụng tính Tracking Image 58 3.2.4.4 Sử dụng tính Tracking Object 59 3.2.4.5 Sử dụng tính Tracking Environment 64 3.2.5 Ưu và nhược điểm 66 3.3 AR Foundation 66 3.3.1 Tổng quan 66 3.3.2 Kiến trúc và các tảng hỗ trợ 68 3.3.2.1 Kiến trúc 68 3.3.2.2 Các tảng hỗ trợ 69 3.3.3 Các chức 69 3.3.3.1 Plane detection 69 3.3.3.2 Ray Casting 70 3.3.3.3 Anchor 70 3.3.3.4 Interaction 71 3.3.3.5 Face tracking 71 3.3.3.6 Body tracking 72 3.3.3.7 Image tracking 73 3.3.3.8 Object tracking 74 3.3.3.9 Light estimation 74 3.3.3.10 Environment Probes 75 3.3.3.11 Plane Occlusion 75 3.3.4 Cách sử dụng 76 3.3.4.1 Download và Setup 76 3.3.4.2 Plane Detection 77 3.3.4.3 Ray Casting 78 3.3.4.4 Anchor 79 3.3.4.5 Image tracking 79 3.3.4.6 Object Tracking 80 3.3.4.7 Light Estimating 80 Chương 4: Tương quan các thư viện AR 82 Chương 1: Giới thiệu đề tài 1.1 Lý chọn đề tài Ngành công nghiệp phát triển game phát triển cực kỳ mạnh mẽ thê giới, và xu hướng đó đã bắt đầu ở Việt Nam Đặc biệt, những năm gần đây, thị phần game mobile gia tăng mạnh, kèm theo đó là xu hướng làm game AR nổi bật là Pokemon Go phát triển Nhóm em muốn thông qua môn này có thể tìm hiểu thêm về lĩnh vực phát triển này 1.2 Mô tả đề tài Tìm hiểu về AR, cách thức vận hành, sử dụng các framework hỗ trợ làm game AR 1.3 Mục tiêu đề tài Mục tiêu đề tài mà nhóm đặt là hiểu được về công nghệ AR, biêt được cách sử dụng, các chức năng, điểm mạnh, điểm yêu của các framework hỗ trợ làm game tương tác AR để lựa chọn và áp dụng phù hợp các dự án sắp tới Chương 2: Cơ sở lý thuyết 2.1 Công nghệ Augment Reality Augmented Reality là trải nghiệm mà ở đó trải nghiệm ở thê giới thực sẽ được hòa trộn với các vật thể ở thê giới ảo máy tính tạo ra, người dùng có thể cảm nhận các vật thể ở thê giới ảo thông qua các giác quan thị giác, xúc giác, vị giác, thính giác, mùi hương, nhiệt độ, … , đồng thời cho phép người dùng tương tác với các vật thể ảo các thiêt bị hỗ trợ đặc biệt Người dùng sẽ có cảm nhận (nghe, nhìn, ngửi, ) những vật thể ảo máy tính tạo thực sự ở thê giới thực, có thể là chậu ở bàn hoặc khủng long chạy đường Nói ngắn gọn, Augmented Reality giúp tăng trải nghiệm của người, xóa nhòa ranh giới thực và ảo 2.2 Lịch sử Tuy các khái niệm AR mới nổi lên gần với đại đa số công chúng thông qua các phim khoa học viễn tưởng hoặc các ứng dụng của AR, các khái niệm và các ứng dụng của AR đã có lịch sử hình thành lâu đời cách 50 năm trước Năm 1901, Lyman Frank Baum, nhà văn, đã đưa ý tưởng về màn hình điện tử mà có thể hiển thị hình ảnh người lên thê giới thật, ông gọi nó là thiêt bị đánh dấu người (character marker) Năm 1968, Ivan Sutherland, giáo sư về khoa học máy tính, đã tạo cỗ máy tên gọi là The Sword of Damocles, chiêc máy này cho phép thay đổi hình ảnh đầu dựa vào vị trí và góc quay của đầu người đeo Năm 1975, Myron Krueger đã tạo nên video cho phép người dùng tương tác với các vật thể ảo realtime Năm 1980, Steve Mann, tạo chiêc máy tính có thể đeo được Năm 1990, từ Augmented Reality mới được định nghĩa lần đầu tiên bởi Thomas P Caudell, nhà nghiên cứu cho hãng Boeing Từ năm 1990 đên nay, Augmented Reality liên tục được phát triển, chủ yêu được sử dụng mục đích nghiên cứu, huấn luyện quân đội, và du hành vũ trụ Mãi tới năm 2000, game mới được đời dựa công nghệ AR với tên gọi là ARQuake, đánh dấu bước phát triển AR tới với người dùng phổ thông (https://youtu.be/RiH0IXQQpio) Năm 2001, công cụ để phát triển các ứng dụng AR là ARToolkit được công bố dưới dạng mã nguồn mở bởi phịng thí nghiệm HIT của đại học Washington và tiêp tục được phát triển tới ngày Năm 2013, Google cơng bớ dự án Google Glass, chiêc kính AR Năm 2015, Microsoft cơng bớ chiêc kính AR của hãng với tên gọi Hololens Microsoft gọi công nghệ này là Mixed Reality những tính của nó tương tự AR Từ 2015 đên nay, có hàng trăm ứng dụng có sử dụng công nghệ AR công nghệ filter ảnh realtime của Instagram, Tiktok, hay các ứng dụng mạng xã hội khác, hoặc Game thì nổi bật là game Pokemon Go, với việc cho phép các pokemon xuất hiện ngoài đời thật 2.3 Các thiết bị dùng cho AR 2.3.1 Thiết bị đeo qua đầu (Head-Mounted Display - HMD) Hình 2.1 Hình minh hoạ thiêt bị đeo qua đầu Một dạng màn hình hiển thị được đeo qua đầu dạng nón (ảnh), bên chứa màn hình hiển thị cho mỗi mắt HMD được sử dụng nhiều lĩnh vực, bao gồm gaming, y tê, quân đội, hàng không, giáo dục Mặc dù HMD có thể sử dụng cho AR gaming, theo đa phần thị trường hiện chỉ cung cấp loại HMD cho VR 2.3.2 Mắt kính AR Hình dạng giớng chiêc mắt kính mà mọi người hay đeo, được trang bị thêm camera để theo dõi thê giới thực, thiêt bị để xử lý hình ảnh, và máy chiêu để hiển thị các hình ảnh tăng cường vào mắt người sử dụng thơng qua sự phản xạ bề mặt kính Hình 2.2 Hình minh hoạ kính AR 2.3.3 Kính áp tròng Các thành phần và cách thức hoạt động tương tự chiêc mắt kính AR, được tích hợp vào chiêc kính áp trịng Cơng nghệ này được phát triển lần đầu vào năm 1999 bởi Steve Mann, và nó cần phải kêt hợp với chiêc kính AR khác để hoạt động Một bản Prototype chưa hoàn thiện đã được giới thiệu ở CES 2020 bởi công ty Mojo Vision, thiêt bị này có khả hoạt động độc lập mà khơng cần chiêc kính AR khác hỡ trợ Hình 2.3 Kính áp trịng AR 2.3.4 Thiết bị cầm tay Một thiêt bị hiển thị có kích thước vửa với tay người thiêt bị cầm tay hỗ trợ AR phổ biên hiện là chiêc điện thoại di động, nó sử dụng các cảm biên có sẵn của chiêc điện thoại để đưa các vật thể ảo vào thê giới thực, các cảm biên có thể bao gồm la bàn, GPS, cảm biên gia tốc, cảm biên khoảng cách, Hiện nay, các thiêt bị điện thoại vẫn hạn chê về mặt hiệu hạn chê về sự hỗ trợ đên từ các công ty làm thư viện AR Google hay Apple nên số lượng các thiêt bị có hỗ trợ AR thuần chưa được phổ biên thị trường, hiện có khoảng 80% thiêt bị iOS và 35% thiêt bị Android có hỗ trợ 2.3.5 Thiết bị chiếu Một cách để đưa các vật thể ảo vào thê giới thật mà không cần các thiêt bị HMD, mắt kính, hay điện thoại Thiêt bị chiêu sẽ map đoạn video hoặc bức ảnh vào vật thể ở thê giới thực, điều này có thể ngược với các thiêt bị vừa vì chúng map vật thể 3d ảo vào mắt (một bức ảnh 2D) Điều này cho phép các vật thể ảo này là độc lập với người xem, mọi người đều nhìn thấy vật thể ảo này ở cùng địa điểm, cùng kích thước Hình 2.4 Bức ảnh chụp việc map đoạn video lên tòa nhà 2.3.6 Các thiết bị Input Bao gồm các thiêt bị cung cấp các thông tin cần thiêt về thới giới thực cho máy tính xử lý Các thiêt bị này có thể bao gồm camera, thiêt bị nhận dạng giọng nói, thiêt bị nhận dạng chuyển động thể người, các tay cầm để điều khiển, 2.4 Cách thức hoạt động Quá trình hoạt động của hệ thớng AR thường được chia là phần Plane lifecycle Khi plane mới được phát hiện, subsystem sẽ thông báo plane mới được “add” Sau được “add”, subsystem sẽ vẫn liên tục track và cập nhật các plane được track, đó, bề mặt các plane có thể to hoặc nhỏ lại tùy theo góc độ camera và môi trường xung quanh Khi có plane ở gần nhau, subsystem sẽ thực hiện merge plane này lại thành plane lớn, hoặc sẽ xóa plane và nới rộng diện tích plane cịn lại, việc xảy trường hợp nào là phụ thuộc vào platform của subsystem Khi subsystem thông báo plane bị hủy (“remove”), thì điều này không đồng nghĩa với việc plane thực tê bị mất, mà có thể môi trường xung quanh đã thay đổi khiên cho subsystem không nhận plane đó nữa 3.3.3.2 Ray Casting Chức này thuộc Raycast subsystem, nó hoạt động tương tự chức raycast unity, subsystem sẽ bắn tia từ vị trí theo hướng và sẽ trả về danh sách các object mà tia đó va chạm Chức này có cách sử dụng: ● Screen point: sẽ tạo raycast với điểm bắt đầu là tọa độ 2D màn hình, kèm theo hướng di chuyển, subsystem sẽ tự động biên đổi tọa độ 2D thành tọa độ 3D và thực hiện raycast bình thường ● Arbitrary ray: sẽ tạo sẵn object ray với vị trí bắt đầu khơng cần thuộc camera ảnh mà có thể ở bất cứ đâu hệ tọa độ game Một vài subsystem chỉ hỗ trợ hai cách sử dụng trên, nên khuyên khích nên kiểm tra XRRaycastSubsystemsDescription để có thể sử dụng hợp lý 3.3.3.3 Anchor Chức này thuộc Anchor subsystem, nhiệm vụ của nó là theo dõi vị trí và góc xoay object ảo (anchor) thê giới thực, xoay camera thiêt bị thì subsystem sẽ cập nhật vị trí và góc xoay của object ảo để phù hợp với môi trường xung quanh, tạo cảm giác vật thể thực sự nằm thê giới thực Chức này thường được sử dụng kèm với chức Plane detection và Ray casting, với plane được nhận diện sẽ biểu thị khu vực có thể đặt các anchor, và ray casting sẽ dùng để tính toán vị trí đặt object plane người dùng nhấn vào điểm màn hình thiêt bị Hình 3.44 Mô việc đặt anchor lên plane 3.3.3.4 Interaction Chức này thuộc về XR Interaction Toolkit, nhiệm vụ của nó là cung cấp các chức liên quan về các cử chỉ tay của người dùng kéo thả, scale các object 3d Chi tiêt các chức sau: ● Cung cấp khả handled input cho các cần điều khiển cross-platform ● Khả nhấn giữ, kéo thả object bản ● Trả về các hiệu ứng xúc giác cho các thiêt bị điều khiển có tích hợp xúc giác ● Trực quan hóa các thao tác lên các object đổi màu viền các object ● Khả tương tác đơn giản với các thành phần UI thông qua các cần điều khiển 3.3.3.5 Face tracking Chức thuộc về tracking subsystem, có khả nhận dạng và theo dõi các cử chỉ, hình dạng, vị trí các phận mặt người Hình 3.45 Minh hoạ áp dụng face tracking Lưu ý: Đối với iOS, face tracking được để một thư viện riêng vì lý bảo mật AppStore không có phép các app tích hợp tính face tracking vào các app không sử dụng face tracking 3.3.3.6 Body tracking Chức này thuộc Tracking subsystem, cho phép chương trình theo dõi toàn thể người Gồm chức là 2D và 3D body tracking ● 2D body tracking: subsystem sẽ tạo khung xương 2D tương ứng với dáng người mà subsystem nhận diện được ● 3D body tracking: subsystem sẽ tạo khung xuong 3D tương ứng với dáng người mà subsystem nhận diện được Ảnh 3.3.3.6.1 Body Tracking AR Foundation 3.3.3.7 Image tracking Chức này thuộc Image tracking subsystem, chức này cho phép nhận diện và theo dõi các bức ảnh 2D xuất hiện Reference Image Library (giới thiệu ở phần sau) Chúng ta có thể sử dụng thông tin trả về của subsystem để có thể gắn thêm các object ảo vào các bức ảnh 2D này Ảnh 3.3.3.7.1 Image Tracking AR Foundation 3.3.3.8 Object tracking Chức này thuộc object tracking subsystem, chức này tương tự chức Image tracking, thay vì tìm kiêm ảnh 2D, subsystem sẽ tìm kiêm và theo dõi đồ vật 3D ngoài đời thực, giúp có thể gắn các object ảo lên các đồ vật này 3.3.3.9 Light estimation Đây là chức phụ trợ, chức này có khả theo dõi các giá trị liên quan đên ánh sáng thới giới thực, từ đó có thể điều chỉnh hành vi của các object ảo phụ thuộc vào ánh sáng thực đổ bóng, thay đổi độ sáng của object ảo, thay đổi animation, … Các giá trị trọng yêu mà chức này mang lại bao gồm: ● Ambient Intensity: Cường độ ánh sáng ambient ● Ambient Color: Màu của ánh sáng ambient ● Main Light Direction: Hướng ánh sáng ● Main Light Intensity Lumens: Cường độ bức xạ ánh sáng của nguồn sáng ● Main Light Color: Màu của ánh sáng ● Spherical Harmonics: Nhịp độ ánh sáng Ảnh 3.3.3.9.1 Light Estimation AR Foundation 3.3.3.10 Environment Probes Thuộc Environment probe subsystem, chức của subsystem là nhận diện hình ảnh môi trường xung quanh, để từ đó có object ảo nào được đặt vào không gian thì các ảnh môi trường xung quanh sẽ có thể phản chiêu từ phần texture của object ảo, nhằm làm tăng tính thực tê của object ảo lên Hình 3.46 Minh hoạ sử dụng Environment Probes 3.3.3.11 Plane Occlusion Chức này thuộc occlusion subsystem, nhiệm vụ của chức này là xuất các ảnh theo frame, kêt hợp với phần depth testing và stencil testing, từ đó giúp hiển thị rõ các object ảo kèm với các object thật, cái nào trước cái nào sau, từ đó tăng trải nghiệm thực tê ảo cho người dùng Chức này hỡ trợ tính toán các thông số sau: ● Environment depth: khoảng cách từ camera tới bất cứ vị trí nào thê giới thật ● Human depth: khoảng cách từ camera tới bất kỳ vị trí nào thể người có xuất hiện camera ● Human stencil: Kiểm tra với mỗi pixel vẽ màn hình xem pixel đó có chứa phận người hay không 3.3.4 Cách sử dụng 3.3.4.1 Download và Setup Từ menu của Unity, chọn Window → Package Manager Từ cửa sổ Package Manager vừa mở ra, chọn Package: Unity Registry, sau đó search cụm từ “ar” và cài đặt các thư viện ảnh minh họa Hình 3.47 Các package cần thiêt cho AR Foundation Setup Scene Bất cứ nào cần sử dụng AR Foundation scene, cần tạo game object là AR Session và AR Session Origin AR Foundation cung cấp sẵn mẫu cho để dễ dàng thêm vào scene của mình, để lấy các mẫu đó, chuột phải vào phần Hierarchy → XR → AR Session & AR Session Origin Hình 3.48 Khởi tạo AR Session và AR Session Origin Trong đó: ● AR Session đóng vai trò kiểm soát life-cycle cho các chức AR bên app, có thể sử dụng AR Session để tắt hay mở tính AR của app run-time Đồng thời nó cung cấp các thông tin về chức AR thiêt bị được khởi tạo, có hỗ trợ, không hỗ trợ, ● AR Session Origin có nhiệm vụ chuyển đổi các object nằm session space (plane, anchor, ) vào unity world space để render lên màn hình 3.3.4.2 Plane Detection Để thực hiện chức này cần làm việc chính, thứ là tạo Plane manager có chức tìm kiêm và nhận diện các bề mặt phẳng, thứ hai là phần plane để render biểu thị cho phần bề mặt được nhận diện Đầu tiên để tạo Plane manager, add component AR Plane Manager vào game object AR Session Origin Hình 3.49 Các chê độ plane detection Ở có thể tùy chỉnh các chê độ detection là Everything, Horizontal, Vertical hoặc Nothing Sau đã có phần manager, tạo phàn plane để render, AR Foundation cung cấp sẵn cho game object mẫu, chuột phải vào phần Hierarchy → XR → AR Default Plane Sau đó tạo prefab từ game object AR Default Plane và kéo thả prefab vào mục Plane Prefab AR Plane Manager 3.3.4.3 Ray Casting Để thực hiện chức này, chỉ cần thêm component AR Raycast Manager vào AR Session Origin Sau đó thực hiện gọi raycast từ code Unity Hình 3.50 Code minh họa ray cast 3.3.4.4 Anchor Để sử dụng chức anchor, cần thêm component Anchor Manager vào AR Session Origin Sử dụng chức này khá đơn giản, chỉ cần tạo game object (content) thêm component ARAnchor vào, điều này có thể thực hiện ở run-time Một chức nữa của Anchor là nó có thể được attach vào Plane và vị trí của anchor sẽ chỉ có thể nằm Plane, lúc này content nên được khởi tạo là game object của anchor Chức này thích hợp ḿn đặt content lên Plane được detect 3.3.4.5 Image tracking Tương tự các chức trước, cần thêm component AR Tracked Image Manager vào AR Session Origin Hình 3.51 Các thông số tùy chỉnh của AR Tracked Image Manager Trong các thông số này: ● Serialized Library: Một tập hợp các bức ảnh mà subsystem (manager) phải tìm kiêm và theo dõi ● Max Number Of Moving Images: Một số thiêt bị có thể track được các bức ảnh di chuyển, đồng nghĩa với việc tốn hiệu của máy, số này để đặt số lượng tối đa các ảnh di chuyển mà manager phải theo dõi ● Tracked Image Prefab: prefab game object bản được tạo các image được nhận diện Để tạo Serialized Library, right click vào khung Project → Create → XR → Reference Image Library Hình 3.52 Mẫu Reference Image Library Chúng ta sử dụng object này để thêm vào các image, các thông số ● Name: để định danh image nhận callback từ manager ● Specific Size: Đặt các kích thước của bức ảnh 3.3.4.6 Object Tracking Để sử dụng chức này, thêm component AR Tracked Object Manager vào AR Session Origin Sử dụng chức này tương tự Image Tracking Phần khác biệt là phải sử dụng phần mềm Scanning object 3D của apple để tạo các asset Reference Object Library 3.3.4.7 Light Estimating Để sử dụng chức này, chỉ cần script đơn giản, bên script chứa reference tới ARCamera (game object bên tron AR Session Origin) Thông qua ARCamera, sẽ đặt callback để nhận giá trị trả về sau mỗi frame của ARCamera, thông qua giá trị trả về đó, lấy được object chứa các các thông số liên quan tới ánh sáng thực của môi trường Hình 3.53 Cách đặt callback function cho ARCamera Hình 3.54 Cách lấy thông số về ánh sáng từ ARCamera Chương 4: Tương quan các thư viện AR Tiêu chỉ so sánh Wikitude SDK Vuforia AR Foundation Hệ điều hành Android, iOS, Hololen hỗ trợ Android, iOS Android, iOS, Hololen, Magic Leap Tương thích Có thể kêt hợp với Với điện thoại, chỉ AR Foundation, dùng được cho các ARCore dòng máy có hỗ trợ đên từ Google (54% các máy) và Apple (80% các máy) Professional: Khơng tương thích với ARFoundation, hoặc ARCore Expert: Sử dụng Bride để tương thích và sử dụng các chức của ARFoundation Dùng được cho mọi dịng máy Chi phí Bản trả phí lần, khơng update: 2490€ Bản trả phí có update: 2990€/năm Bản cloud: 4990€/năm Bản dùng thử: miễn phí 90 ngày, có thể xin gia hạn Bản basic: $42 Hoàn toàn miễn phí 99 mỡi tháng Bản pro: thoả tḥn trực tiêp với nhà phát hành Miễn phí cho dự án khơng lợi nhuận Cộng đồng Lớn, không hiệu quả Lớn, hoạt động sôi Thừa hưởng từ cộng nổi đồng ARCore và ARKit nên lớn Image Tracking Hỗ trợ extend tracking, Hỗ trợ theo dấu dễ sử dụng, dễ làm quen ảnh, khối trụ, đa diện, VuMask Dễ sử dụng, khơng có tính preview kích cỡ object so với ảnh Object Tracking Sử dụng các bức ảnh Hỗ trợ theo dấu chụp của object từ vật thể thật nhiều hướng, mọi thiêt bị đều có thể sử dụng chức Khơng có phần preview kích cỡ object so với các object unity Chỉ hỗ trợ iOS, phần khởi tạo được Apple hỗ trợ sẵn App Không có phần preview kích cỡ object so với các object unity Environment Tracking Sử dụng instant tracking, hiệu không cao, có thể gây giật lag, không mượt Có thể theo dấu được môi trường nêu được quét và thiêt lập trước Hiệu mượt, bị giật lag Plane Detection Có thể detect được mặt phẳng ngang, mặt phẳng đứng, mặt phẳng ngang trần nhà, mặt phẳng nghiêng, mặt phẳng không xác định cầu thang, dóc Chức Ground Plane cho phép phát hiện mặt phẳng và đặt vật thể ảo lên đó Có thể phát hiện được mặt phẳng ngang và mặt phẳng dọc Virtual Button Không hỗ trợ Có hoạt động hiệu quả Không hỗ trợ Face Tracking Không hỗ trợ Không hỗ trợ Hỗ trợ ở cả Android và iOS Body tracking Không hỗ trợ Không hỗ trợ Chỉ có iOS Cảm nhận Không hỗ trợ ánh sáng môi trường Không hỗ trợ Hỗ trợ Cảm nhận chiều sâu Tuỳ thiêt bị Hỡ trợ sớ thiêt bị Không hỗ trợ Database Hỗ trợ Cloud recognize, Vuforia Cloud, tiêt kiệm chi phí cho local thiêt bị Khơng hỡ trợ Device Tracking Hỗ trợ Hỗ trợ Truy cập vào tracking của thiêt bị để tăng độ xác ... công nghệ AR vào game tương đối mới lạ với nhiều người 2.6.2 Angry Birds AR: Isle of Pigs Hình 2.10 Mô game Angry Bird AR Angry bird AR với lối chơi thừa hưởng từ dịng game tiền nhiệm,... Các chức 48 3.2.3.1 Image Target 48 3.2.3.2 Cylinder Target 48 3.2.3.3 Multi-Target 49 3.2.3.4 VuMask 50 3.2.3.5 Model Target 51 3.2.3.6 Object Target 51 3.2.3.7 Area Target 51 3.2.3.8 Ground Plane... SLAM 13 2.6 Một số ứng dụng Game AR 14 2.6.1 Pokemon GO 14 2.6.2 Angry Birds AR: Isle of Pigs 15 2.6.3 AR Dragon 16 Chương 3: Các framework hỗ trợ làm game AR 3.1 Wikitude SDK for Unity