Проблема с получением камеры для работы на Away3DLite
Я реализовал приложение дополненной реальности для Android с использованием Adobe Air для Android, FLARManager, Away3DLite. Программа отлично работает на вспышке, однако, когда я публикую ее на своем мобильном телефоне (HTC Nexus One) или запускаю на эмуляторе, моя камера не активируется, и все, что я вижу, это цвет моего фона и отображение частоты кадров.
Я думаю, что проблема в Camera3D, которую я использовал, это FLARCamera_Away3DLite от FLARManager.
Вот так я установил свою камеру
import com.transmote.flar.camera.FLARCamera_Away3DLite;
private var camera3D:FLARCamera_Away3DLite;
this.camera3D = new FLARCamera_Away3DLite(this.flarManager, new Rectangle(0, 0, this.stage.stageWidth, this.stage.stageHeight));
Я буду очень признателен за любые советы, которые я могу получить от вас.
Спасибо Джордж
1 ответ
Я думаю, что вы ошибаетесь в классе камеры. Используемый вами класс камеры - это камера в вашем "виртуальном" трехмерном мире, которая снимает ваш трехмерный мир. "Фильм", который он делает, идет в класс View, который может показать ваш трехмерный мир 2d. Ваш экран является 2D-экраном и не способен отображать 3D. Класс камеры в сочетании с видом преобразует 3D-сцену в 2D-изображение, отображаемое на экране.
Но так как вы хотите сделать приложение AR, вы имеете в виду камеру телефона. Вы не можете использовать класс Away 3D камеры для этого. Из этого туториала Вы узнаете, как использовать камеру вашего телефона andriod во вспышке.
Шаги, которые вы хотите предпринять, - это получить ваш канал телекамеры и пропустить это на экране. Затем используйте FLARtoolkit, чтобы определить положение вашего маркера. А затем отрегулируйте 3D-модель в соответствии с положением маркера. И последнее по порядку, но не по значению: покажите 3d-модель на экране (используя камеру away3d / papervision и вид). Таким образом, в основном у вас есть 2 слоя во флеш-приложении. 1 фоновый слой, который является фидом вашей телефонной камеры, а другой слой (поверх него) - это ваш взгляд с away3d или papervision.
Я думаю, что если вы объедините эти уроки, вы можете сделать свое приложение: