我从我的一个应用程序中收到崩溃报告,来自一位使用运行4.3的Nexus4的用户。据我了解,此错误是由OpenGL引起的。我不在我的应用程序中使用OpenGL。谁能帮我解决这个问题?这是错误:java.lang.IllegalStateException:CouldnotcreateanEGLcontext.eglCreateContextfailedwitherror:EGL_SUCCESSatandroid.view.HardwareRenderer$GlRenderer.createContext(HardwareRenderer.java:1192)atandroid.view.
我目前正在学习Android(2.1)上的OpenGLES编程。我从强制性的旋转立方体开始。它旋转得很好,但我无法让深度缓冲区工作。多边形始终按照GL命令渲染它们的顺序显示。我在GL初始化期间这样做:gl.glClearColor(.5f,.5f,.5f,1);gl.glShadeModel(GL10.GL_SMOOTH);gl.glClearDepthf(1f);gl.glEnable(GL10.GL_DEPTH_TEST);gl.glDepthFunc(GL10.GL_LEQUAL);gl.glHint(GL10.GL_PERSPECTIVE_CORRECTION_HINT,GL1
我想在运行时更改我的应用程序的背景颜色。所以在单击按钮时我首先调用:GLES20.glClearColor(color[0],color[1],color[2],color[3]);然后我调用:GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT|GLES20.GL_DEPTH_BUFFER_BIT);它什么都不做!它保持当前的背景颜色-不改变它。但是当我暂停我的应用程序并再次恢复时,背景颜色发生了变化。编辑:我找到了一种方法来做到这一点。每一帧我首先调用glClear但我没有调用glClearColor。因此,如果我在每一帧调用glClear之前先调用g
我正在尝试使用OpenGLES在正交模式下绘图,点(0,0)位于屏幕的左下角。但是,我想让它位于左上角。这是我在我的Android应用程序中进行设置的地方:publicvoidonSurfaceChanged(finalGL10gl,finalintwidth,finalintheight){assertgl!=null;//useorthographicprojection(nodepthperception)GLU.gluOrtho2D(gl,0,width,0,height);}我尝试以多种方式更改上述调用,包括:GLU.gluOrtho2D(gl,0,width,0,heigh
我在OpenGLES中的场景需要多个高分辨率纹理,但它们是灰度的,因为我仅将它们用于mask。我需要减少内存使用。我尝试使用Bitmap.Config.ALPHA_8和RGB_565加载这些纹理。ALPHA_8似乎实际上增加了内存使用。是否有某种方法可以将纹理加载到OpenGL中并使其使用每像素少于16位?glCompressedTexImage2D看起来很有前途,但据我所知,不同的手机提供不同的纹理压缩方法。另外,我不知道压缩是否真的减少了运行时的内存使用。以ATITC和PVRTC格式存储我的纹理的解决方案是什么?如果是这样,我如何检测设备支持哪种格式?谢谢!
我最近在开发一个动态壁纸应用程序。在那里我发现我的Android动态壁纸有一个奇怪的问题。我使用我的HTCWildfireS、三星Galaxytab、摩托罗拉DroidMillstone、三星galaxypop来测试我的墙纸和模拟器,一切正常,但在三星手机上(三星GalaxySII和三星GalaxyPlayer有这个症状)屏幕在初始启动时保持黑色。但是一旦我们转到设置屏幕并返回预览它的工作正常。在对这些手机进行一些调试后,我发现墙纸加载正确,但纹理不只是显示出来。我尝试搜索问题,但没有找到任何有用的信息。我从native代码绑定(bind)纹理。在那里我使用OPENGL库来绑定(bin
我正在使用Android中的QCARARSDK,它使用OpenGL2.0,我是2.0的新手。QCARSDK适用于基于CV的AR应用程序,并利用OpenGL渲染图像。我只想在屏幕中央画一个小X,并使用以下代码。但是X不是绘制到正确的坐标,而是延伸到屏幕的边缘。无论我为顶点分配什么值,都会发生这种情况。我无法确定这是缩放问题还是我正在使用的坐标系存在一些混淆。关于为什么没有正确绘制这些线的任何想法?-我知道这在1.1中会更容易,但我必须使用2.0。谢谢//ClearcoloranddepthbufferglClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_
我已经使用ndk和cocos2dx将我的iphone应用程序移植到android。这非常有效,我认为cocos2dx非常酷!现在我想在Java环境中向我的主openglView添加一些JavaView。这对我来说并不是真的有用。我认为我需要有关在Java环境中使用View、Activity、Intent等的基本知识。具体来说,我需要在运行时向我的openglView添加一个TextView(java)。我尝试了以下方法,但是当我调用函数voidtestSetText()时它崩溃了。publicclassmyTestextendsCocos2dxActivity{privatestati
我想让android传感器与opengl一起工作,以将opengl的相机旋转到手机指向的任何地方。详细说明:如果玩家正在看东方,我希望opengl的相机在游戏中也指向东方;如果玩家指向天空,我想将opengl的相机指向天空等等。我试过使用getRotationMatrix并在opengl上加载矩阵,但它只适用于上下方向,如果我将单元格转向两侧,则没有区别。这是我到目前为止所做的(应用程序处于横向模式):publicvoidonSensorChanged(SensorEventevt){inttype=evt.sensor.getType();floatalpha=0.8f;//Smoo
我正在使用alreadyexistingengine在Android中开发游戏.我必须为我的动画使用大纹理,我想知道什么是更好的性能明智。新版本的引擎支持npot纹理(如果你问自己为什么我使用这样的分辨率)。拥有多个2330x1100纹理图集还是只有一个2330x(1100xnumber_of_textures_i_need)纹理图集更好?这个选择会影响加载时间吗?(我认为它们需要的内存是相同的,因为它们包含相同数量的像素)我在某处读到切换纹理可能是一个缓慢的操作..支线任务:1)jar纹理是否更有效(在环境构建中以便它可以处理npot纹理)?2)我可以只使用一个纹理来达到某些尺寸/内