I'm working on graduation researc and i was assigned to implement new function in AR mobile app, it works like furniture showroom/catalogue or something like that. The function allows user to place an object on top of another. I am going to use ARFoundation library, ARCore and work on Unity to build the app. The app is currently built specifically for Android.
The basic logic for the function is kind of like this:
Given two virtual 3D object, one is standing and has a flat top surface (table, bed, etc) so that another object can be placed on top of it. Another one is being interacted by user, all possible types of interaction are Placement, Translation, Rotation, Selection, etc.
I've come up with the idea of initializing ARPlane on top of the stackable object, so that I can move another object from floor surface to stackable object's surface by dragging it onto the ARPlane, using ARFoundation's Raycast but the ARPlane can't be created manually by code or C# scripts. I'm aware that the ARPlane Manager is the one in charge of the ARplanes and that it adds, removes, and modifies it's ARplanes.