我正在使用Facebook AR Studio,并大致遵循了本教程以满足我的需求:https://blog.tallan.com/2018/04/24/facebook-ar-studio-how-to-use-tap-gestures-to-change-effect-materials/。
然而,当我尝试播放我的项目时,它给了我一个错误-
JavaScript error: Exception in native code while calling afunction: Child not found: ScreenCanvas回溯
下面是我使用的代码。
//includes for base libraries
var Scene = require('Scene');
var Tap = require('TouchGestures');
var Mat = require('Materials');
// base dir
var base =
Scene.root.child('Device').child('Camera').child('Focal
Distance');
var sCanvas = base.child('ScreenCanvas');
var NoEffectButton = sCanvas.child('NoEffectButton');
var StageOneButton = sCanvas.child('StageOneButton');
var effectVisibility = false;
// facemesh
var faceMesh =
base.child('facetracker0').child('StageOneFaceMesh');
Tap.onTap(NoEffectButton).subscribe(function(event){
setEffectVisibility(false);
});
Tap.onTap(StageOneButton).subscribe(function(event){
faceMesh.material =
Mat.get('coldsore');
setEffectVisibility(true);
});
function setEffectVisibility(option){
if(effectVisibility !== option){
effectVisibility = option;
faceMesh.cameraVisibility.forFrontCamera = effectVisibility;
faceMesh.cameraVisibility.forRearCamera = effectVisibility;
faceMesh.cameraVisibility.forUnspecifiedCamera =
effectVisibility;
}
}发布于 2018-10-03 00:28:34
这很可能意味着场景中没有名为"ScreenCanvas“的对象作为"base”的子对象。您可能只是目标错误,或者有一个拼写错误。
尝试使用Diagnostics.log(base)来确保您的目标元素是正确的。祝好运!
https://stackoverflow.com/questions/52598687
复制相似问题