Cómo establecer HelloWorld Plantilla 0.99.5 a orientación vertical?
-
29-09-2019 - |
Pregunta
Estoy tratando de hacer esto con el cambio de archivos
GameConfig.h
#define GAME_AUTOROTATION kGameAutorotationNone
y Aplicación delegado
//#if GAME_AUTOROTATION == kGameAutorotationUIViewController
[director setDeviceOrientation:kCCDeviceOrientationPortrait];
//#else
//[director setDeviceOrientation:kCCDeviceOrientationLandscapeLeft];
//#endif
Aplicación pondrá en el modo retrato, pero los cuerpos Box2D gravedad a derecha obligó
Solución
Usted debe editar el archivo en línea de RootViewController.m
88:
return (UIInterfaceOrientationIsLandscape(interfaceOrientation));
y el cambio a:
return (UIInterfaceOrientationIsPortrait(interfaceOrientation));
Esta configuración sólo tiene efecto cuando GAME_AUTOROTATION
se define como kGameAutorotationUIViewController
, en GameConfig.h
.
///////
Otros consejos
en caso de necesidad a nadie Soy consciente de que este es un viejo tema, pero en caso de que alguien se encuentra con este problema en el futuro, aquí está mi solución:
En la función de acelerómetro de HelloWorldLayer.mm la gravedad se establece con esta línea
b2Vec2 gravity( -accelY * 10, accelX * 10);
Con el fin de simular el efecto deseado en el modo vertical, la línea debe ser re-ordenó a:
b2Vec2 gravity( accelX * 10, accelY * 10);