目的は、方向の変化に応じてスムーズに回転する本iPhone 3D Programming hereのような単純な 2D 矢印コンパス アプリケーションを作成することです。
AndroidManifest.xml (向きの変更を購読)
<activity android:name="android.app.NativeActivity"
android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden">
AndroidApp.cpp (回転角度取得)
void AndroidApp::handleCmd (int32_t cmd) {
switch (cmd) {
case APP_CMD_CONFIG_CHANGED:
// Your code here
break;
}
}
RenderingEngine.cpp (シーンのレンダリング時に矢印を回転させる角度を格納)
void RenderingEngine::OnRotate(DeviceOrientation orientation)
{
float angle = 0;
switch (orientation) {
case DeviceOrientationLandscapeLeft:
angle = 270;
break;
case DeviceOrientationPortraitUpsideDown:
angle = 180;
break;
case DeviceOrientationLandscapeRight:
angle = 90;
break;
}
m_desiredAngle = angle;
}