Khám phá sức mạnh của Phân Loại Mặt Phẳng WebXR. Hướng dẫn toàn diện này cho nhà phát triển bao gồm cách nhận dạng sàn, tường và bàn để xây dựng trải nghiệm AR nhận biết ngữ cảnh và thực sự đắm chìm trên web.
Mở Khóa AR Thông Minh Hơn: Phân Tích Chuyên Sâu về Phân Loại Mặt Phẳng WebXR
Thực tế Tăng cường (AR) đã vượt ra ngoài những sự mới lạ đơn giản và đang nhanh chóng phát triển thành một công cụ tinh vi, kết hợp liền mạch thế giới kỹ thuật số và vật lý của chúng ta. Các ứng dụng AR ban đầu cho phép chúng ta đặt một mô hình 3D của một con khủng long trong phòng khách, nhưng nó thường lơ lửng một cách khó xử giữa không trung hoặc giao cắt một cách không tự nhiên với đồ đạc. Trải nghiệm đó thật kỳ diệu, nhưng lại mong manh. Mảnh ghép còn thiếu chính là ngữ cảnh. Để AR thực sự đắm chìm, nó cần phải hiểu thế giới mà nó đang tăng cường. Đây là lúc WebXR Device API, và cụ thể là Phát hiện Mặt phẳng, phát huy tác dụng. Nhưng ngay cả điều đó cũng chưa đủ. Biết rằng có một bề mặt là một chuyện; biết được đó là loại bề mặt gì lại là một chuyện hoàn toàn khác.
Đây là bước nhảy vọt được cung cấp bởi Phân loại Mặt phẳng WebXR, còn được gọi là nhận dạng bề mặt ngữ nghĩa. Đây là một công nghệ cho phép các ứng dụng AR dựa trên web phân biệt giữa sàn nhà, tường, bàn và trần nhà. Sự phân biệt tưởng chừng đơn giản này là một sự thay đổi mô hình, cho phép các nhà phát triển tạo ra những trải nghiệm thực tế hơn, thông minh hơn và hữu ích hơn trực tiếp trong trình duyệt web, có thể truy cập bởi hàng tỷ thiết bị trên toàn thế giới mà không cần tải xuống ứng dụng gốc. Trong hướng dẫn toàn diện này, chúng ta sẽ khám phá các nguyên tắc cơ bản của việc phát hiện mặt phẳng, đi sâu vào sức mạnh của việc phân loại, xem xét việc triển khai thực tế và nhìn vào tương lai thú vị mà nó mở ra cho web đắm chìm.
Đầu tiên, Nền tảng: Phát hiện Mặt phẳng trong WebXR là gì?
Trước khi chúng ta có thể phân loại một bề mặt, trước tiên chúng ta phải tìm thấy nó. Đây là công việc của Phát hiện Mặt phẳng, một tính năng nền tảng của các hệ thống AR hiện đại. Về cơ bản, phát hiện mặt phẳng là một quá trình trong đó một thiết bị, sử dụng máy ảnh và cảm biến chuyển động (một kỹ thuật thường được gọi là SLAM - Simultaneous Localization and Mapping), quét môi trường vật lý để xác định các bề mặt phẳng.
Khi bạn bật tính năng 'plane-detection' trong một phiên WebXR, nền tảng AR cơ bản của trình duyệt (như ARCore của Google trên Android hoặc ARKit của Apple trên iOS) sẽ liên tục phân tích thế giới. Nó tìm kiếm các cụm điểm đặc trưng nằm trên một mặt phẳng chung. Khi tìm thấy một mặt phẳng, nó sẽ hiển thị nó cho ứng dụng web của bạn dưới dạng một đối tượng XRPlane. Mỗi XRPlane cung cấp thông tin quan trọng:
- Vị trí và Hướng: Một ma trận cho bạn biết mặt phẳng được định vị ở đâu trong không gian 3D và nó được định hướng như thế nào (ví dụ: ngang hoặc dọc).
- Đa giác (Polygon): Một tập hợp các đỉnh xác định ranh giới 2D của bề mặt được phát hiện. Đây thường không phải là một hình chữ nhật hoàn hảo; nó thường là một đa giác không đều đại diện cho phần bề mặt mà thiết bị đã xác định một cách chắc chắn.
- Thời gian cập nhật lần cuối: Một dấu thời gian cho biết thông tin của mặt phẳng được cập nhật lần cuối khi nào, cho phép bạn theo dõi các thay đổi khi hệ thống tìm hiểu thêm về môi trường.
Thông tin cơ bản này vô cùng mạnh mẽ. Nó cho phép các nhà phát triển vượt ra ngoài các đối tượng lơ lửng và tạo ra các trải nghiệm mà nội dung ảo có thể được neo một cách thực tế vào các bề mặt trong thế giới thực. Bạn có thể đặt một chiếc bình hoa ảo trên một chiếc bàn thật, và nó sẽ ở đó khi bạn đi xung quanh nó. Tuy nhiên, một hạn chế đáng kể vẫn còn: ứng dụng của bạn không biết đó là một chiếc bàn. Nó chỉ là một 'mặt phẳng ngang'. Bạn không thể ngăn người dùng đặt chiếc bình hoa lên 'mặt phẳng tường' hoặc 'mặt phẳng sàn', dẫn đến các tình huống vô lý phá vỡ ảo ảnh của thực tế.
Bước vào Phân loại Mặt phẳng: Gán Ý nghĩa cho các Bề mặt
Phân loại Mặt phẳng là sự tiến hóa hợp lý tiếp theo. Đây là một phần mở rộng của tính năng phát hiện mặt phẳng, bổ sung một nhãn ngữ nghĩa cho mỗi mặt phẳng được phát hiện. Thay vì chỉ nói với bạn, "Đây là một bề mặt ngang," nó nói với bạn, "Đây là một bề mặt ngang, và tôi rất tin tưởng rằng đó là một sàn nhà."
Điều này đạt được thông qua các thuật toán tinh vi, thường được cung cấp bởi các mô hình học máy, chạy trên thiết bị. Các mô hình này đã được đào tạo trên các bộ dữ liệu khổng lồ về môi trường trong nhà để nhận ra các đặc điểm, vị trí và hướng đặc trưng của các bề mặt phổ biến. Ví dụ, một mặt phẳng ngang lớn, thấp có khả năng là sàn nhà, trong khi một mặt phẳng dọc lớn có khả năng là tường. Một mặt phẳng ngang nhỏ hơn, được nâng lên có lẽ là một cái bàn hoặc bàn làm việc.
Khi bạn yêu cầu một phiên WebXR với tính năng phát hiện mặt phẳng, hệ thống có thể cung cấp một thuộc tính semanticLabel cho mỗi XRPlane. Đặc tả chính thức phác thảo một bộ nhãn được tiêu chuẩn hóa bao gồm các bề mặt phổ biến nhất trong môi trường trong nhà:
floor: Bề mặt sàn chính của một căn phòng.wall: Các bề mặt thẳng đứng bao quanh một không gian.ceiling: Bề mặt phía trên đầu của một căn phòng.table: Một bề mặt phẳng, được nâng lên thường dùng để đặt đồ vật.desk: Tương tự như bàn, thường được sử dụng để làm việc hoặc học tập.couch: Một bề mặt ngồi mềm, có đệm. Mặt phẳng được phát hiện có thể đại diện cho khu vực ngồi.door: Một rào cản có thể di chuyển được sử dụng để đóng một lối mở trên tường.window: Một ô mở trên tường, thường được phủ bằng kính.other: Một nhãn chung cho các mặt phẳng được phát hiện không phù hợp với các danh mục khác.
Nhãn chuỗi đơn giản này biến một mẩu dữ liệu hình học thành một mẩu hiểu biết về ngữ cảnh, mở ra một thế giới các khả năng để tạo ra các tương tác AR thông minh hơn và đáng tin cậy hơn.
Tại sao Phân loại Mặt phẳng là một Yếu tố Thay đổi Cuộc chơi cho Trải nghiệm Đắm chìm
Khả năng phân biệt giữa các loại bề mặt không chỉ là một cải tiến nhỏ; nó thay đổi cơ bản cách chúng ta có thể thiết kế và xây dựng các ứng dụng AR. Nó nâng chúng từ những trình xem đơn giản thành các hệ thống thông minh, tương tác, phản ứng với môi trường thực tế của người dùng.
Nâng cao Tính chân thực và Sự đắm chìm
Lợi ích tức thì nhất là sự gia tăng đáng kể về tính chân thực. Các đối tượng ảo bây giờ có thể hành xử theo logic của thế giới thực. Một quả bóng rổ ảo nên nảy trên một bề mặt được dán nhãn floor, chứ không phải trên một wall. Một khung ảnh kỹ thuật số chỉ nên được đặt trên một wall. Một tách cà phê ảo nên được đặt tự nhiên trên một table, chứ không phải trên ceiling. Bằng cách thực thi các quy tắc đơn giản này dựa trên các nhãn ngữ nghĩa, bạn ngăn chặn những khoảnh khắc phá vỡ sự đắm chìm nhắc nhở người dùng rằng họ đang ở trong một môi trường mô phỏng.
Giao diện Người dùng (UI) Thông minh hơn
Trong AR truyền thống, các yếu tố UI thường trôi nổi trước máy ảnh (một 'màn hình hiển thị trên đầu' hoặc HUD) hoặc được đặt một cách khó xử trong thế giới. Với phân loại mặt phẳng, UI có thể trở thành một phần của môi trường. Hãy tưởng tượng một ứng dụng trực quan hóa kiến trúc nơi các công cụ đo lường tự động bám vào tường, hoặc một sách hướng dẫn sản phẩm hiển thị các hướng dẫn tương tác trực tiếp trên bề mặt của đối tượng, mà nó xác định là một desk hoặc table. Các menu và bảng điều khiển có thể được chiếu lên một wall trống gần đó, giải phóng tầm nhìn trung tâm của người dùng.
Vật lý Nâng cao và Sự che khuất (Occlusion)
Hiểu cấu trúc của môi trường cho phép các mô phỏng vật lý phức tạp và thực tế hơn. Một nhân vật ảo trong một trò chơi có thể điều hướng một cách thông minh trong phòng, đi trên floor, nhảy lên một couch, và tránh các walls. Hơn nữa, kiến thức này giúp ích cho việc che khuất. Mặc dù việc che khuất thường được xử lý bằng cảm biến độ sâu, việc biết rằng một table ở phía trước floor có thể giúp hệ thống đưa ra quyết định tốt hơn về việc phần nào của một đối tượng ảo đang đứng trên sàn nhà nên bị che khuất khỏi tầm nhìn.
Ứng dụng Nhận biết Ngữ cảnh
Đây là nơi sức mạnh thực sự nằm. Các ứng dụng bây giờ có thể điều chỉnh chức năng của chúng dựa trên môi trường của người dùng.
- Một ứng dụng thiết kế nội thất có thể quét một căn phòng và, khi xác định được
floorvàwalls, tự động tính toán diện tích và đề xuất các cách bố trí đồ đạc phù hợp. - Một ứng dụng thể dục có thể hướng dẫn người dùng thực hiện động tác chống đẩy trên
floorhoặc đặt chai nước của họ trên mộttablegần đó. - Một trò chơi AR có thể tự động tạo ra các cấp độ dựa trên bố cục phòng của người dùng. Kẻ thù có thể bò ra từ dưới một
couchđược phát hiện hoặc phá vỡ mộtwall.
Khả năng Tiếp cận và Điều hướng
Nhìn xa hơn, nhận dạng bề mặt ngữ nghĩa là một công nghệ nền tảng cho các ứng dụng hỗ trợ. Một ứng dụng WebXR có thể giúp một người khiếm thị điều hướng một không gian mới bằng cách truyền đạt bằng lời nói về bố cục: "Có một lối đi rõ ràng trên floor phía trước, với một table ở bên phải của bạn và một door trên wall trước mặt bạn." Điều này biến AR từ một phương tiện giải trí thành một tiện ích nâng cao cuộc sống.
Hướng dẫn Thực hành: Triển khai Phân loại Mặt phẳng WebXR
Hãy chuyển từ lý thuyết sang thực hành. Làm thế nào để bạn thực sự sử dụng tính năng này trong mã của mình? Mặc dù các chi tiết cụ thể có thể thay đổi một chút tùy thuộc vào thư viện 3D bạn sử dụng (như Three.js, Babylon.js, hoặc A-Frame), các lệnh gọi API WebXR cốt lõi là phổ biến. Chúng ta sẽ sử dụng Three.js cho các ví dụ của mình vì nó là một lựa chọn phổ biến cho việc phát triển WebXR.
Điều kiện tiên quyết và Hỗ trợ Trình duyệt
Đầu tiên, điều quan trọng là phải thừa nhận rằng WebXR, và đặc biệt là các tính năng tiên tiến hơn của nó, là công nghệ tiên tiến. Hỗ trợ vẫn chưa phổ biến.
- Thiết bị: Bạn cần một điện thoại thông minh hoặc tai nghe hiện đại hỗ trợ AR (tương thích ARCore cho Android, tương thích ARKit cho iOS).
- Trình duyệt: Hỗ trợ chủ yếu có sẵn trong Chrome cho Android. Luôn kiểm tra các tài nguyên như caniuse.com để biết thông tin tương thích mới nhất.
- Ngữ cảnh An toàn: WebXR yêu cầu một ngữ cảnh an toàn (HTTPS hoặc localhost).
Bước 1: Yêu cầu Phiên XR (XR Session)
Để sử dụng phân loại mặt phẳng, bạn phải yêu cầu nó một cách rõ ràng khi bạn yêu cầu phiên 'immersive-ar' của mình. Điều này được thực hiện bằng cách thêm 'plane-detection' vào mảng requiredFeatures. Mặc dù các nhãn ngữ nghĩa là một phần của tính năng này, không có cờ riêng cho chúng; nếu hệ thống hỗ trợ phân loại, nó sẽ cung cấp các nhãn khi phát hiện mặt phẳng được bật.
async function activateXR() { if (navigator.xr) { try { const session = await navigator.xr.requestSession('immersive-ar', { requiredFeatures: ['local', 'hit-test', 'plane-detection'] }); // Session setup code goes here... } catch (e) { console.error("Failed to start AR session:", e); } } }
Bước 2: Truy cập các Mặt phẳng trong Vòng lặp Kết xuất (Render Loop)
Khi phiên của bạn đang chạy, bạn sẽ có một vòng lặp kết xuất (một hàm chạy cho mỗi khung hình, thường sử dụng `session.requestAnimationFrame`). Bên trong vòng lặp này, đối tượng `XRFrame` cung cấp cho bạn một ảnh chụp nhanh về trạng thái hiện tại của thế giới AR. Đây là nơi bạn có thể truy cập tập hợp các mặt phẳng được phát hiện.
Các mặt phẳng được cung cấp trong một `XRPlaneSet`, là một đối tượng giống như `Set` của JavaScript. Bạn có thể lặp qua tập hợp này để lấy từng `XRPlane` riêng lẻ. Điều quan trọng là kiểm tra thuộc tính `semanticLabel` trên mỗi mặt phẳng.
function onXRFrame(time, frame) { const pose = frame.getViewerPose(referenceSpace); if (pose) { // ... update camera and other objects const planes = frame.detectedPlanes; // This is the XRPlaneSet planes.forEach(plane => { // Check if we have seen this plane before if (!scenePlaneObjects.has(plane)) { // A new plane has been detected console.log(`New plane found with label: ${plane.semanticLabel}`); createPlaneVisualization(plane); } }); } session.requestAnimationFrame(onXRFrame); }
Bước 3: Trực quan hóa các Mặt phẳng đã Phân loại (Ví dụ với Three.js)
Bây giờ đến phần thú vị: sử dụng phân loại để thay đổi cách chúng ta trực quan hóa các bề mặt. Một kỹ thuật gỡ lỗi và phát triển phổ biến là mã hóa màu cho các mặt phẳng dựa trên loại của chúng. Điều này cung cấp cho bạn phản hồi trực quan ngay lập tức về những gì hệ thống đang xác định.
Đầu tiên, hãy tạo một hàm trợ giúp trả về một vật liệu có màu khác nhau dựa trên nhãn ngữ nghĩa.
function getMaterialForLabel(label) { switch (label) { case 'floor': return new THREE.MeshBasicMaterial({ color: 0x00ff00, transparent: true, opacity: 0.5 }); // Green case 'wall': return new THREE.MeshBasicMaterial({ color: 0x0000ff, transparent: true, opacity: 0.5 }); // Blue case 'table': case 'desk': return new THREE.MeshBasicMaterial({ color: 0xffff00, transparent: true, opacity: 0.5 }); // Yellow case 'ceiling': return new THREE.MeshBasicMaterial({ color: 0xff00ff, transparent: true, opacity: 0.5 }); // Magenta default: return new THREE.MeshBasicMaterial({ color: 0x808080, transparent: true, opacity: 0.5 }); // Gray } }
Tiếp theo, chúng ta sẽ viết hàm tạo đối tượng 3D cho một mặt phẳng. Đối tượng `XRPlane` cung cấp cho chúng ta một đa giác được xác định bởi một tập hợp các đỉnh. Chúng ta có thể sử dụng các đỉnh này để tạo một `THREE.Shape`, sau đó đùn nó một chút để tạo độ dày và làm cho nó có thể nhìn thấy.
const scenePlaneObjects = new Map(); // To keep track of our planes function createPlaneVisualization(plane) { // Create the geometry from the plane's polygon vertices const polygon = plane.polygon; const shape = new THREE.Shape(); shape.moveTo(polygon[0].x, polygon[0].z); for (let i = 1; i < polygon.length; i++) { shape.lineTo(polygon[i].x, polygon[i].z); } shape.closePath(); const geometry = new THREE.ShapeGeometry(shape); geometry.rotateX(-Math.PI / 2); // Rotate to align with horizontal/vertical orientation // Get the right material for the label const material = getMaterialForLabel(plane.semanticLabel); const mesh = new THREE.Mesh(geometry, material); // Position and orient the mesh using the plane's pose const pose = new THREE.Matrix4(); pose.fromArray(plane.transform.matrix); mesh.matrix.copy(pose); mesh.matrixAutoUpdate = false; scene.add(mesh); scenePlaneObjects.set(plane, mesh); }
Hãy nhớ rằng tập hợp các mặt phẳng có thể thay đổi. Các mặt phẳng mới có thể được thêm vào, các mặt phẳng hiện có có thể được cập nhật (đa giác của chúng có thể phát triển), và một số có thể bị loại bỏ nếu hệ thống sửa đổi sự hiểu biết của nó. Vòng lặp kết xuất của bạn cần xử lý điều này bằng cách theo dõi các đối tượng `XRPlane` mà bạn đã tạo lưới và loại bỏ các lưới cho các mặt phẳng biến mất khỏi tập hợp `detectedPlanes`.
Các Trường hợp Sử dụng trong Thế giới Thực và Nguồn cảm hứng
Với nền tảng kỹ thuật đã có, hãy quay lại xem điều này cho phép những gì. Tác động lan rộng trên nhiều ngành công nghiệp.
Thương mại điện tử và Bán lẻ
Đây là một trong những lĩnh vực có ý nghĩa thương mại quan trọng nhất. Các công ty như IKEA đã chứng minh sức mạnh của việc đặt đồ nội thất ảo. Phân loại mặt phẳng đưa điều này lên một tầm cao mới. Người dùng có thể chọn một tấm thảm và ứng dụng sẽ chỉ cho phép họ đặt nó trên các bề mặt được dán nhãn floor. Họ có thể thử một chiếc đèn chùm mới và nó sẽ bám vào ceiling. Điều này loại bỏ sự phiền phức cho người dùng và làm cho trải nghiệm thử đồ ảo trở nên trực quan và thực tế hơn nhiều, dẫn đến sự tự tin mua hàng cao hơn.
Trò chơi và Giải trí
Hãy tưởng tượng một trò chơi mà thú cưng ảo hiểu được ngôi nhà của bạn. Một con mèo có thể ngủ trưa trên couch, một con chó có thể đuổi theo quả bóng trên floor, và một con nhện có thể bò lên wall. Các trò chơi phòng thủ tháp có thể được chơi trên table của bạn, với kẻ thù tôn trọng các cạnh. Mức độ tương tác môi trường này tạo ra những trải nghiệm chơi game sâu sắc và có thể chơi lại vô tận.
Kiến trúc, Kỹ thuật và Xây dựng (AEC)
Các chuyên gia có thể sử dụng WebXR để trực quan hóa các thiết kế tại chỗ với độ chính xác cao hơn. Một kiến trúc sư có thể chiếu một phần mở rộng tường ảo và xem chính xác nó thẳng hàng với wall vật lý hiện có như thế nào. Một người quản lý xây dựng có thể đặt một mô hình 3D của một thiết bị lớn trên floor để đảm bảo nó vừa vặn và để lên kế hoạch hậu cần. Điều này giảm thiểu sai sót và cải thiện giao tiếp giữa các bên liên quan.
Đào tạo và Mô phỏng
Đối với đào tạo công nghiệp, WebXR có thể tạo ra các mô phỏng an toàn và tiết kiệm chi phí. Một học viên có thể học cách vận hành một máy móc phức tạp bằng cách đặt một mô hình ảo trên một desk thực. Hướng dẫn và cảnh báo có thể xuất hiện trên các bề mặt wall liền kề, tạo ra một môi trường học tập phong phú, nhận biết ngữ cảnh mà không cần các thiết bị mô phỏng vật lý đắt tiền.
Thách thức và Con đường phía trước
Mặc dù vô cùng hứa hẹn, Phân loại Mặt phẳng WebXR vẫn là một công nghệ mới nổi và có những thách thức riêng.
- Độ chính xác và Độ tin cậy: Việc phân loại là xác suất, không phải xác định. Một chiếc bàn cà phê thấp có thể ban đầu bị nhận dạng nhầm là một phần của
floor, hoặc một chiếc bàn bừa bộn có thể không được nhận dạng. Độ chính xác phụ thuộc nhiều vào phần cứng của thiết bị, điều kiện ánh sáng và sự phức tạp của môi trường. Các nhà phát triển cần thiết kế các trải nghiệm đủ mạnh để xử lý các phân loại sai đôi khi. - Tập hợp Nhãn Hạn chế: Tập hợp nhãn ngữ nghĩa hiện tại rất hữu ích nhưng còn lâu mới đầy đủ. Nó không bao gồm các đối tượng phổ biến như cầu thang, mặt bàn bếp, ghế hoặc giá sách. Khi công nghệ trưởng thành, chúng ta có thể mong đợi danh sách này sẽ mở rộng, cung cấp sự hiểu biết về môi trường chi tiết hơn nữa.
- Hiệu suất: Việc liên tục quét, tạo lưới và phân loại môi trường đòi hỏi nhiều tính toán. Nó tiêu thụ pin và sức mạnh xử lý, là những tài nguyên quan trọng trên các thiết bị di động. Các nhà phát triển phải chú ý đến hiệu suất để đảm bảo trải nghiệm người dùng mượt mà.
- Quyền riêng tư: Về bản chất, công nghệ cảm biến môi trường thu thập thông tin chi tiết về không gian cá nhân của người dùng. Đặc tả WebXR được thiết kế với quyền riêng tư làm cốt lõi—tất cả quá trình xử lý diễn ra trên thiết bị và không có dữ liệu máy ảnh nào được gửi đến trang web. Tuy nhiên, điều quan trọng là ngành công nghiệp phải duy trì lòng tin của người dùng thông qua sự minh bạch và các mô hình đồng ý rõ ràng.
Các hướng đi trong Tương lai
Tương lai của nhận dạng bề mặt rất tươi sáng. Chúng ta có thể dự đoán những tiến bộ trong một số lĩnh vực chính. Tập hợp các nhãn ngữ nghĩa có thể phát hiện chắc chắn sẽ tăng lên. Chúng ta cũng có thể thấy sự trỗi dậy của các bộ phân loại tùy chỉnh, nơi một nhà phát triển có thể sử dụng các framework học máy dựa trên web như TensorFlow.js để đào tạo một mô hình nhận dạng các đối tượng hoặc bề mặt cụ thể liên quan đến ứng dụng của họ. Hãy tưởng tượng một ứng dụng của thợ điện có thể xác định và dán nhãn các loại ổ cắm tường khác nhau. Việc tích hợp phân loại mặt phẳng với các mô-đun WebXR khác, như DOM Overlay API, sẽ cho phép tích hợp chặt chẽ hơn nữa giữa nội dung web 2D và thế giới 3D.
Kết luận: Xây dựng một Web Nhận biết Không gian
Phân loại Mặt phẳng WebXR đại diện cho một bước tiến vĩ đại hướng tới mục tiêu cuối cùng của AR: một sự hợp nhất liền mạch và thông minh giữa kỹ thuật số và vật lý. Nó đưa chúng ta từ việc chỉ đơn giản là đặt nội dung vào thế giới đến việc tạo ra các trải nghiệm có thể thực sự hiểu và tương tác với thế giới. Đối với các nhà phát triển, đó là một công cụ mới mạnh mẽ mở ra một cấp độ cao hơn về tính chân thực, tiện ích và sáng tạo. Đối với người dùng, nó hứa hẹn một tương lai nơi AR không chỉ là một sự mới lạ mà còn là một phần trực quan và không thể thiếu trong cách chúng ta học hỏi, làm việc, giải trí và kết nối với thông tin.
Web đắm chìm vẫn còn trong giai đoạn đầu, và chúng ta là những kiến trúc sư của tương lai của nó. Bằng cách nắm bắt các công nghệ như phân loại mặt phẳng, các nhà phát triển có thể bắt đầu xây dựng thế hệ tiếp theo của các ứng dụng nhận biết không gian ngay hôm nay. Vì vậy, hãy bắt đầu thử nghiệm, xây dựng các bản demo, chia sẻ những phát hiện của bạn và giúp định hình một trang web hiểu được không gian xung quanh chúng ta.