Ejemplo n.º 1
0
    void OnPreRender()
    {
        Controller controller = provider.GetLeapController();
        long       start      = controller.Now();

        if (!_requestedImage.IsComplete)
        {
            _lateImages++;
        }
        while (!_requestedImage.IsComplete)
        {
            if (controller.Now() - start > 9000)
            {
                break;
            }
        }
        if (_requestedImage.IsComplete)
        {
            //Debug.Log("controller_.Now():" + controller.Now() + " - CurrentFrame.Timestamp:" + image.Timestamp + " = " + (controller.Now() - image.Timestamp));
            //Debug.Log("LeapImageRetriever.OnPreRender image.SequenceId: " + image.SequenceId);
            if (_eyeTextureData.CheckStale(_requestedImage, _requestedImage))
            {
                _eyeTextureData.Reconstruct(_requestedImage, _requestedImage);
            }
            _eyeTextureData.UpdateTextures(_requestedImage, _requestedImage);
        }
        else
        {
            //            Debug.Log("Shucks");
            _superLateImages++;
        }
    }
Ejemplo n.º 2
0
 void OnPreRender()
 {
     if (!_provider.IsConnected())
     {
         return;
     }
     if (imagesEnabled)
     {
         Controller controller = _provider.GetLeapController();
         long       start      = controller.Now();
         while (!_requestedImage.IsComplete)
         {
             if (controller.Now() - start > ImageTimeout)
             {
                 break;
             }
         }
         if (_requestedImage.IsComplete)
         {
             if (_eyeTextureData.CheckStale(_requestedImage, _requestedImage))
             {
                 _eyeTextureData.Reconstruct(_requestedImage, _requestedImage);
             }
             _eyeTextureData.UpdateTextures(_requestedImage, _requestedImage);
         }
         else if (!checkingImageState)
         {
             StartCoroutine(checkImageMode());
         }
     }
 }
Ejemplo n.º 3
0
    void Update()
    {
        Frame imageFrame = HandController.Main.GetImageFrame();

        using (ImageList brightList = imageFrame.Images)
            using (ImageList rawList = imageFrame.RawImages) {
                if (brightList == null || brightList.Count == 0 || rawList == null || rawList.Count == 0)
                {
                    _missedImages++;
                    if (_missedImages == IMAGE_WARNING_WAIT)
                    {
                        Debug.LogWarning("Can't find any images. " +
                                         "Make sure you enabled 'Allow Images' in the Leap Motion Settings, " +
                                         "you are on tracking version 2.1+ and " +
                                         "your Leap Motion device is plugged in.");
                    }
                    return;
                }
                else
                {
                    _missedImages = 0;
                }

                using (Image leftBright = brightList[LEFT_IMAGE_INDEX])
                    using (Image rightBright = brightList[RIGHT_IMAGE_INDEX])
                        using (Image leftRaw = rawList[LEFT_IMAGE_INDEX])
                            using (Image rightRaw = rawList[RIGHT_IMAGE_INDEX]) {
                                if (_eyeTextureData.CheckStale(leftBright, rightBright, leftRaw, rightRaw))
                                {
                                    _eyeTextureData.Reconstruct(leftBright, rightBright, leftRaw, rightRaw);
                                }
                                _eyeTextureData.UpdateTextures(leftBright, rightBright, leftRaw, rightRaw);
                            }
            }
    }
        private void OnPreRender()
        {
            if (_currentImage != null)
            {
                if (_eyeTextureData.CheckStale(_currentImage))
                {
                    _eyeTextureData.Reconstruct(_currentImage);
                }

                _eyeTextureData.UpdateTextures(_currentImage);
            }
        }