问题标签 [opengl-es-1.1]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 使用opengl的Android动态壁纸
我在android中创建了一个opengl动画,GlRenderer.java用于渲染我创建的动画
现在在 Glrenderer.java 公共类 GlRenderer 扩展 GLSurfaceView 实现 Renderer
用作活动时,动画效果很好,但是当我尝试使用 GLWallpaperService 运行它时,它会出错。
为了将其设置为墙纸,我必须实现 GLWallpaperService,因为**public class GlRenderer extends GLSurfaceView implements Renderer, GLWallpaperService**
它会给出错误* GLWallpaperService 类型不能是 GlRenderer 的超接口;超接口必须是接口*
我还在 android manifest 中添加了正在使用动态壁纸服务
android - Samsung 4 上的 OpenGL ES 2D - 屏幕上没有纹理
我有 Nexus 4 和几个 HTC,我的游戏运行良好。
当我在三星 4 上启动时,我看到白色矩形(空纹理),
没有错误,
此外,我的游戏使用传感器,但我在三星 4 上看到它也不起作用,
但三星 3 - 有效,
请帮忙,
[编辑]
关于三星 3 的作品!
我听说他们对 S4 做了很多改动
[编辑 2]
这就是我加载纹理的方式:
对我来说最无能为力的行是:
这里实际上我放了纹理。
这是draw
方法:
[编辑 3]
我添加到draw
和onDrawFrame
主循环,没有错误:
调试后,我只发现三星 4 的一个新错误:
08-07 12:57:53.356: E/ViewRootImpl(29124): sendUserActionEvent() mView == null
[编辑 4]
opengl-es-2.0 - OpenGL ES 2.0 GPU 加速几何排序
我有一个当前使用 OpenGL ES 1.1 的 3D 应用程序,大多数网格在应用程序中是硬连线的并且是静态的(它们不会移动),因此深度测试允许使用硬连线排序有效地绘制透明几何图形。
现在我想从 3D 编辑器加载世界,并添加一些透明的动态对象(几何可以是任意顺序),这会导致深度测试从后面在几何中绘制“洞”,即正在渲染在前面使用OpenGL ES 1.1 深度测试几何之后。
我很快就会迁移到 OpenGL ES 2.0,所以我想知道是否有 GPU 加速排序来在背面绘制几何图形,以便以正确的方式进行混合。
opengl-es - android OpenGLES 1.x CameraPreview 到 Surfacetexture
我正在尝试将相机预览发送到表面纹理对象并将其渲染在正方形上。我有 GLES20 的运行代码,但没有找到 1.x 的任何内容。基本上它应该像这样工作,对吧?
正方形被绘制但完全是白色的。我没有收到 glErrors 或其他异常。“onFrameAvailable”处理程序也被调用。如果我使用带有加载位图的 glTeximage,它会正确绘制在正方形上。
有任何想法吗?谢谢!
iphone - iPhone 应用程序对设备方向变化的响应
设备如何知道设备方向发生了变化,然后开始响应呢?在一个使用 opengl 的简单应用程序中,当设备方向发生变化时,渲染引擎中的两个函数协同工作来响应此事件:UpdateAnimation、OnRotate 我的问题是,它们是如何触发的?
谢谢你的帮助,亚辛
/////////////////////////////////示例代码
android - OpenGL ES 2.0 手机是否也包含 1.x?
好的,所以我搜索了很多这个答案并空手而归..所以我会尝试更具体:
假设我有一个三星 Galaxy S3,我已经知道我的手机支持 2.0 版本,但是如果我用 1.x 版本制作应用程序或游戏,它还能运行吗?
ios - 在opengl场景的背景中绘制纹理四边形
代码流程如下:
尽管场景首先渲染,我有什么方法可以让纹理四边形渲染代码在场景后面显示?假设我无法更改背景纹理四边形的渲染将在我呈现渲染缓冲区之前直接发生。
改写:我无法更改渲染顺序。本质上,我想要的是每个仅由 glClearColor 着色的像素,而是由这个带纹理的四边形着色。
objective-c - 如何绘制具有多个纹理的网格
我正在关注这个线程的答案:Binding Multiple Textures to One Mesh in OpenGL ES 1.1
我的实现似乎没有工作,我不知道为什么。
以下是我的代码的事实:
- textureArray 是一个由 GLKTextureInfo 对象填充的 NSMutableArray
- groupMesh 是一个结构体数组,包含:
- 指向索引数组中我们要从中获取索引的位置的指针。
- 索引数据的大小
-
- 我有一个用于顶点的元素数组缓冲区和一个用于索引的元素数组缓冲区
我决定做一个for循环。在每次迭代中,我从 GLKTextureInfo 数组中绑定一个不同的纹理,并将指针更改为我想用我刚刚绑定的纹理绘制的索引数据的内存区域。
-
数组中的第一个纹理是树皮纹理,第二个纹理是树叶。
然而,纹理在第一次迭代后没有绑定。这给出了这种结果:
http://img69.imageshack.us/img69/5138/tbko.png
我强制循环测试我的理论是否正确并将objectAtIndex:i更改为objectAtIndex:1,叶子纹理出现了:
http://img266.imageshack.us/img266/5598/c05n.png
所以它似乎只是 glBindTexture 不起作用,是不是因为 opengl 已经处于绘制状态?有没有解决的办法?
注意:(我昨天问了一个类似的问题,但现在我做了更多的研究,但我仍然不知道我做错了什么)。
android - 不同硬件上的不同OpenGL ES剪贴平面方程?
我在 Android 上使用原生代码中的 OpenGL ES 1.1。在某些地方,我使用 glClipPlanef() 来剪辑一些东西。剪辑的代码是:
这会在 y 轴上向上剪掉所有内容。
当我在 HTC Gratia (Android 2.2) 和 Galaxy Nexus (Android 4.3) 上测试时,这工作正常。
但是,当我在 Nexus 4 (Android 4.3) 上进行测试时,剪辑不起作用。为了让它在那里工作,我必须将方程参数更改为:
Nexus 4 上的剪裁似乎 X 轴和 Y 轴颠倒了。所有绘图仍然与其他设备相同,这只影响剪裁。
有谁知道为什么会这样?它是 Nexus 4 中的 Adreno 320 GPU 特有的吗?如果剪辑在不同设备上的工作方式不同,我如何正确支持所有设备?
不幸的是,我没有可能只更改为 OpenGL ES 2.0,在项目的这一点上工作太多了。这可能是 Android 中的 OpenGL ES 1.1 仿真中的东西吗?
编辑:刚刚确认新的 Nexus 7(2013 版)也有同样的错误剪辑问题。它还具有 Adreno 320 GPU。
android - Android - 当前显示的屏幕大小
我是韩国的开发者。
我利用弱点很英语。
尝试使用 OpenGL ES 绘制海洋地图。
因此,它是我们在触摸屏幕时直接操纵运动,放大/缩小功能的。
要得到移动值就知道根据每个缩放状态的可能是屏幕的宽高差。
有没有办法查看当前Android中要投影的屏幕右下角和左上角最坐标的内坐标?
我们不会说英语,您可以补充图片的描述。
请帮我。
无法工作。