【发布时间】:2016-09-28 20:14:18
【问题描述】:
请帮我解决这个问题 我用unity3d和vuforia编写了一个应用程序,在检测到跟踪器后播放视频,我想在摄像机中检测到后修复视频并停止跟踪,我在TrackableEventHandler.cs中编辑了onTrackingFound和onTrackingLost方法几次但我无法解决它,请帮忙我想办法解决。非常感谢我的朋友。 onTrackingFound 方法是:
private void OnTrackingFound()
{
Renderer[] rendererComponents = GetComponentsInChildren<Renderer>();
Collider[] colliderComponents = GetComponentsInChildren<Collider>();
// Enable rendering:
foreach (Renderer component in rendererComponents)
{
component.enabled = true;
}
// Enable colliders:
foreach (Collider component in colliderComponents)
{
component.enabled = true;
}
Debug.Log("Trackable " + mTrackableBehaviour.TrackableName + " found");
// Optionally play the video automatically when the target is found
VideoPlaybackBehaviour video = GetComponentInChildren<VideoPlaybackBehaviour>();
if (video != null && video.AutoPlay)
{
if (video.VideoPlayer.IsPlayableOnTexture())
{
VideoPlayerHelper.MediaState state = video.VideoPlayer.GetStatus();
if (state == VideoPlayerHelper.MediaState.PAUSED ||
state == VideoPlayerHelper.MediaState.READY ||
state == VideoPlayerHelper.MediaState.STOPPED)
{
// Pause other videos before playing this one
PauseOtherVideos(video);
// Play this video on texture where it left off
video.VideoPlayer.Play(false, video.VideoPlayer.GetCurrentPosition());
}
else if (state == VideoPlayerHelper.MediaState.REACHED_END)
{
// Pause other videos before playing this one
PauseOtherVideos(video);
// Play this video from the beginning
video.VideoPlayer.Play(false, 0);
}
}
}
mHasBeenFound = true;
mLostTracking = false;
}
onTrackingLost 方法是:
private void OnTrackingLost()
{
Renderer[] rendererComponents = GetComponentsInChildren<Renderer>();
Collider[] colliderComponents = GetComponentsInChildren<Collider>();
/*
// Disable rendering:
foreach (Renderer component in rendererComponents)
{
component.enabled = false;
}
// Disable colliders:
foreach (Collider component in colliderComponents)
{
component.enabled = false;
}
*/
Debug.Log("Trackable " + mTrackableBehaviour.TrackableName + " lost");
mLostTracking = false;
mSecondsSinceLost = 0;
}
【问题讨论】:
标签: c# android unity3d vuforia