reckfellENGINE

XRAnchor3D

Anchor-pose Entity binding and a local plane.

On this page
class XRAnchor3DReckfellSharpInherits XREntity3D

XRAnchor3D inherits XREntity3D: select Tracker, then Pose, and parent the Entity directly under XROrigin3D. It enables no AR detection and does not guarantee platform-created anchor trackers. The data provider determines names and availability.

GetPlane builds an infinite plane from local Position and local Transform Y. This is parent space, not world space. The following executed helper adds the origin transform once:

C#
using System;
using Reckfell;

public static class AnchorPlane
{
    // Infinite geometric plane only: no tracking-validity or detected-area claim.
    public static Plane ToWorld(XRAnchor3D anchor)
    {
        ArgumentNullException.ThrowIfNull(anchor);
        if (!anchor.IsInsideTree() || anchor.GetParent() is not XROrigin3D origin)
            throw new ArgumentException("Expected an anchor directly under an in-tree XROrigin3D.");
        return origin.GlobalTransform * anchor.GetPlane();
    }
}

Plane contains no bounds, collision geometry or proof of a detected surface. Check the current pose separately before interaction. GetSize currently remains zero even after pose updates: no extent-population path is implemented. Do not use it as floor area or collider dimensions.

Local geometry, the world helper, synthetic tracker transforms and zero size were checked. No real AR surface, platform spatial anchoring, anchor persistence or boundary detection was tested. Tracking state: XREntity3D.

Declarations checked against C# SDK 1.0.0. Expand a name to see declarations and documentation.

Constructors1

XRAnchor3DConstructor
# XRAnchor3D
C#
public XRAnchor3D();

Creates a tracker-bound Entity inheriting Tracker/Pose from XREntity3D. Enables no surface detection and automatically creates no AR session or tracker. Requires a separate data provider.

Methods2

GetPlanePlane
# GetPlane
C#
public Plane GetPlane();

Builds an infinite Plane from Position and the normalized Y axis of local Transform. The result is in parent space, not world space. Does not validate tracking or establish detected surfaces. Apply the parent GlobalTransform once for world space; Plane contains no detected-area bounds.

Returns Plane

Infinite parent-space plane, not detected AR-area bounds.

GetSizeVector3
# GetSize
C#
public Vector3 GetSize();

Currently returns a zero Vector3: pose updates change the transform but do not populate size. Do not use it as detected-surface width/length or build a collider from it. This class supplies no established AR-area bounds.

Returns Vector3

Vector3.Zero in the current implementation; detected-area size is not populated.

Reckfell Engine documentationBack to top ↑
QUICK LINKSGetting startedEntity hierarchyC# & .NET 10Scenes and prefabs
Reckfell guides and full API K
reckfellENGINE
RECKFELL ACCOUNT

Sign in

Sign in to your Reckfell account.

One account for the entire Reckfell platform.