Example #1
0
        void OnPlaneChanged(ARPlanesChangedEventArgs args)
        {
            var added   = args.added.Select(plane => ToBoundedPlane(plane)).ToArray();
            var updated = args.updated.Select(plane => ToBoundedPlane(plane)).ToArray();
            var removed = args.removed.Select(plane => (TrackableId)plane.trackableId).ToArray();

            var meshes = new Dictionary <TrackableId, byte[]>();

            foreach (var plane in args.added)
            {
                meshes[plane.trackableId] = plane.boundary.ToRawBytes();
            }
            foreach (var plane in args.updated)
            {
                meshes[plane.trackableId] = plane.boundary.ToRawBytes();
            }

            planeInfo = new ARKitRemotePacket.PlaneInfo()
            {
                added   = added,
                updated = updated,
                removed = removed,
                meshes  = meshes,
            };
        }
Example #2
0
 protected override void OnPacketTransformer(ARKitRemotePacket packet)
 {
     packet.plane = planeInfo;
     planeInfo    = null;
 }