Example #1
0
    void Start()
    {
        srWorksHand = gameObject.GetComponent <SRWorksHand>();

        if (srWorksHand.showHandMesh)
        {
            enableDepthMask = false;
        }

        // get depth mask for occlusion
        GameObject root            = GameObject.Find("Anchor (Left)");
        Transform  trans           = root.transform.Find("DepthMask (left)");
        GameObject depthObjectTest = null;

        if (trans != null)
        {
            depthObjectTest = trans.gameObject;
        }
        if (depthObjectTest == null)
        {
            GameObject quad = Instantiate(depthMask);
            quad.transform.parent = root.transform;
            quad.name             = "DepthMask";
            quad.SetActive(true);
        }
        else
        {
            depthMask.SetActive(true);
            root       = GameObject.Find("Anchor (Right)");
            depthMaskR = root.transform.Find("DepthMask (right)").gameObject;
            depthMaskR.SetActive(true);
        }

        StartLoadReconstructData();
    }
Example #2
0
    IEnumerator _waitReconstructMeshLoadDone()
    {
        yield return(new WaitForSeconds(1));

        //Set touch hand
        SRWorksHand.Instance.SetDetectHand(null, handRacketMover, null);

        //enable depth mask
        if (enableDepthMask)
        {
            ViveSR_DualCameraImageRenderer.UpdateDepthMaterial = true;
        }
        else
        {
            SRWorksHand.GetDynamicHand().gameObject.layer = LayerMask.NameToLayer("HandTouch");
        }
    }