【问题标题】:How to Play a Video in a Vuforia Image Target in Unity?如何在 Unity 的 Vuforia 图像目标中播放视频?
【发布时间】:2019-02-10 16:30:05
【问题描述】:

如何使用 Unity 在 Vuforia Image 目标中播放视频? Vuforia 核心样本似乎过于复杂。

【问题讨论】:

    标签: unity3d vuforia


    【解决方案1】:

    没有必要过度复杂化。只需使用 Quad 和 VideoPlayer。

    1. 创建一个 Quad 作为 Image 目标的子级
    2. 创建一个 VideoPlayer 作为 Quad 的子级。请务必将 Video Clip 属性设置为您要播放的视频

    设置应如下所示:

    1. 将 VideoPlayer 的 Renderer 属性设置为之前创建的 Quad
    2. 取消选中 VideoPlayer 上的 Play on Wake 属性
    3. 使用此脚本播放和停止 VideoPlayer。将脚本放在图像目标上

      使用 System.Collections; 使用 System.Collections.Generic; 使用 UnityEngine; 使用 UnityEngine.Events; 使用 Vuforia;

      公共类 ImageTargetBehaviour : MonoBehaviour, ITrackableEventHandler { 私人 TrackableBehaviour mTrackableBehaviour; 公共 UnityEvent myStartEvent; 公共 UnityEvent myStopEvent;

      void Start()
      {
          mTrackableBehaviour = GetComponent<TrackableBehaviour>();
          if (mTrackableBehaviour)
          {
              mTrackableBehaviour.RegisterTrackableEventHandler(this);
          }
      }
      
      public void OnTrackableStateChanged(
                                      TrackableBehaviour.Status previousStatus,
                                      TrackableBehaviour.Status newStatus)
      {
          if (newStatus == TrackableBehaviour.Status.DETECTED ||
              newStatus == TrackableBehaviour.Status.TRACKED ||
              newStatus == TrackableBehaviour.Status.EXTENDED_TRACKED)
          {
              // When target is found
              myStartEvent.Invoke();
          }
          else
          {
              // When target is lost
              myStopEvent.Invoke();
          }
      }
      

      }

    4. 现在在此脚本的组件检查器中启动和停止 VideoPlayer

    【讨论】:

    • 提示:当检测到/未检测到图像目标时,您可以使用上面的脚本来启动和停止任何操作。例如音频
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多