Ejemplo n.º 1
0
        public static SrdXrResult CreateSession(out IntPtr session)
        {
            var devices  = new SrdXrDeviceInfo[1];
            var resultED = SRDCorePlugin.EnumerateDevices(devices, (uint)devices.Length);
            SrdXrSessionCreateInfo info;
            {
                info.platform_id       = SrdXrPlatformId.PLATFORM_ID_SRD;
                info.coordinate_system = SrdXrCoordinateSystem.COORDINATE_SYSTEM_LEFT_Y_UP_Z_FORWARD;
                info.coordinate_unit   = SrdXrCoordinateUnit.COORDINATE_UNIT_METER;
                info.device            = devices[0];
            }
            var resultCS = XRRuntimeAPI.CreateSession(ref info, out session);

            return((resultED != SrdXrResult.SUCCESS) ? resultED : resultCS);
        }
Ejemplo n.º 2
0
        public static bool GetSRDScreenRect(out SRDSettings.ScreenRect screenRect)
        {
            var size = SRDCorePlugin.CountDevices();

            if (size == 0)
            {
                screenRect = new SRDSettings.ScreenRect();
                return(false);
            }

            SrdXrDeviceInfo[] devices = { new SrdXrDeviceInfo(), };
            SRDCorePlugin.EnumerateDevices(devices, 1);

            var target = devices[0].target_monitor_rectangle;
            var width  = target.right - target.left;
            var height = target.bottom - target.top;

            screenRect = new SRDSettings.ScreenRect(target.left, target.top, width, height);
            return(true);
        }