Значение сигнала AR искры - PullRequest
1 голос
/ 19 марта 2019

Я пытаюсь сохранить скалярное значение сигнала для будущего использования в качестве текстуры с программным обеспечением Spark AR.

По сути, использование текстуры камеры на материале записано в виде сценария:

const texture = Textures.get('CameraTexture').signal;
const material = Materials.get('defaultMaterial0');
material.setTexture(texture, {textureSlotName: "diffuseTexture"})

Мне не ясно, к какому классу относится текстура const, но я предполагаю, что это ScalarSignal .

Это означает, что это поток, а не значение.Как мне сделать снимок этого значения?lastValue не работает, и при попытке valueOf() я получаю

Ошибка JavaScript: исключение в собственном коде при вызове функции: valueOf (), вызываемой для сигнала.Это, вероятно, означает, что вы пытаетесь выполнить арифметическую операцию для сигнала, такого как +, -, * и т. Д. Вместо этого используйте функции .add, .sub () и т. Д. Для сигнала или .subscribeWithSnapshot () в EventSource, чтобы получитьтекущее значение сигнала при обратном вызове.

И subscribeWithSnapshot() не является функцией ..

Если у кого-либо есть идеи, как я могу это сделать, или конкретная причина, почему я могуТ, помощь будет оценена!

Спасибо!

1 Ответ

1 голос
/ 21 марта 2019

Вы не можете. В настоящее время в SparkAr запрещено сохранять текстуры. И я думаю, что тип данных должен быть буфером текстур (в конце концов ...)

РЕДАКТИРОВАТЬ: Кроме того, сигнал текстуры камеры это не скалярный сигнал, а сигнал Shader. Вы можете проверить это:

Diagnostics.log(Textures.get('CameraTexture').signal);
...