SERIES UNITY AR & VUFORIA: Tập 2 - Tạo và hiển thị vật thể 3D qua thực tế tăng cường

Ở tập trước của series Unity AR & Vuforia mình đã cho các bạn thấy được cái nhìn tổng quan về công nghệ AR (Augmented Reality), VR (Virtual Reality) hay MR (Mixed Reality) và hướng dẫn cài đặt Vuforia Engine vào Unity. Nếu bạn bỏ lỡ tập trước thì hãy xem bài viết này nhé.

Góc Của Chung | SERIES UNITY AR & VUFORIA: Tập 1 - Giới thiệu công nghệ AR và tích hợp Vuforia với Unity
Tập đầu tiên của series hướng dẫn tạo nên một ứng dụng AR cơ bản với Unity và Vuforia Engine. Trong tập này sẽ khái quát qua khái niệm của công nghệ AR và cách setup Vuforia cho Unity.

Và ở tập 2 trong series mình sẽ đi vào phần kỹ thuật và tương tác với Unity nhiều hơn để có thể tạo ra được một ứng dụng AR cơ bản.


TẠO VÀ THÊM TARGET VÀO VUFORIA DATABASE

Sau khi đã thêm Vuforia Engine vào Unity thành công thì sau đó tụi mình sẽ cần phải tạo nạp target vào trong cơ sở dữ liệu (database) của Vuforia. Target ở đây là các đối tượng vật thể do người dùng nạp vào cơ sở dữ liệu để Vuforia Engine có thể nhận diện và hiển thị trên Unity.

Bước 1: Tạo một database mới trong Target Manager

Các bạn có thể thấy tab Target Manager kế bên License Manager trong Developer Portal mà tập trước mình khởi tạo License Key.

Target Manager trong Developer Portal

Ở đây thì các bạn nhấn chọn "Add Database" để tạo mới một database. Mình sẽ tạo một database mới tên là goccuachung.

Form khởi tạo Database
Sau khi database được khởi tạo thành công

Bước 2: Thêm target vào database

Bước tiếp theo là thêm target vào database. Sau khi đã khởi tạo database thì các bạn hãy vào database vừa được khởi tạo (goccuachung) và chọn Add Target.

Trong bài này mình sẽ thêm target là tờ 100 nghìn đồng. Tiền nhiều để làm gì đúng không? Không có 100 nghìn là khỏi hiển thị luôn 🤣.

Form Add Target hiện lên và có các option khác nhau như là type, file, width và name. Thì ngoài option file ra thì các option khác các bạn cũng không cần để tâm chi đâu. Ở phần file, tụi mình sẽ chọn browse để thêm vào ảnh của target mà bạn muốn thêm vào nhé.

Sau khi Target đã được thêm vào thành công

Các bạn có thể thấy độ rating của target mình thêm vào là 4/5 sao, có nghĩa là chất lượng của target khá là cao, đồng nghĩa với việc ARCamera của Vuforia Engine có thể nhận diện với độ chính xác cao. Nếu mà target bạn thêm vào có rating thấp thì các bạn nên kiếm một hình ảnh khác có chất lượng tốt hơn nhé.

Bước 3: Thêm Target vào Unity

Tạo target thành công rồi thì giờ mình cần phải tải database xuống và thêm vào Unity.

Chọn Unity Editor khi tải xuống nhé!

Tải xuống xong và mở bằng Unity Editor thì sẽ hiện lên cửa sổ Import như sau nhé.

Cửa sổ Import Package trong Unity Editor sau khi đã tải database xuống

TẠO VÀ HIỂN THỊ VẬT THỂ 3D

Bước 1: Tạo Vuforia ARCamera

ARCamera là một built-in camera nằm trong package của Vuforia Engine. Nếu bạn đặt câu hỏi là  tại sao không sử dụng camera mặc định của Unity thì ARCamera là một phần của framework và để nhận diện được những model được nạp vào Vuforia database thì phải sử dụng một camera chuyên biệt. Để tạo một ARCamera thì tụi mình cần chọn Game Object -> Vuforia Engine -> AR Camera. Hầu hết các object của Vuforia đều trong tab Vuforia Engine này nhé.

Bước 2: Tạo Image Target

Bước đầu tiên để tạo một object AR thì mình cần phải tạo một Image Target bằng cách chọn Game Object -> Vuforia Engine -> Image Target.

Nếu bạn để ý thì có khá là nhiều option khác nhau Target, ở đây mình sử dụng Image Target là vì mình đang cần khởi tạo một Target độc lập dựa trên ảnh của target được nạp vào. Có các option như Area Target sẽ dùng để hiển thị các nhiều object trên một vùng target được xác định. Với mỗi trường hợp thì mình sẽ sử dụng tùy biến các target option.

Sau khi đã khởi tạo một Image Target thì các bạn cần thả Image Target đó vào Scene view của Unity bằng cách kéo thả thông thường khi làm Unity nhé.

Chọn vật thể 100 nghìn đồng trên Scene View thì sẽ có 1 tab Inspector được mở ra để điều chỉnh thuộc tính. Trong tab này sẽ có 1 trường là Image Target Behaviour. Trường này sẽ được dùng để thiết lập ảnh từ database cho target của bạn.

Chọn type là From Database, database sẽ lên tên của database mà bạn muốn truyền image và image target của mình là 100VND. Và thành quả nhận được trên Scene View lúc này là

100 nghìn đồng bên trong scene view!!!

Bước 2: Thêm 3D Object và Image Target

Với những bạn đã có kinh nghiệm với Unity từ trước thì các bạn chỉ cần tạo hoặc "kéo thả" một 3D object có sẵn. Ở đây mình có 1 con Among Us 3D từ sketch fab nên mình dùng luôn.

Xong rồi thì giờ mình chỉ cần chạy sản phẩm mình làm thôi.

🎉🎈🎇🎆✨ Mission Complete! 🎉🎈🎇🎆✨

Và đó là 2 tập trong Series Unity AR & Vuforia giới thiệu cho các bạn cách để đến với công nghệ thực tế ảo tăng cường một cách đơn giản nhất. Tuy nhiên vì đây là một framework riêng biệt nên nó vẫn còn nhiều hạn chế. Ví dụ như khi bạn để 2 image target giống nhau vào thì ARCamera không nhận diện được cả hai và chỉ trả về object được hiển thị trên 1 image target. Nhưng mà nếu chỉ làm những trò nghịch để khoe với bạn bè thì chỉ với Vuforia + Unity là quá đủ. À mà ngoài ra các bạn còn có thể phát triển game AR bằng framework này như phát triền một game 3D bình thường nhé. Các logic của Unity đều được hỗ trợ cả.

Góc Của Chung

Góc Của Chung