未找到 EGLConfig [英] No EGLConfig found

查看:38
本文介绍了未找到 EGLConfig的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用

I'm trying to make simple Game in android using AndEngine tutorial

Now When I run the project I get the error saying that java.lang.IllegalArgumentException: No EGLConfig found!

TowerOfHanoiActivity.java

public class TowerOfHanoiActivity extends SimpleBaseGameActivity {

    private static int CAMERA_WIDTH = 800;
    private static int CAMERA_HEIGHT = 480;
    private ITextureRegion mBackgroundTextureRegion, mTowerTextureRegion,
            mRing1, mRing2, mRing3;

    @Override
    public EngineOptions onCreateEngineOptions() {

        final Camera camera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);

        return new EngineOptions(true, ScreenOrientation.LANDSCAPE_FIXED,
                new RatioResolutionPolicy(CAMERA_WIDTH, CAMERA_HEIGHT), camera);
    }

    @Override
    protected void onCreateResources() {

        try {

            // 1 - Set up bitmap textures
            ITexture backgroundTexture = new BitmapTexture(
                    this.getTextureManager(), new IInputStreamOpener() {

                        @Override
                        public InputStream open() throws IOException {
                            return getAssets().open("gfx/background.png");
                        }
                    });

            ITexture towerITexture = new BitmapTexture(
                    this.getTextureManager(), new IInputStreamOpener() {

                        @Override
                        public InputStream open() throws IOException {
                            return getAssets().open("gfx/tower.png");
                        }
                    });

            ITexture ring1 = new BitmapTexture(this.getTextureManager(),
                    new IInputStreamOpener() {

                        @Override
                        public InputStream open() throws IOException {
                            return getAssets().open("gfx/ring1.png");
                        }
                    });
            ITexture ring2 = new BitmapTexture(this.getTextureManager(),
                    new IInputStreamOpener() {

                        @Override
                        public InputStream open() throws IOException {
                            return getAssets().open("gfx/ring2.png");
                        }
                    });
            ITexture ring3 = new BitmapTexture(this.getTextureManager(),
                    new IInputStreamOpener() {

                        @Override
                        public InputStream open() throws IOException {
                            return getAssets().open("gfx/ring3.png");
                        }
                    });

            // 2 - Load bitmap textures into VRAM

            backgroundTexture.load();
            towerITexture.load();
            ring1.load();
            ring2.load();
            ring3.load();

            // 3 - Set up texture regions
            this.mBackgroundTextureRegion = TextureRegionFactory.extractFromTexture(backgroundTexture);
            this.mTowerTextureRegion = TextureRegionFactory.extractFromTexture(towerITexture);
            this.mRing1 = TextureRegionFactory.extractFromTexture(ring1);
            this.mRing2 = TextureRegionFactory.extractFromTexture(ring2);
            this.mRing3 = TextureRegionFactory.extractFromTexture(ring3);

        } catch (IOException e) {
            Debug.e(e);
        }

    }

    @Override
    protected Scene onCreateScene() {
        
        // 1 - Create new scene
        final Scene scene = new Scene();
        Sprite backroundSprite = new Sprite(0, 0, this.mBackgroundTextureRegion, getVertexBufferObjectManager());
        scene.attachChild(backroundSprite);
        return scene;
    }

}

Logcat :

03-28 15:21:17.957: D/AndEngine(1478): TowerOfHanoiActivity.onCreate @(Thread: 'main')
03-28 15:21:17.997: D/dalvikvm(1478): Trying to load lib /data/data/com.tutorial.towerofhanoi/lib/libandengine.so 0xb67ac4e0
03-28 15:21:18.007: D/dalvikvm(1478): Added shared lib /data/data/com.tutorial.towerofhanoi/lib/libandengine.so 0xb67ac4e0
03-28 15:21:18.007: D/dalvikvm(1478): No JNI_OnLoad found in /data/data/com.tutorial.towerofhanoi/lib/libandengine.so 0xb67ac4e0, skipping init
03-28 15:21:18.127: D/AndEngine(1478): TowerOfHanoiActivity.onResume @(Thread: 'main')
03-28 15:21:18.277: D/libEGL(1478): Emulator without GPU support detected. Fallback to software renderer.
03-28 15:21:18.277: D/libEGL(1478): loaded /system/lib/egl/libGLES_android.so
03-28 15:21:18.317: W/dalvikvm(1478): threadid=11: thread exiting with uncaught exception (group=0xb615e180)
03-28 15:21:18.328: E/AndroidRuntime(1478): FATAL EXCEPTION: GLThread 81
03-28 15:21:18.328: E/AndroidRuntime(1478): java.lang.IllegalArgumentException: No EGLConfig found!
03-28 15:21:18.328: E/AndroidRuntime(1478):     at org.andengine.opengl.view.ConfigChooser.chooseConfig(ConfigChooser.java:183)
03-28 15:21:18.328: E/AndroidRuntime(1478):     at org.andengine.opengl.view.ConfigChooser.chooseConfig(ConfigChooser.java:157)
03-28 15:21:18.328: E/AndroidRuntime(1478):     at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:1009)
03-28 15:21:18.328: E/AndroidRuntime(1478):     at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1362)
03-28 15:21:18.328: E/AndroidRuntime(1478):     at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1216)
03-28 15:21:18.387: D/gralloc_goldfish(1478): Emulator without GPU emulation detected.
03-28 15:21:18.427: I/dalvikvm(1478): threadid=3: reacting to signal 3
03-28 15:21:18.437: I/dalvikvm(1478): Wrote stack traces to '/data/anr/traces.txt'
03-28 15:21:18.717: D/AndEngine(1478): TowerOfHanoiActivity.onPause @(Thread: 'main')
03-28 15:21:19.167: D/AndEngine(1478): TowerOfHanoiActivity.onDestroy @(Thread: 'main')
03-28 15:21:19.197: D/AndEngine(1478): UpdateThread interrupted. Don't worry - this EngineDestroyedException is most likely expected!
03-28 15:21:19.197: D/AndEngine(1478): org.andengine.engine.Engine$EngineDestroyedException
03-28 15:21:19.197: D/AndEngine(1478):  at org.andengine.engine.Engine.throwOnDestroyed(Engine.java:574)
03-28 15:21:19.197: D/AndEngine(1478):  at org.andengine.engine.Engine.onTickUpdate(Engine.java:560)
03-28 15:21:19.197: D/AndEngine(1478):  at org.andengine.engine.Engine$UpdateThread.run(Engine.java:820)
03-28 15:21:19.197: D/AndEngine(1478): TowerOfHanoiActivity.onDestroyResources @(Thread: 'main')
03-28 15:21:19.197: D/AndEngine(1478): TowerOfHanoiActivity.onGameDestroyed @(Thread: 'main')
03-28 15:21:22.477: I/Process(1478): Sending signal. PID: 1478 SIG: 9

I'm testing my app in emulator with following settings

Please give me a proper solution.Thanks

解决方案

Create AVD with Target 4.0.3 -API Level 15 with GPU Emulation yes. My example stated running after this. IF you have further problem visit AndEngine Forum and get detail about OpenGL drivers

这篇关于未找到 EGLConfig的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