草庐IT

opengl-compat

全部标签

android - 球体上的 OpenGL 纹理

通过这个函数,我可以在Android的OpenGLES1.0中创建一个球体:publicBall(GL10gl,floatradius){ByteBufferbb=ByteBuffer.allocateDirect(40000);bb.order(ByteOrder.nativeOrder());sphereVertex=bb.asFloatBuffer();points=build();}privateintbuild(){doubledTheta=STEP*Math.PI/180;doubledPhi=dTheta;intpoints=0;for(doublephi=-(Math.

Android opengl-es碰撞检测

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion这让我头疼了几天,终于认输了,来这里问问。我的游戏由大小不一的立方体组成,这些立方体必须在一个小区域内四处移动。我的立方体运动运行良好,我似乎唯一无法理解的是碰撞检测。地面是完全平坦的,所以我不需要担心Y轴,立方体的坐标是相对于地面立方体中心的坐标。我可能还应该补充一点,每一层都由多个彼此相邻的矩形地平面组成。欢迎就如何以最少的CPU使用率完成此操作(伪代码很好)提出任何建议。非常感谢。

Android OpenGL ES 2.0 黑色纹理

作为序言:是的,我已经查看了之前在此站点上提出的大量“AndroidOpenGLES2.0黑色纹理”问题。不,他们都对我的情况没有帮助。不,我不确定我是否可以用适当数量的字符更好地表达标题。我学习了很多教程,并且能够设置一个非常简单的渲染器类来正确加载和渲染纹理(项目A)。然后我尝试在游戏引擎(项目B)中实现这个非常简单的渲染系统。一切都完全一样,除了texture2D()出于某种原因返回黑色。我尝试了很多调试和谷歌搜索都无济于事。所以我寻求帮助。我的顶点和fragment着色器。他们在项目A中工作得很好,所以我认为这不是问题的根源,只是为了完整起见。privatestaticfina

android - 利用 openGL 的多线程

在基于openGL渲染器的游戏环境中交谈:假设有两个线程:更新游戏对象的游戏逻辑和物理等根据游戏对象中的数据对每个游戏对象进行openGL绘制调用(线程1不断更新)除非您在游戏的当前状态下有每个游戏对象的两个拷贝,否则您必须暂停线程1,而线程2进行绘制调用,否则游戏对象将在绘制调用的中间更新目的!这是不可取的!但是停止线程1以安全地从线程2进行绘制调用会破坏多线程/并发的全部目的除了使用数百或数千或同步对象/栅栏之外,是否有更好的方法来利用多核架构来提高性能?我知道我仍然可以使用多线程加载纹理和编译着色器用于尚未成为当前游戏状态一部分的对象但是我如何为Activity/可见对象执行此操

android - 如何在 android list 中使用 <support-screens> 和 <compatible-screens>?

我需要在Playstore上发布一个Android应用程序。我的应用程序仅适用于平板电脑。当前支持平板电脑的list条目是:但使用此配置,我的应用程序在较旧的Nexus-7平板电脑上不可见。所以现在我也添加了兼容屏幕标签。是否只有这些更改才能让我的应用在Nexus7的GooglePlay商店中可见?我的另一个担心是在list文件中同时使用支持屏幕和兼容屏幕是否可以。链接differencebetweenandonAndroid解释得很好。但是没有提到这两个标签是否可以一起使用。编辑:该应用程序使用的权限是:谢谢。 最佳答案 “但是没

android - 是否有可能在OpenGL中点击多维数据集的哪个表面?

我已经创造了一个立方体,它的旋转非常完美。我的任务是你点击哪个旋转方块。例如,如果你点击立方体表面的红色,我会赢,但我找不到立方体点击的表面视图,编辑我想要接触的表面。这是我的渲染器代码:publicvoidonDrawFrame(GL10arg0){//GLES20.glEnable(GLES20.GL_TEXTURE_CUBE_MAP);GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT|GLES20.GL_DEPTH_BUFFER_BIT);GLES20.glUseProgram(iProgId);cubeBuffer.position(0);GL

android opengl es 1.1 即时纹理压缩

我必须使用纹理压缩,因为我的应用目前使用多达100MB的内存来处理纹理。我正在从View创建纹理,因此不可能以压缩格式创建它们。我怎样才能用ETC1/ATC/PVRTC即时压缩它们并将它们发送到gpu?我试过了:GLUtils.texImage2D(GL10.GL_TEXTURE_2D,0,ETC1.ETC1_RGB8_OES,bitmap,0);我也试过我手机支持的其他压缩格式,但纹理总是白色的。输入位图是RGB_565并且mip-maps被禁用。是否可以将位图作为纹理发送到opengles1.1,以便它在android上自动压缩,就像在pc上一样? 最佳

android - OpenGL ES 2.0 1 仅使用最后绑定(bind)纹理

请参阅最后的编辑以获取进度。我正在尝试学习OpenGLES2.0(我将在Android设备上进行开发)我对顶点和fragment着色器有点困惑。我理解它们的目的,但是如果我从自定义构建的类(比如“点”)构建形状并设置它的大小和颜色或应用纹理并假设两个着色器最初都是在对象类的构造函数中声明和定义的,这是否意味着该类的每个实例都将拥有自己的一对着色器?这是我的第一个问题。我的第二个是,如果是这种情况(每个对象的着色器对)…………这是要走的路吗?我听说拥有一个着色器对并切换它的参数并不是一个好主意,因为性能,但如果我有100个大小和颜色(或纹理)相同的Sprite,它们都具有一个具有完全相同

android - 启动 SDK 管理器时出错 : "find_java.exe is not compatible with the version of Windows you' re running"

我试图在androidstudio中启动androidsdk管理器,但它向我显示以下错误https://plus.google.com/u/0/113311995935504360295/posts/h5EKzabisQj?pid=6068461235610543378&oid=113311995935504360295CannotlaunchSDKmanagerOutput:ThisversionofC:\PROGRA~1\Android\ANDROI~1\sdk\tools\lib\find_java.exeisnotcompatiblewiththeversionofWindow

android - 中止消息 : 'couldn' t find an OpenGL ES implementation'

我正在尝试在我的设备上运行Lollipop,当我闪现我得到的图像时,我得到了以下日志---------beginningofcrashF/libc(1565):Fatalsignal6(SIGABRT),code-6intid1565(surfaceflinger)I/DEBUG(1572):************************************************I/DEBUG(1572):Buildfingerprint:'Android/full_arndale/arndale:5.0.2/LRX22G/veera05211114:eng/test-keys