Интеграция 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
с новыми ценностями, которые, я верю, решат вашу проблему.