Free Android 2D OpenGL Game Engine

Overview

AndEngine

Donations

While developing AndEngine was a lot of fun, it also also consumed many(!) months of my life. It actually continues to cost me a significant amount of money to host the AndEngine forums.

If you made profit using your game and can afford to spare a fraction of it to the developer of the game engine you used, I would be very grateful! =)

Bitcoin

The easiest way of donating is via Bitcoin to the AndEngine funds wallet address:

Bitcoin Bitcoin Wallet Address: 1run6zViD16j2rP9evpayu8FqQ6mcRDqi Bitcoin Wallet

Tip4Commit (Bitcoin)

Tip the author (not the project itself) of the next commit to AndEngine:

Bitcoin top for next commit

PayPal

Donation Email: [email protected]

Thank you!

/Nicolas Gramlich

Building

Eclipse

  • AndEngine has to be build with ADT-17 or higher!

IntelliJ IDEA

  • AndEngine relies on ADT to auto-generate a "BuildConfig" class. IntelliJ IDEA (as of 11.1.1) has not fully integrated with ADT-17+. In order to build AndEngine with IntelliJ IDEA, you can simply add the following class yourself in the root package (org.andengine):
package org.andengine;

public final class BuildConfig { 
    public final static boolean DEBUG = true;
}

Branches

  • OpenGL ES 2:
    • Support: [> 93% of all Android devices (Apr. 2012)
    • Branch: GLES2-AnchorCenter
      • Active development.
      • The leatest and greatest.
      • More cocos2d-ish (Coordinate-System in the lower left corner, powerful AnchorCenter system.)
    • Branch: GLES2
      • Not in active development.
  • OpenGL ES 1:
    • Branch: master
    • Not in active development.
    • Support: > 99.0% of all Android devices (Apr. 2012)

Examples

Tests

Extensions

Comments
  • Black screen ( no textures on initialization )

    Black screen ( no textures on initialization )

    EDIT: Originally I posted this problem without digging into it and have found out where the problem stems from and what the effects are.

    The problem is simply initial textures are not appearing on the screen. Anything that would be attached during the activity launch, for example a background image, would be invisible. It is apparent that the sprites are being drawn, the resources are just missing.

    After some snooping around I've come up with some behaviour that I'm sure is the cause of this problem. Here's a link to the post regarding what I've come up with so far for this problem: http://www.andengine.org/forums/gles2/resume-activity-no-texture-reload-maybe-a-bug-t6167.html#p27523

    opened by jaymeschroeder 46
  • [Bug] Nullpointer Exception in BaseGameActivity?

    [Bug] Nullpointer Exception in BaseGameActivity?

    Hello there. Sometimes it occurs that in BaseGameActivity this part here:

    @Override
       public void onResumeGame() {
          Debug.d(this.getClass().getSimpleName() + ".onResumeGame" + " @(Thread: '" + Thread.currentThread().getName() + "')");
    
          this.mEngine.start();
    
          this.mGamePaused = false;
       }
    

    is being executed without mEngine being initialized (at game startup).

    sake

    opened by s4ke 17
  • ShaderProgramException

    ShaderProgramException

    Someone sent me that error report of my game (Juggle The Doodle):

    org.andengine.opengl.shader.exception.ShaderProgramException: Unexpected uniform: 'u_modelViewProjectionMatrix'. at org.andengine.opengl.shader.ShaderProgram.getUniformLocation(ShaderProgram.java:99) at org.andengine.opengl.shader.PositionColorTextureCoordinatesShaderProgram.link(PositionColorTextureCoordinatesShaderProgram.java:83) at org.andengine.opengl.shader.ShaderProgram.compile(ShaderProgram.java:149) at org.andengine.opengl.shader.ShaderProgram.bind(ShaderProgram.java:122) at org.andengine.opengl.shader.PositionColorTextureCoordinatesShaderProgram.bind(PositionColorTextureCoordinatesShaderProgram.java:89) at org.andengine.opengl.vbo.VertexBufferObject.bind(VertexBufferObject.java:150) at org.andengine.entity.sprite.Sprite.preDraw(Sprite.java:175) at org.andengine.entity.Entity.onManagedDraw(Entity.java:1181) at org.andengine.entity.shape.Shape.onManagedDraw(Shape.java:123) at org.andengine.entity.Entity.onDraw(Entity.java:1009) at org.andengine.entity.Entity.onManagedDrawChildren(Entity.java:1203) at org.andengine.entity.Entity.onDrawChildren(Entity.java:1195) at org.andengine.entity.Entity.onManagedDraw(Entity.java:1185) at org.andengine.entity.scene.Scene.onManagedDraw(Scene.java:262) at org.andengine.entity.Entity.onDraw(Entity.java:1009) at org.andengine.entity.scene.Scene.onManagedDraw(Scene.java:269) at org.andengine.entity.Entity.onDraw(Entity.java:1009) at org.andengine.engine.Engine.onDrawScene(Engine.java:560) at org.andengine.engine.Engine.onDrawFrame(Engine.java:552) at org.andengine.opengl.view.EngineRenderer.onDrawFrame(EngineRenderer.java:104) at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1363) at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1118)

    opened by sjvc 16
  • Loading Texture Atlas instead of Texture Region in LWP

    Loading Texture Atlas instead of Texture Region in LWP

    After loading a LWP and then returning to it from another activity the system seems to load the texture atlas' instead of the texture regions.

    See video below for better description

    http://www.youtube.com/watch?v=irW__oCcM_0

    opened by mattjohnpowell 16
  • Error GL_OUT_OF_MEMORY !

    Error GL_OUT_OF_MEMORY !

    Some time error: 04-19 09:09:29.755: E/Adreno200-ES20(21417): <qgl2DrvAPI_glTexImage2D:433>: GL_OUT_OF_MEMORY

    how to fix it ! Thank you...............

    opened by phamquyhai 11
  • FontManager in GLES1

    FontManager in GLES1

    The Text examples in GLES1 examples all crash because of the bug found here:

    http://stackoverflow.com/questions/7607877/stackoverflow-when-trying-to-run-the-text-example-in-the-andengineexamplelaunche

    I understand that GLES1 is probably closed, but 90% of the android market is Android 2.1 or lower, so many people still use the GLES1 branch. Please add the bug fix.

    opened by Lokiare 11
  • java.lang.UnsatisfiedLinkError: Library andengine not found

    java.lang.UnsatisfiedLinkError: Library andengine not found

    This occurs on particular devices. I'm guessing the native library for the chipset can't be found? It's not proguard or anything like that, it's a native library not being found.

    These are the devices I've found so far: Fujitsu Toshiba REGZA Phone T01C(tg03)

    Pantech Vega X(ef14l) Pantech IS06(jmasai)

    And here's the stack trace: java.lang.ExceptionInInitializerError at org.andengine.opengl.vbo.HighPerformanceVertexBufferObject.onBufferData(SourceFile:71) at org.andengine.opengl.vbo.VertexBufferObject.bind(SourceFile:152) at org.andengine.entity.sprite.Sprite.preDraw(SourceFile:170) at org.andengine.entity.Entity.onManagedDraw(SourceFile:1227) at org.andengine.entity.Entity.onDraw(SourceFile:1033) at org.andengine.entity.Entity.onManagedDraw(SourceFile:1256) at org.andengine.entity.scene.Scene.onManagedDraw(SourceFile:262) at org.andengine.entity.Entity.onDraw(SourceFile:1033) at org.andengine.engine.camera.Camera.onDrawHUD(SourceFile:268) at org.andengine.engine.Engine.onDrawFrame(SourceFile:589) at org.andengine.opengl.view.EngineRenderer.onDrawFrame(SourceFile:104) at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1334) at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1118) Caused by: java.lang.UnsatisfiedLinkError: Library andengine not found at java.lang.Runtime.loadLibrary(Runtime.java:461) at java.lang.System.loadLibrary(System.java:557) at org.andengine.opengl.util.BufferUtils.(SourceFile:17) ... 13 more java.lang.UnsatisfiedLinkError: Library andengine not found at java.lang.Runtime.loadLibrary(Runtime.java:461) at java.lang.System.loadLibrary(System.java:557) at org.andengine.opengl.util.BufferUtils.(SourceFile:17) at org.andengine.opengl.vbo.HighPerformanceVertexBufferObject.onBufferData(SourceFile:71) at org.andengine.opengl.vbo.VertexBufferObject.bind(SourceFile:152) at org.andengine.entity.sprite.Sprite.preDraw(SourceFile:170) at org.andengine.entity.Entity.onManagedDraw(SourceFile:1227) at org.andengine.entity.Entity.onDraw(SourceFile:1033) at org.andengine.entity.Entity.onManagedDraw(SourceFile:1256) at org.andengine.entity.scene.Scene.onManagedDraw(SourceFile:262) at org.andengine.entity.Entity.onDraw(SourceFile:1033) at org.andengine.engine.camera.Camera.onDrawHUD(SourceFile:268) at org.andengine.engine.Engine.onDrawFrame(SourceFile:589) at org.andengine.opengl.view.EngineRenderer.onDrawFrame(SourceFile:104) at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1334) at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1118)

    opened by walidhalabi 11
  • ClipEntity nesting does not work

    ClipEntity nesting does not work

    There is a problem when ClipEntities are being nested- it is caused by not restoring glScissor rect properly (test bit is restored, scissor rect is not).

    It can be solved by:

    • pushing "ScissorData" to a stack before (so it is available for anyone to be restored)
                /* Draw children, etc... */
                super.onManagedDraw(pGLState, pCamera);
    
    • popping ScissorData out of the stack
    • peeking stack and restoring scissors to value that was peeked

    I have this stack currently sitting static in my ClipEntity just to prove that it works, but I'm guessing that it should be kept in GLState like this:

    public void applyScissors(ScissorData pScissorData) {
       mScissorsStack.push(pScissorData);
       GLES20.glScissor(pScissorData.minX, pScissorData.minY, pScissorData.width, pScissorData.height);
    }
    
    public void restoreScissors() {
        mScissorsStack.pop();
        if (!mScissorsStack.isEmpty()) {
            ScissorData oldScissor = mScissorsStack.peek();
            GLES20.glScissor(oldScissor.minX, oldScissor.minY, oldScissor.width, oldScissor.height);
        }
    }
    

    If there is something you're willing to pull- let me know. If that's something you want to fix on your own- please do :)

    opened by nazgee 10
  • enable drawing of children behind the parent. default is in front

    enable drawing of children behind the parent. default is in front

    Added ability to draw Entity's children behind the parent. Default is false, so it doesn't change the normal behavior.

    New methods are setDrawChildrenBehindParent(boolean) and isDrawChildrenBehindParent

    Unfortunately I wasn't able to add these to the IEntity interface because BaseMenuItemDecorator extends also from IEntity and there these methods probably don't make no sense.

    Drawing children behind parent is used a lot in our project and I've seen several requests for that feature in the forums for the previous AndEngine.

    opened by vertti 10
  • ChangeableText is gone, Text crashes

    ChangeableText is gone, Text crashes

    Hello there,

    I've switched back to the GLES2 version and now that ChangeableText is gone, I am using Text, but this seems to make the game crash. I don't know when and why, but I will investigate if it's not a misusage of Text that causes crashing. Or to make it precise: Should setText(...) be used on Text objects? Because I get an ArrayIndexOutOfBounds Exception because of that.

    01-28 20:47:40.453: E/AndroidRuntime(29893): FATAL EXCEPTION: UpdateThread 01-28 20:47:40.453: E/AndroidRuntime(29893): java.lang.ArrayIndexOutOfBoundsException 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.entity.text.Text$HighPerformanceTextVertexBufferObject.onUpdateVertices(Text.java:543) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.entity.text.Text.onUpdateVertices(Text.java:330) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.entity.text.Text.setText(Text.java:226) 01-28 20:47:40.453: E/AndroidRuntime(29893): at de.hotware.blockbreaker.android.BlockBreakerActivity$2.onTimePassed(BlockBreakerActivity.java:331) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.engine.handler.timer.TimerHandler.onUpdate(TimerHandler.java:83) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.engine.handler.UpdateHandlerList.onUpdate(UpdateHandlerList.java:47) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.entity.Entity.onManagedUpdate(Entity.java:1269) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.entity.scene.Scene.onManagedUpdate(Scene.java:286) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.entity.Entity.onUpdate(Entity.java:1040) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.engine.Engine.onUpdateScene(Engine.java:563) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.engine.Engine.onUpdate(Engine.java:558) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.engine.Engine.onTickUpdate(Engine.java:520) 01-28 20:47:40.453: E/AndroidRuntime(29893): at org.andengine.engine.Engine$UpdateThread.run(Engine.java:784)

    opened by s4ke 9
  • BuildConfig class missing...

    BuildConfig class missing...

    I've pulled the latest commit and don't seem to have BuildConfig. I did a google search and saw something about building with ADT 17+, which I am, but don't really see how that affects the issue of the missing class...

    opened by levinotik 8
  • Is it possible to pass sprite resolution to the shader?

    Is it possible to pass sprite resolution to the shader?

    I know, that project development is stopped, but I need fix a legacy code: draw Vignette effect programmatically on the sprite. I started from adaptation this shader: https://github.com/mattdesl/lwjgl-basics/wiki/ShaderLesson3 without sepia and other effects, but still not know, how to pass "resolution" vector analog. Currently, I'm passing sprite's width & height, but result light spot is not on center. Maybe, there are some another way to get normalized texture coordinates? Shader is copied from PositionColorTextureCoordinatesShaderProgram Fragment shader is defined as follows:

    "precision lowp float;\n" +
                    "uniform sampler2D " + ShaderProgramConstants.UNIFORM_TEXTURE_0 + ";\n" +
                    "uniform vec2 " + ShaderProgramConstants.UNIFORM_RESOLUTION + ";\n" +
                    "varying lowp vec4 " + ShaderProgramConstants.VARYING_COLOR + ";\n" +
                    "varying mediump vec2 " + ShaderProgramConstants.VARYING_TEXTURECOORDINATES + ";\n" +
                    "void main() {\n" +
                    "vec2 position = (gl_FragCoord.xy / " + ShaderProgramConstants.UNIFORM_RESOLUTION + ".xy) - vec2(0.5);" +
                    "float dist = length(position);" +
                    "float vignette = smoothstep(0.5, 0.01, dist);" +
                    "vec4 texColor = texture2D(" + ShaderProgramConstants.UNIFORM_TEXTURE_0 + ", " + ShaderProgramConstants.VARYING_TEXTURECOORDINATES + ");" +
                    "texColor.rgb = mix(texColor.rgb, texColor.rgb * vignette, 0.5);" +
                    "gl_FragColor = " + ShaderProgramConstants.VARYING_COLOR + " * texColor;\n" +
                    "}"
    

    where UNIFORM_RESOLUTION is 2d array with sprite width & height bound. Maybe, I have to pass another values here?

    opened by Syjgin 0
  • 3 dot overflow menu not showing up

    3 dot overflow menu not showing up

    Since upgrading the app to SDK 28 it seems that the 3dot overflow menu is not showing up and therefore i lost the menu in my app. Appreciate any suggestions to rectify this issue ?

    here is my code

    package com.example.myapplication2;

    import org.andengine.engine.camera.Camera; import org.andengine.engine.options.EngineOptions; import org.andengine.engine.options.ScreenOrientation; import org.andengine.engine.options.resolutionpolicy.RatioResolutionPolicy; import org.andengine.entity.modifier.MoveModifier; import org.andengine.entity.scene.Scene; import org.andengine.entity.scene.background.Background; import org.andengine.entity.scene.menu.MenuScene; import org.andengine.entity.scene.menu.MenuScene.IOnMenuItemClickListener; import org.andengine.entity.scene.menu.item.IMenuItem; import org.andengine.entity.scene.menu.item.SpriteMenuItem; import org.andengine.entity.sprite.Sprite; import org.andengine.entity.util.FPSLogger; import org.andengine.opengl.texture.TextureOptions; import org.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlas; import org.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlasTextureRegionFactory; import org.andengine.opengl.texture.region.ITextureRegion; import org.andengine.ui.activity.SimpleBaseGameActivity;

    import android.opengl.GLES20; import android.view.KeyEvent;

    import android.view.Menu; import android.view.MenuInflater;

    /**

    • (c) 2010 Nicolas Gramlich

    • (c) 2011 Zynga

    • @author Nicolas Gramlich

    • @since 01:30:15 - 02.04.2010 */ public class MainActivity extends SimpleBaseGameActivity implements IOnMenuItemClickListener { // =========================================================== // Constants // ===========================================================

      private static final int CAMERA_WIDTH = 720; private static final int CAMERA_HEIGHT = 480;

      protected static final int MENU_RESET = 0; protected static final int MENU_QUIT = MENU_RESET + 1;

      // =========================================================== // Fields // ===========================================================

      protected Camera mCamera;

      protected Scene mMainScene;

      private BitmapTextureAtlas mBitmapTextureAtlas; private ITextureRegion mFaceTextureRegion;

      protected MenuScene mMenuScene;

      private BitmapTextureAtlas mMenuTexture; protected ITextureRegion mMenuResetTextureRegion; protected ITextureRegion mMenuQuitTextureRegion;

      // =========================================================== // Constructors // ===========================================================

      // =========================================================== // Getter & Setter // ===========================================================

      // =========================================================== // Methods for/from SuperClass/Interfaces // ===========================================================

      @Override public EngineOptions onCreateEngineOptions() { this.mCamera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);

       return new EngineOptions(true, ScreenOrientation.LANDSCAPE_FIXED, new RatioResolutionPolicy(CAMERA_WIDTH, CAMERA_HEIGHT), this.mCamera);
      

      }

      @Override public void onCreateResources() { BitmapTextureAtlasTextureRegionFactory.setAssetBasePath("gfx/");

       this.mBitmapTextureAtlas = new BitmapTextureAtlas(this.getTextureManager(), 64, 64, TextureOptions.BILINEAR);
       this.mFaceTextureRegion = BitmapTextureAtlasTextureRegionFactory.createFromAsset(this.mBitmapTextureAtlas, this, "menu_back.png", 0, 0);
       this.mBitmapTextureAtlas.load();
      
       this.mMenuTexture = new BitmapTextureAtlas(this.getTextureManager(), 256, 128, TextureOptions.BILINEAR);
       this.mMenuResetTextureRegion = BitmapTextureAtlasTextureRegionFactory.createFromAsset(this.mMenuTexture, this, "menu_reset.png", 0, 0);
       this.mMenuQuitTextureRegion = BitmapTextureAtlasTextureRegionFactory.createFromAsset(this.mMenuTexture, this, "menu_quit.png", 0, 50);
       this.mMenuTexture.load();
      

      }

      @Override public Scene onCreateScene() { this.mEngine.registerUpdateHandler(new FPSLogger());

       this.createMenuScene();
      
       /* Just a simple scene with an animated face flying around. */
       this.mMainScene = new Scene();
       this.mMainScene.setBackground(new Background(0.09804f, 0.6274f, 0.8784f));
      
       final Sprite face = new Sprite(0, 0, this.mFaceTextureRegion, this.getVertexBufferObjectManager());
       face.registerEntityModifier(new MoveModifier(30, 0, CAMERA_WIDTH - face.getWidth(), 0, CAMERA_HEIGHT - face.getHeight()));
       this.mMainScene.attachChild(face);
      
       return this.mMainScene;
      

      }

      @Override public boolean onKeyDown(final int pKeyCode, final KeyEvent pEvent) { if(pKeyCode == KeyEvent.KEYCODE_MENU && pEvent.getAction() == KeyEvent.ACTION_DOWN) { if(this.mMainScene.hasChildScene()) { /* Remove the menu and reset it. / this.mMenuScene.back(); } else { / Attach the menu. */ this.mMainScene.setChildScene(this.mMenuScene, false, true, true); } return true; } else { return super.onKeyDown(pKeyCode, pEvent); } }

      @Override public boolean onMenuItemClicked(final MenuScene pMenuScene, final IMenuItem pMenuItem, final float pMenuItemLocalX, final float pMenuItemLocalY) { switch(pMenuItem.getID()) { case MENU_RESET: /* Restart the animation. */ this.mMainScene.reset();

               /* Remove the menu and reset it. */
               this.mMainScene.clearChildScene();
               this.mMenuScene.reset();
               return true;
           case MENU_QUIT:
               /* End Activity. */
               this.finish();
               return true;
           default:
               return false;
       }
      

      }

      // =========================================================== // Methods // ===========================================================

      protected void createMenuScene() { this.mMenuScene = new MenuScene(this.mCamera);

       final SpriteMenuItem resetMenuItem = new SpriteMenuItem(MENU_RESET, this.mMenuResetTextureRegion, this.getVertexBufferObjectManager());
       resetMenuItem.setBlendFunction(GLES20.GL_SRC_ALPHA, GLES20.GL_ONE_MINUS_SRC_ALPHA);
       this.mMenuScene.addMenuItem(resetMenuItem);
      
       final SpriteMenuItem quitMenuItem = new SpriteMenuItem(MENU_QUIT, this.mMenuQuitTextureRegion, this.getVertexBufferObjectManager());
       quitMenuItem.setBlendFunction(GLES20.GL_SRC_ALPHA, GLES20.GL_ONE_MINUS_SRC_ALPHA);
       this.mMenuScene.addMenuItem(quitMenuItem);
      
       this.mMenuScene.buildAnimations();
      
       this.mMenuScene.setBackgroundEnabled(false);
      
       this.mMenuScene.setOnMenuItemClickListener(this);
      

      }

      @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu, menu);

       return super.onCreateOptionsMenu(menu);
      

      }

      /* @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_settings: // Do something

               return true;
           default:
               return super.onOptionsItemSelected(item);
       }
      

      }*/

      // =========================================================== // Inner and Anonymous Classes // =========================================================== }

    ...
    opened by ReneVella 1
  • Andengine RTL Text For Farsi

    Andengine RTL Text For Farsi

    I have added some codes to source of andengine to support Farsi (Persian) language and it is working excellent. It supports Farsi in text object. if i can help to andengine I'm ready to send the codes. Regards, K.Najafi

    opened by karimnajafi 2
  • Scene sprite touch get this error any solution for this

    Scene sprite touch get this error any solution for this

    java.lang.ArrayIndexOutOfBoundsException: length=0; index=0
    at org.andengine.entity.scene.Scene.onAreaTouchEvent(Scene.java:406)
    at org.andengine.entity.scene.Scene.onSceneTouchEvent(Scene.java:357)
    at org.andengine.entity.scene.Scene.onChildSceneTouchEvent(Scene.java:420)
    at org.andengine.entity.scene.CameraScene.onChildSceneTouchEvent(CameraScene.java:84)
    at org.andengine.entity.scene.Scene.onSceneTouchEvent(Scene.java:338)
    at org.andengine.entity.scene.CameraScene.onSceneTouchEvent(CameraScene.java:64)
    at org.andengine.engine.Engine.onTouchHUD(Engine.java:444)
    at org.andengine.engine.Engine.onTouchEvent(Engine.java:434)
    at org.andengine.input.touch.controller.BaseTouchController$TouchEventRunnablePoolItem.run
    (BaseTouchController.java:102)
     at org.andengine.util.adt.pool.RunnablePoolUpdateHandler.onHandlePoolItem
    (RunnablePoolUpdateHandler.java:54)
    at org.andengine.util.adt.pool.RunnablePoolUpdateHandler.onHandlePoolItem(
    RunnablePoolUpdateHandler.java:12)
    at org.andengine.util.adt.pool.PoolUpdateHandler.onUpdate(PoolUpdateHandler.java:88)
    at org.andengine.input.touch.controller.BaseTouchController.onUpdate(BaseTouchController.java:62)
    at org.andengine.engine.Engine.onUpdate(Engine.java:584)
    at org.andengine.engine.LimitedFPSEngine.onUpdate(LimitedFPSEngine.java:56)
    at org.andengine.engine.Engine.onTickUpdate(Engine.java:548)
    at org.andengine.engine.Engine$UpdateThread.run(Engine.java:820)
    
    opened by manishsojitra94 0
