问题标签 [glsurfaceview]

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.

0 投票
0 回答
934 浏览

android - 可以缩放视频以适应 SurfaceView 吗?

以下是MediaPlayerDemo_Video.java使用的布局,除了我将尺寸更改为奇怪的分辨率 (300x480) 以说明这一点:

是的,视频完全显示在 300 x 480 的窗口中,但视频被缩放以适合我的平板电脑的宽度 (1024),并且窗口显示整个视频 (1024 x 680) 的一部分 (300 x 480) )。我认为,根据我的阅读,视频会缩放以适应 SurfaceView 的大小。

有没有办法缩放视频以适应 SurfaceView?

0 投票
2 回答
260 浏览

android - Android - GLSurface,关闭时出错

每次我在关闭应用程序时发生错误。我不知道为什么?它仅发生在 2.3.7 上。在 3.2 和 4 上一切正常

0 投票
2 回答
1965 浏览

android - 视图未绘制在 GLSurfaceView 之上

当用户按下菜单按钮(暂停游戏)时,我试图让暂停菜单出现。游戏确实成功暂停,但没有任何东西绘制......也许它在我的 GLSurfaceView 下方绘制?这是我的代码。

从我的 XML 中:

0 投票
1 回答
301 浏览

android - 启动 GLSurfaceViews 的菜单

我为测量设备编写了一个手机界面。我在 GLSurfaceViews 中有一堆不同的功能屏幕。我可以正确启动渲染,但我不知道如何使后退按钮起作用。我的渲染代码如下所示:

我不知道在哪里放一个public boolean onKeyDown(int keyCode, KeyEvent event)

0 投票
1 回答
173 浏览

android - 带有像素而不是范围 [-1,1] 的 Android OpenGL ES drawArray

我是 openGL 的新手,想在 GLSurfaceView 上画线。

由于性能原因,我从画布切换到了 openGL。

我知道 OpenGL 更有可能用于 3D 绘图,因此不使用像素。

我想绘制像线条一样的 2D 图形,但需要以像素为单位的尺寸,只有 x 和 y 值而没有第 3 维。

0 投票
0 回答
572 浏览

android - Android 上的 min3d:如何设置背景图像

我需要为我的 3d 场景设置背景图像。我在我的 GLSurfaceView 上使用了 setZOrderOnTop(true),这很好:在我的 3d 图形下可以看到底层视图背景。但是现在我需要在我的 3d 图形上添加一些视图,这让我使用了 setZOrderOnTop(false),所以现在 z 索引很好,但是背景是黑色的。我试图在 GLSurfaceView 上设置可绘制的背景,但在这种情况下,3d 场景呈现在 GLSurfaceView 的背景后面......所以,我认为有一个选项可以在我的场景后面绘制带有背景纹理的矩形。但我不知道怎么做。

0 投票
2 回答
2929 浏览

android - GLSurfaceView.onPause() 会破坏上下文吗?

我正在使用 GLSurfaceView.onPause() 来管理资源(即停止渲染线程以允许呈现更具响应性的视图)。似乎需要重新创建表面,但我没有在文档中看到详细信息。

有人可以确认是这种情况吗?

干杯,乔什

0 投票
1 回答
793 浏览

android - 在 TabHost 中配置多个活动,每个活动都包含一个 GLSurfaceView

我的设置如下:一个 TabHost 有两个子活动,每个活动都有一个 GLSurfaceView 作为内容。这两个活动当然是将它们的 onPause() 和 onResume() 事件转发到它们的 GLSurfaceViews。

第一个活动按预期工作,但切换到另一个选项卡没有视觉影响。LogCat 显示 onSurfaceCreated()、onSurfaceChanged() 和 onSurfaceDraw() 都按预期在两个 GLSurfaceView 实例上被调用。

“修复”是分别在 onPause() 和 onResume() 中使用 setVisibility(View.INVISIBLE/VISIBLE) 设置每个 GLSurfaceView 的可见性。这会导致显示正确的视图,但缺点是在更改选项卡时会导致闪烁效果。当 GLSurfaceView 完成更多工作时,这一点尤其明显。

本质上,我怎样才能避免设置 GLSurfaceViews 的可见性?

选项卡活动:

儿童活动:

渲染器:

布局:

0 投票
5 回答
9274 浏览

android - 重新启动时片段内部的 GLSurfaceView 不呈现

GLSurfaceView使用GLSurfaceView.Renderer. 我的应用程序使用来自 android 支持包的片段。当我导航到一个新的片段surfaceDestroyed时被调用,但是当我通过后台堆栈返回片段时,GLSurfaceView不会呈现,调用requestRender不会导致onDraw调用。

我知道我需要在表面视图上调用onResumeonPause我正在从托管片段执行此操作,但它似乎并没有解决问题。所有关于 htis 方法的例子都参考了活动,这可能是问题吗?如果是这样,您如何GLSurfaceView在片段中使用 a 。

非常感谢任何见解,我很高兴发布代码,但这对我来说似乎是一个普遍的问题,

谢谢

0 投票
1 回答
431 浏览

android - 用于 2d 绘图的 OpenGL es 1.0 或 2.0

我使用 SurfaceView 编写了一个应用程序。似乎降低应用程序帧速率的一件事是绘制一些位图需要一些时间,并且使用画布绘制一些线条和圆圈也需要一些时间。我想尝试通过使用 GLSurfaceView 来改进这一点。与其说是因为较慢的帧速率是个问题,倒不如说是因为我只是想在 OpenGL ES 中涉猎一点。无论如何,对于 2D 绘图,我应该使用 OpenGL 1.0 还是 OpenGL 2.0?我还希望这个应用程序可以在尽可能多的设备上运行。