示例#1
0
        void Start()
        {
            if (Controller != null && Tracker != null)
            {
                //VRObjectMimic controllerMimic = VRMimic.Instance.FindMimicOfObject(Controller);
                VRObjectMimic controllerMimic = VRMimic.Instance.AddTrackedObject(Controller, controllerMimicType);

                if (controllerMimic == null)
                {
                    //Setup controller tracker
                }
                else
                {
                    controllerMimic.Init(Controller);
                }

                VRObjectMimic mimic = VRMimic.Instance.AddTrackedObject(Tracker);
                if (mimic == null)
                {
                }
                else
                {
                    mimic.Init(Tracker);
                }

                ArmMimic newArm = VRMimic.Instance.ActiveBodyMimic.CreateArm(MySide, mimic, controllerMimic);
                Debug.Log("Created new arm.\n\t[Click to select it]", newArm);
            }
        }
示例#2
0
        private VRObjectMimic InitVRCamera(GameObject vrCamera = null)
        {
            GameObject go = new GameObject();

            go.transform.SetParent(transform);
            go.name   = "[" + vrCamera.name + "] Mimic";
            _vrCamera = go.AddComponent <VRObjectMimic>();
            _vrCamera.Init(vrCamera);
            _vrCamera.MimickedObjectType = VRObjectMimic.TypeOfMimickedObject.Camera;
            return(_vrCamera);
        }
示例#3
0
        private VRObjectMimic InitCameraRig(GameObject vrCamera = null)
        {
            if (vrCamera.transform.parent != null)
            {
                GameObject go = new GameObject();
                go.transform.SetParent(transform);
                go.name = "[Camera Rig Mimic]";

                CameraRig = go.AddComponent <VRObjectMimic>();
                CameraRig.Init(vrCamera.transform.parent.gameObject);
                CameraRig.ObjectToMimic      = vrCamera.transform.parent.gameObject;
                CameraRig.MimickedObjectType = VRObjectMimic.TypeOfMimickedObject.CameraRig;
                return(CameraRig);
            }
            Debug.LogError("Failed to initialize Camera Rig Mimic.\n\tLikely can't identify the camera rig root for the provided vr camera.\n");
            return(null);
        }
示例#4
0
        private VRObjectMimic InitVRCamera(GameObject vrCamera = null)
        {
            GameObject go = new GameObject();

            go.transform.SetParent(transform);
            go.name   = "[" + vrCamera.name + "] Mimic";
            _vrCamera = go.AddComponent <VRObjectMimic>();
            _vrCamera.Init(vrCamera);
            _vrCamera.MimickedObjectType = VRObjectMimic.TypeOfMimickedObject.Camera;

            go = new GameObject();
            var collider = go.AddComponent <SphereCollider>();

            collider.isTrigger = true;
            collider.radius    = .35f;
            var rb = go.AddComponent <Rigidbody>();

            rb.constraints = RigidbodyConstraints.FreezeAll;
            go.name        = "Player Head Collider";
            go.transform.SetParent(_vrCamera.transform);

            return(_vrCamera);
        }