package com.github.daemontus.ar.libgdx; import android.util.Log; import com.badlogic.gdx.Game; import com.badlogic.gdx.graphics.FPSLogger; import com.github.daemontus.ar.vuforia.VuforiaRenderer; /** * Instance of libgdx Game class responsible for rendering 3D content over augmented reality. */ public class Engine extends Game { private FPSLogger fps; private VuforiaRenderer vuforiaRenderer; private boolean isCreated = false; private int width = 0; private int height = 0; private Display mDisplay; @Override public void create () { fps = new FPSLogger(); mDisplay = new Display(); mDisplay.setVuforiaRenderer(vuforiaRenderer); setScreen(mDisplay); if (vuforiaRenderer != null) { vuforiaRenderer.onSurfaceCreated(); } isCreated = true; } @Override public void resize(int width, int height) { super.resize(width, height); this.width = width; this.height = height; Log.d("ENGINE", "Resize: "+width+"x"+height); if (vuforiaRenderer != null) vuforiaRenderer.onSurfaceChanged(width, height); } @Override public void render () { super.render(); fps.log(); } public void setVuforiaRenderer(VuforiaRenderer vuforiaRenderer) { this.vuforiaRenderer = vuforiaRenderer; if (isCreated) { mDisplay.setVuforiaRenderer(vuforiaRenderer); vuforiaRenderer.onSurfaceCreated(); } if (width != 0 && height != 0) resize(width, height); } }