当前位置: 首页>>代码示例>>C#>>正文


C# KinectManager.GetPlayer1ID方法代码示例

本文整理汇总了C#中KinectManager.GetPlayer1ID方法的典型用法代码示例。如果您正苦于以下问题:C# KinectManager.GetPlayer1ID方法的具体用法?C# KinectManager.GetPlayer1ID怎么用?C# KinectManager.GetPlayer1ID使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在KinectManager的用法示例。


在下文中一共展示了KinectManager.GetPlayer1ID方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Update

    // Update is called once per frame
    void Update()
    {
        km = KinectManager.Instance;
        string trackedJointsString = "Tracked Joints:";
        if (km != null) {
            if (km.IsUserDetected()) {
                uint userId = km.GetPlayer1ID();
                /*trackedJointsString += "\nchecking joints";
                if(km.IsJointTracked(userId, (int)rightHand))
                    trackedJointsString += "\nRight hand";
                if(km.IsJointTracked(userId, (int)rightWrist))
                    trackedJointsString += "\nRight wrist";
                if(km.IsJointTracked(userId, (int)centreHip))
                    trackedJointsString += "\nCentre Hip";
                if(km.IsJointTracked(userId, (int)leftShoulder))
                    trackedJointsString += "\nLeft shoulder";
                if(km.IsJointTracked(userId, (int)centreShoulder))
                    trackedJointsString += "\nCentre shoulder";
                if(km.IsJointTracked(userId, (int)rightShoulder))
                    trackedJointsString += "\nRight shoulder";
                trackedJointsString += "\ndone checking joints";*/

                if (km.IsJointTracked(userId, (int)rightHand) && km.IsJointTracked(userId, (int)rightShoulder))
                    wristVector = km.GetJointPosition(userId, (int)rightHand) - km.GetJointPosition(userId, (int)rightShoulder);
                if (km.IsJointTracked(userId, (int)rightShoulder) && km.IsJointTracked(userId, (int)leftShoulder))
                    shouldersVector = km.GetJointPosition(userId, (int)rightShoulder) - km.GetJointPosition(userId, (int)leftShoulder);
                if (km.IsJointTracked(userId, (int)centreShoulder) && km.IsJointTracked(userId, (int)centreHip))
                    backVector = km.GetJointPosition(userId, (int)centreShoulder) - km.GetJointPosition(userId, (int)centreHip);

                //GramSchmidt Orthonormal Space
                Vector3 e2 = backVector.normalized;
                Vector3 e1 = (shouldersVector - Vector3.Dot (shouldersVector,e2) * e2).normalized;

                wristVectorInPlane = new Vector2(Vector3.Dot(e1, wristVector), Vector3.Dot(e2, wristVector));

            }
        }
        trackedJointsText.text = trackedJointsString;
        CheckPointingTopRight();
    }
开发者ID:christuart,项目名称:EDSAC-Project-Summer-2015,代码行数:41,代码来源:GestureMechanicsController.cs

示例2: Update

    void Update()
    {
        kinectManager = KinectManager.Instance;

        if (kinectManager != null) {

            uint playerID = kinectManager.GetPlayer1ID();

            Vector3 realWorldUserPosition = kinectManager.GetUserPosition(playerID);
            Vector2 inGameUserPosition;

            if (!usingQuadForLocation) {
                inGameUserPosition = new Vector2 (
                    0.5f - Mathf.InverseLerp (leftMostRealWorldX, rightMostRealWorldX, realWorldUserPosition.x),
                    Mathf.InverseLerp (closestRealWorldZ, furthestRealWorldZ, realWorldUserPosition.z));
            } else {
                inGameUserPosition = ProjectRealWorldOntoSquare (new Vector2 (realWorldUserPosition.x, realWorldUserPosition.z));
            }

            SetUserLocation (inGameUserPosition);

        }
    }
开发者ID:christuart,项目名称:EDSAC-Project-Summer-2015,代码行数:23,代码来源:UserController.cs

示例3: Update

    void Update()
    {
        kinectManager = GetComponentInChildren<KinectManager>();
        uint playerID = kinectManager != null ? kinectManager.GetPlayer1ID() : 0;

        //Change the name of the spawned Player gameObject --> Move this to start or awake
        if ((transform.name == "" || transform.name == "Player(Clone)"))
        {
            transform.name = playerUniqueIdentity;
        }
        if (kinectManager != null && kinectManager.AllPlayersCalibrated1)
        {
            MoveCube(playerID);
        }
        else {
            transform.position = MatrixFunk.ExtractTranslationFromMatrix(ref kinectManager.kinectToWorld);
            transform.rotation = MatrixFunk.ExtractRotationFromMatrix(ref kinectManager.kinectToWorld);
        }
    }
开发者ID:nstovring,项目名称:DeathMapping,代码行数:19,代码来源:Player.cs

示例4: Update

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown (KeyCode.Space)) {
            calibrationPoints = new Vector2[] { new Vector2(0.6950065f,1.96167f), new Vector2(-0.8923265f,2.011135f), new Vector2(-1.026978f,3.05445f), new Vector2(1.254533f,3.204662f) };
            demoInstructionText.text = "";
            Application.LoadLevel (postSetupLevelName);
            progress = calibrationProgress.Left_Calibration;
        }

        kinectManager = KinectManager.Instance;
        uint playerID = kinectManager != null ? kinectManager.GetPlayer1ID() : 0;

        switch (progress) {
        case calibrationProgress.One_Started:
        case calibrationProgress.Two_Started:
        case calibrationProgress.Three_Started:
        case calibrationProgress.Four_Started:
            {
                Vector3 realWorldUserPosition = kinectManager.GetUserPosition(playerID);
                realWorldCalPointSum += Time.deltaTime * (new Vector2(realWorldUserPosition.x,realWorldUserPosition.z));
            }
            break;
        }
    }
开发者ID:christuart,项目名称:EDSAC-Project-Summer-2015,代码行数:25,代码来源:SetupGameController.cs


注:本文中的KinectManager.GetPlayer1ID方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。