android - SplashScene not centered -


i trying out andengine , cannot work out why splashscreen not centered in device - see image below. have set default size device (800, 480) , placed splash @ camera.getwidth() / 2. seems corner of splash hits center pretty spot on want center of splash centered - makes sense?

screen:

mainactivity:

package com.example.caspe.getmeout;  import org.andengine.engine.engine; import org.andengine.engine.limitedfpsengine; import org.andengine.engine.camera.camera; import org.andengine.engine.handler.timer.itimercallback; import org.andengine.engine.handler.timer.timerhandler; import org.andengine.engine.options.screenorientation; import org.andengine.engine.options.wakelockoptions; import org.andengine.engine.options.resolutionpolicy.ratioresolutionpolicy;     import org.andengine.engine.options.engineoptions; import org.andengine.entity.scene.scene; import java.io.ioexception;   public class mainactivity extends basegameactivity {     private resourcesmanager resourcesmanager;     private static final int camera_width = 800;     private static final int camera_height = 480;     private camera camera;      public engineoptions oncreateengineoptions() {         camera = new camera(0, 0, camera_width, camera_height);         engineoptions engineoptions = new engineoptions(true, screenorientation.landscape_fixed, new ratioresolutionpolicy(800, 480), this.camera);         engineoptions.getaudiooptions().setneedsmusic(true).setneedssound(true);         engineoptions.setwakelockoptions(wakelockoptions.screen_on);         return engineoptions;     }      @override     public engine oncreateengine(engineoptions pengineoptions) {         return new limitedfpsengine(pengineoptions, 60);     }      @override     public void oncreateresources(oncreateresourcescallback poncreateresourcescallback) throws exception {         resourcesmanager.preparemanager(mengine, this, camera, getvertexbufferobjectmanager());         resourcesmanager = resourcesmanager.getinstance();         poncreateresourcescallback.oncreateresourcesfinished();     }      @override     public void oncreatescene(oncreatescenecallback poncreatescenecallback) throws ioexception {         scenemanager.getinstance().createsplashscene(poncreatescenecallback);     }      @override     public void onpopulatescene(scene pscene, onpopulatescenecallback ponpopulatescenecallback) throws ioexception {         mengine.registerupdatehandler(new timerhandler(2f, new itimercallback() {             public void ontimepassed(final timerhandler ptimerhandler) {                 mengine.unregisterupdatehandler(ptimerhandler);                 // load menu resources, create menu scene                 // set menu scene using scene manager                 // disposesplashscene();             }         }));         ponpopulatescenecallback.onpopulatescenefinished();     }  } 

and code splash:

package com.example.caspe.getmeout;  import org.andengine.engine.camera.camera; import org.andengine.entity.sprite.sprite; import org.andengine.opengl.util.glstate; import com.example.caspe.getmeout.basescene; import com.example.caspe.getmeout.scenemanager.scenetype  public class splashscene extends basescene {      private sprite splash;      @override     public void createscene() {         splash = new sprite(0,0, resourcesmanager.splash_region, vbom) {             @override             protected void predraw(glstate pglstate, camera pcamera) {                 super.predraw(pglstate, pcamera);                 pglstate.enabledither();             }         };          splash.setscale(1.5f);         splash.setposition(camera.getwidth() / 2, camera.getheight() / 2);         attachchild(splash);     }      @override     public void onbackkeypressed() {     }      @override     public scenetype getscenetype() {         return scenetype.scene_splash;     }      @override     public void disposescene() {         splash.detachself();         splash.dispose();         this.detachself();         this.dispose();     }  } 

please let me know if need more code this. not directly seeking working piece of code more error can use braincells , work out - have stared myself blind here.

splash.setposition(camera.getwidth() / 2, camera.getheight() / 2); 

that not enough. splash centered correctly: top left corner in center.

what need subtract half width , height of splash position, too.

// untested code splash.setposition(camera.getwidth() / 2 - splash.getwidth() / 2, camera.getheight() / 2 - splash.getheight() / 2); 

Comments

Popular posts from this blog

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

linux - disk space limitation when creating war file -