【发布时间】:2018-12-06 11:18:17
【问题描述】:
我正在使用带有云识别的 vuforia 视频播放演示。 我已经结合了这两个项目并且它工作正常。但目前视频尺寸是根据检测到的对象。但是播放视频时我需要固定的宽度和高度。 谁能帮我 ? 提前致谢。
【问题讨论】:
-
我也遇到了同样的问题。谁有解决方案?
标签: vuforia
我正在使用带有云识别的 vuforia 视频播放演示。 我已经结合了这两个项目并且它工作正常。但目前视频尺寸是根据检测到的对象。但是播放视频时我需要固定的宽度和高度。 谁能帮我 ? 提前致谢。
【问题讨论】:
标签: vuforia
显然,无论对象的大小如何,Vuforia 都会在游戏开始时固定宽度和高度。我无法找到执行此操作的确切时间,但它是在您的游戏开始时完成的。当您在运行时更改 ImageTarget 的大小时,它不再是固定的。将这些行添加到 DefaultTrackableEventHandler.cs 的 OnTrackingFound 函数中
if (this.name == "WhateverTheNameOfYourRelatedImageTarget"&& !isScaled)
{
//Increase the size however you want i just added 1 to each dimension
this.transform.localScale += Vector3.one;
// make isScaled true not to scale every time it is found initially it shoud be false
isScaled = true;
}
祝你好运!
【讨论】:
我通常做的是,而不是 Videoplayback ,我在画布对象上播放视频并将此对象挂钩到 Defaulttrackableeventhandler 脚本。所以当找到目标时,gameobject.setactive(true) 和gameobject.setactive(false) 当目标丢失时。通过这种方法,游戏对象的大小是固定的,并且它停留在一个固定的位置。
我刚刚做了一个例子,你可以得到here(必须将它导入任何项目并打开场景Assets/VideoExample/Examples)。您可以更清楚地看到 ScreenSpace - Overlay 的作用......一般来说切换到 ScreenSpace - Camera 可能会更好
【讨论】: