immersive-web / real-world-geometry

Additions to WebXR Device API for exposing real world data (Lead: Piotr Bialecki). Plane detection: https://immersive-web.github.io/real-world-geometry/plane-detection.html
Other
72 stars 14 forks source link

Add support for 3D geometry #38

Open cabanier opened 1 year ago

cabanier commented 1 year ago

Quest room setup allows for the creation of 3D objects and we'd like to expose those like we do for planes. For future proofing, I think we can expose them as meshes (like we do for planes). I believe Hololens already has APIs to expose the real world this way.

Should we extend the plane API or create a new mesh API that is almost identical to the plane one?

AdaRoseCannon commented 1 year ago

/agenda

RaananW commented 1 year ago

Babylon native has support for a similar feature that uses the same API as the plane API - https://github.com/BabylonJS/Babylon.js/blob/master/packages/dev/core/src/XR/features/WebXRMeshDetector.ts

It also extends the webxr types to support the feature - https://github.com/BabylonJS/Babylon.js/blob/master/packages/dev/core/src/LibDeclarations/webxr.nativeextensions.d.ts#L29

It is not supported on the web, of course, but it will be great to have an API to make it work in Web as well.

cabanier commented 1 year ago

That's very cool that you already implemented this natively. I made a quick replace of plane with mesh and created this spec proposal: https://cabanier.github.io/real-world-geometry/mesh-detection.html It seems to match closely what you implemented.

cabanier commented 1 year ago

It seemed that there were no objections during the meeting. @AdaRoseCannon What do I need to do to make this an official spec/repository?

cabanier commented 1 year ago

@AdaRoseCannon @himorin Can one of you make a repository for WebXR Meshes?

cabanier commented 1 year ago

https://cabanier.github.io/real-world-geometry/mesh-detection.html contains an initial proposal. During the weekly call, we discussed that an author might like to know if this API returns a fine mesh.

/facetoface discuss WebXR Mesh proposal. Do we need to flag if a mesh is fine/precise?

AdaRoseCannon commented 1 year ago

@cabanier we already made it :)

https://github.com/immersive-web/real-world-meshing

cabanier commented 1 year ago

@cabanier we already made it :)

Thanks! I moved the spec to https://immersive-web.github.io/real-world-meshing/mesh-detection.html

himorin commented 1 year ago

@cabanier we already made it :)

Thanks! I moved the spec to https://immersive-web.github.io/real-world-meshing/mesh-detection.html

oh, I've set ghaction working with index.bs. do we want to have filename other than that?

cabanier commented 1 year ago

ah. Sure, I will update the repo with that filename.