Owner
Nicolas Gramlich
Unity, ECS, C#, Typescript, Javascript, Node.JS, Android ❤️
Nicolas Gramlich
Android OpenGL ES 2.0/3.0 Engine

Build Status Master Branch Status Develop Branch Status News 06/23/2017 Bombshell 1.1.970 has been released. It fixes behavior of Objects of zero size

null 2.2k Jan 9, 2023
Game made with Korge (Kotlin Multiplatform game engine)

MolesAttack Kotlin Multiplatform Game Play Html/js: https://feliperce.github.io/MolesAttack-Distribution/ Jar: https://feliperce.github.io/MolesAttack

Felipe Rodrigues 10 May 30, 2022
This is an application that is about an X / O game. You can enter the names of the game, and there is also a screen for those who win and there is a button to continue playing and the game determines the result of each player

Game-X-O This is an application that is about an X / O game. You can enter the names of the game, and there is also a screen for those who win and the

Mohamed Rafat 2 Aug 20, 2022
A cross-platform Java game Engine (Framework) , support JavaFX / Android / IOS / HTML5 / Linux / MAC / Windows

Loon Game Engine (Java Game Framework) EN / KR Free Game Resources Links Download Loon Game Engine Only Android-studio Template : androidstudio-templa

cping 502 Jan 4, 2023
SMBClone - SMD clone custom game engine. (Desktop + Android)

SMBClone Simple crossplatform game engine for like SMB game! Supported platforms

Victor Varenik 4 Jul 4, 2022
Android Play Games Services plugin for Godot Game Engine

Google Play Games Services Plugin for Godot This is an Android Play Games Services plugin for Godot Game Engine 3.4.2 Supported features: Sign-in/Sign

Studio Adriatic 41 Dec 29, 2022
Korjector is a KorGE game engine-based multiplatform client for Projector.

Korjector is a KorGE game engine-based multiplatform client for Projector. An internal JetBrains Hackathon 2021 project to demonstrate that a Projector client can be created in less than 48 hours for any OS that supports decent canvas 2D API.

Sergei Bulgakov 10 Nov 20, 2021
Sample source code for Android Pride Rainbow Bounding Box written in Kotlin and OpenGL 🏳️‍🌈

Sample Code for Animated Rainbow Bounding Box in OpenGL A sample app showing how to draw a rainbow bounding box on Android with OpenGL and Kotlin. Blo

Rebecca Franks 28 May 24, 2022
Our maze game is an 2d-animation game developed using android studio.

Our maze game is an 2d-animation game developed using android studio. The game consists of a ball and a board with a hole in the center of it. We are using accelerometer as controller to guide ball towards the hole. T

Suraj Devgan 6 Nov 29, 2022
2D physics engine for games

