Интеграция JPCT-AE с Vuforia

Я интегрирую JPCT-AE с Vuforia для образца Vuforia ImageTarget модель чайника. Я следовал за ответом Кельмара и Сэма Рэда, и теперь я могу представить свою модель так же, как и чайник, но только в ландшафтном режиме.

:::::НО:::::::

Когда я делаю изменения в initApplication() в ImageTarget

int screenOrientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR; 
                                        or  ORIENTATION_PORTRATE;

Моя модель начинает рендерить тут и там на экране, что означает, что чайник не обрабатывается. Как я понимаю, нам нужно что-то изменить матрицу, чтобы отрендерить модель в портретном режиме.

Но я не знаю как. Если у вас есть идеи, напишите мне в ближайшее время.

1 ответ

Это цитата из примера кода Vuforia:

Set the screen orientation
        //
        // NOTE: It is recommended to set this because of the following reasons:
        //
        //    1.) Before Android 2.2 there is no reliable way to query the
        //        absolute screen orientation from an activity, therefore using 
        //        an undefined orientation is not recommended. Screen 
        //        orientation matching orientation sensor measurements is also
        //        not recommended as every screen orientation change triggers
        //        deinitialization / (re)initialization steps in internal QCAR 
        //        SDK components resulting in unnecessary overhead during 
        //        application run-time.
        //
        //    2.) Android camera drivers seem to always deliver landscape images
        //        thus QCAR SDK components (e.g. camera capturing) need to know 
        //        when we are in portrait mode. Before Android 2.2 there is no 
        //        standard, device-independent way to let the camera driver know 
        //        that we are in portrait mode as each device seems to require a
        //        different combination of settings to rotate camera preview 
        //        frames images to match portrait mode views. Because of this,
        //        we suggest that the activity using the QCAR SDK be locked
        //        to landscape mode if you plan to support Android 2.1 devices
        //        as well. Froyo is fine with both orientations.

На странице "Изменение Screen.orientation во время выполнения" я прочитал, что высота и ширина экрана не меняются, если вы меняете ориентацию. Они остаются такими же, как ориентация по умолчанию, что приводит к неправильному отслеживанию.

Лично я не думаю, что вы получите хороший результат, если вы смените ориентацию, но чтобы убедиться, что вы можете обратиться в службу поддержки Vuforia. команда. Проверьте сами, чтобы увидеть, изменяются ли высота и ширина экрана во время переключения ориентации или нет. Если это так, вы можете создать свой FrameBuffer с новыми ценностями, которые, я верю, решат вашу проблему.

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