Проблемы FLARToolKit Camera3D с Away3D 4.1.4 Gold

Я загрузил последнюю сборку FLARToolKit и Away3D 4.1.4 Gold, и оказалось, что пользовательский класс поддержки Camera3D, поставляемый с FLARToolKit, больше не совместим. Я продолжаю получать эту ошибку.

Error: An abstract method was called! Either an instance of an abstract class was created, or an abstract method was not overridden by the subclass.
at away3d.cameras.lenses::LensBase/unproject()
at away3d.cameras::Camera3D/unproject()
at away3d.containers::View3D/unproject()
at away3d.core.pick::RaycastPicker/getViewCollision()
at away3d.core.managers::Mouse3DManager/updateCollider()
at away3d.containers::View3D/render()

По сути, я только что воссоздал предоставленный образец класса с помощью FLARToolKit, который имеет следующую строку при настройке представления Away3D:

_view.camera = _markerSystem.getAway3DCamera();

Кажется, метод unproject() необходимо переопределить. Хотя это и возврат универсального вектора решает проблему, вероятно, это делает метод бесполезным! Я недостаточно знаю о трехмерных преобразованиях и матрицах, чтобы правильно их переопределить.

Кто-нибудь сталкивался с этой проблемой? Если да, то как вы ее решили?

Away3D: http://away3d.com

FLARToolKit: http://www.libspark.org/wiki/saqoosha/FLARToolKit/en

Спасибо!


person SpaceCowboy2071    schedule 12.09.2013    source источник


Ответы (1)


Я думаю, что это проблема, связанная с выбором мыши, потому что ошибка возникает только тогда, когда мышь находится над представлением. Я отключил выбор мыши в view3d, и сообщение исчезло, но это вывело сцену из интерактивности:

view3d.mouseEnabled = false;
view3d.mouseChildren = false;
view3d.mousePicker = null;

В то время как г-н Сакуша реализует версию 4.1.4 Gold FLARToolkit

person Juan Fernando    schedule 10.12.2013