LiquidFun Version 1.1.0 Welcome to LiquidFun! LiquidFun is a 2D physics engine for games. Go to our landing page to browse our documentation and see s

Google 4.5k Dec 31, 2022
a 2d Java physics engine, native java port of the C++ physics engines Box2D and LiquidFun

jbox2d Please see the project's BountySource page to vote on issues that matter to you. Commenting/voting on issues helps me prioritize the small amou

jbox2d 1k Jan 2, 2023
RPG written in Kotlin using Korge engine

TheAlchemist RPG written in Kotlin using the Korge engine Based on the template https://github.com/korlibs/korge-starter-kit-rpg, this is a simple pix

Liam 2 Jan 16, 2022
An experiment with cellular automata; Functional mod for Rem's Engine.

Cellular Automata This is an experiment with cellular automata. A functional mod for Rem's Engine. When experimenting, I found the Sierpinski Triangle

Antonio 1 Mar 21, 2022
Bloat-free Immediate Mode Graphical User interface for JVM with minimal dependencies (rewrite of dear imgui)

dear jvm imgui (This rewrite is free but, on the same line of the original library, it needs your support to sustain its development. There are many d

null 511 Jan 3, 2023
An easy open source Android Native Game FrameWork.

JustWeEngine - Android Game FrameWork An easy open source Android Native Game FrameWork. Engine Flow Chart How To Use? Import Engine's module as Libra

JustWe 767 Dec 8, 2022
Desktop/Android/HTML5/iOS Java game development framework

Cross-platform Game Development Framework libGDX is a cross-platform Java game development framework based on OpenGL (ES) that works on Windows, Linux

libgdx 20.9k Jan 8, 2023
Android Kotlin: Matching Kitties: A Game Inspired by Cats

Android Kotlin: Matching Kitties: A Game Inspired by Cats A kotlin based Android memory game Screenshots | | | | | | | | | Viewing the App You can clo

Ryan Jandrick B. Obeles 20 Aug 1, 2022
a bitcoin key collision game for android

BitteryApp BitteryApp is an opensource bitcoin key collision game for Android. How to Build BitteryApp source code build in chromium building environm

null 3 Jul 12, 2021