Показать 3D-объект с COCOS3D поверх AR-View

Я работаю над приложением, которое сканирует изображение и показывает 3D-объект или видео поверх целевого изображения. Нормальное AR-приложение. Для этого AR я использую Vuforia SDK. Проблема в том, что Vuforia SDK не поддерживает анимированные 3D-объекты, и для этого я использую cocos3d.

Поэтому я создал базовое приложение cocos3d и включил свой материал для Vuforia для AR. Это хорошо работает, и приложение отображает обычные 3D-объекты и видео. Это был фон, теперь проблема.

Первый вид, который у меня есть, - это вид с камеры, который сканирует изображения. Если я сейчас сканирую указанную цель, я хочу показать анимированный 3D-объект. Для этого я показываю вид cocos3d поверх AR-View. Представление cocos3d является прозрачным и отображается в верхней части окна AR-View (проверьте это с помощью простой кнопки в представлении cocos3d).

Проблема в том, что я не могу отобразить анимированный 3D-объект. Я протестировал некоторые варианты, но ни один из них не сработал, потому что я не знаю, как это сделать. Мой текущий код:

CCDirector *director = CCDirector.sharedDirector;
EAGLViewCC *glView = [EAGLViewCC viewWithFrame:[window bounds] pixelFormat:kEAGLColorFormatRGBA8 depthFormat:GL_DEPTH_COMPONENT16_OES];

[director setOpenGLView:glView];

[window addSubview:director.openGLView];

После этого у меня есть слой, и я добавляю тестовую сцену в свой слой (стандартный из примера). Но чем я не знаю, как это отобразить. Он попробовал это:

[director pushScene:scene];

но не повезло. В этом примере они используют этот код для отображения объекта (viewController имеет тип "CC3DeviceCameraOverlayUIViewController").

[viewController runSceneOnNode: mainLayer];

Почему я не использую viewController? Потому что я не мог получить прозрачный вид. Итак, как мне отобразить 3D-объект в моем виде? Что мне нужно сделать? Я совершенно не прав?

0 ответов

Другие вопросы по тегам