Я пытаюсь внедрить тестирование на попадание в моем приложении webXR.В функции onSessionStarted я устанавливаю систему координат, но я вынужден делать это в «модели головы».Когда я пытаюсь установить его на уровне глаз, я получаю эту ошибку:
Необработанный отказ от обещания: поддерживается только проверка попадания модели головы
Это моеФункция onSessionStarted:
onSessionStarted = async () => {
this.setState({ isARSessionStarted: true, arMessage: 'session started' });
this.renderer = new THREE.WebGLRenderer({
alpha: true,
preserveDrawingBuffer: true,
});
this.scene = new THREE.Scene();
this.renderer.autoClear = false;
this.renderer.shadowMap.enabled = true;
this.renderer.shadowMap.type = THREE.PCFSoftShadowMap;
this.gl = this.renderer.getContext();
await this.gl.setCompatibleXRDevice(this.session.device);
this.session.baseLayer = new window.XRWebGLLayer(this.session, this.gl);
const framebuffer = this.session.baseLayer.framebuffer;
this.renderer.setFramebuffer(framebuffer);
// this.camera.matrixAutoUpdate = false;
// this.camera.position.z = 100;
this.camera = new THREE.PerspectiveCamera();
this.frameOfRef = await this.session.requestFrameOfReference('head-model');
this.session.requestAnimationFrame(this.onXRFrame);
};
Так что поведение моего приложения странное.Когда я хочу добавить объект на поверхность, он вместо этого «прилипает к дисплею» и перемещается вместе с камерой.Это вызвано «моделью головы»?Есть ли способ это исправить?Я нахожусь на iOS в браузере XRViewer.
Спасибо!