根据 Spark AR 脚本中张开的嘴来隐藏和显示对象

Hide and show object depending on mouth open in Spark AR scripting

我在 Spark AR Studio 中使用一个脚本来尝试显示和隐藏一个人头顶上的灯泡。灯泡隐藏 bulb.hidden 我试过 bulb.visible 不成功。有任何想法吗?代码如下:

(async function () {
    Scene.root.findFirst('Sphere').then(bulb => {
        // bulb.hidden = FaceTracking.face(0).mouth.openness
        bulb.hidden = true
        bulb.visible = FaceTracking.face(0).mouth.openness.gt(0.3);
    })
bulb.hidden = true  //this will show the bulb  
bulb.hidden = false //this will hide the bulb
bulb.visible        //this is not a valid property

你想要的是:

bulb.hidden = FaceTracking.face(0).mouth.openness.gt(0.3);

当嘴巴张开度大于 .3 时,这会将 bulb.hidden 设置为真,即当嘴巴张开时,隐藏灯泡。

或者,如果您想在嘴巴张开时显示灯泡,请使用 lt(小于)而不是 gt(大于),如下所示:

bulb.hidden = FaceTracking.face(0).mouth.openness.lt(0.3);

有关可用于 ScalarSignals 的所有不同方法的信息,请参阅 ScalarSignal 文档页面...有很多:

https://sparkar.facebook.com/ar-studio/learn/reference/classes/reactivemodule.scalarsignal/