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++; } }
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()); } } }
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); } }