我想找一个响应触摸的iPhone OpenGL ES示例.理想情况下它会满足这些要求:
有没有人看过一个或多个可以做这些或者至少用纹理渲染立方体的例子?
由于webgl/opengl不支持文本绘制,因此可以使用3D上下文和使用2D上下文的文本绘制来绘制3D对象?
是否可以在Android应用程序中使用顶点或像素着色器?请举例说明如何设置着色器.
我正在寻找解码iPhone上本地mpeg-4视频帧的最快方法.我只是对每10帧中像素的亮度值感兴趣.我不需要在任何地方渲染视频.
我已经尝试过ffmpeg,AVAssetReader,ImageAssetGenerator,OpenCV和MPMoviePlayer,但它们都太慢了.我能得到的最快速度是2倍(一分钟内扫描2分钟).我想要接近10倍的东西.
假设我上面的尝试没有使用GPU,有没有办法用GPU上运行的东西来实现我的目标?OpenGL似乎主要用于渲染输出,但我已经看到它用作传入视频的过滤器.也许这是一个选择?
提前致谢!
在这两张附图中,libgdx的桌面截图按预期运行.遗憾的是,我的Galaxy Nexus屏幕截图并不像预期的那样.我试图创建一个简单的运动模糊或轨迹效果.
在我的桌面上按预期渲染.

没有像我预期的那样在Galaxy nexus上渲染.

圆纹理渲染期间绘制在for循环中,效果与使用0,0,0的RGBA像素映像,0.1F,其圆之前绘制实现.
screenClearSprite创建
Pixmap screenClearPixmap = new Pixmap(256, 256, Format.RGBA8888);
screenClearPixmap.setColor(Color.rgba8888(0, 0, 0, 0.1f));
screenClearPixmap.fillRectangle(0, 0, 256, 256);
screenClearTexture = new Texture(screenClearPixmap);
screenClearSprite = new Sprite(screenClearTexture);
screenClearSprite.setSize(screenWidth, screenHeight);
screenClearPixmap.dispose();
Run Code Online (Sandbox Code Playgroud)
给予
batch.begin();
font.draw(batch, "fps:" + Gdx.graphics.getFramesPerSecond(), 0, 20);
screenClearSprite.draw(batch);
for (int i = 0; i < circleBodies.size(); i++) {
tempPos = circleBodies.get(i).getPosition();
batch.draw(circleTexture, (tempPos.x * SCALE) + screenWidthHalf
- circleSizeHalf, (tempPos.y * SCALE) + screenHeightHalf
- circleSizeHalf);
}
batch.end();
Run Code Online (Sandbox Code Playgroud)
那么,我做错了什么?也许有更好的方法来获得运动的"运动模糊"效果?
我在ubuntu 11.10上安装了带有Eclipse android插件(ADT)的Eclipse 4.2.当我作为Android应用程序启动"Hello World"项目时,它根本就不会启动!
ps -x>启动模拟器后的log.txt,输出:
1000 7221 20.0 0.6 16884 6908 ? D 18:11 0:00 /home/tutakhail/android-sdks/tools/emulator-arm -avd AndroidBrowser -netspeed full -netdelay none
Run Code Online (Sandbox Code Playgroud)
从shell手动启动模拟器,我得到以下错误,不久之后模拟器启动但非常慢.
emulator: ERROR: Could not load OpenGLES emulation library: libOpenglRender.so: cannot open shared object file: No such file or directory
emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.
Run Code Online (Sandbox Code Playgroud)
关于什么可能是问题的任何提示?也许与Ubuntu有关?
例如.在FragmentShader中: -
struct LightSource
{
int Type;
vec3 Position;
vec3 Attenuation;
vec3 Direction;
vec3 Color;
};
uniform LightSource Light[4];
main(){
//somecode
}
Run Code Online (Sandbox Code Playgroud)
现在我该如何发送值Light[4].
我试图找出iphone在模拟器中的方向,而不是使用UIDevice方向属性给我,我得到UIDeviceOrientationUnknown.
此属性在模拟器中不起作用吗?发生这种情况的可能原因是什么?
我正在使用opengl es
我看到了这个Google IO会话:http://code.google.com/intl/iw/events/io/2009/sessions/WritingRealTimeGamesAndroid.html
他说draw_texture函数速度最快,VBO速度更快.
但我不明白如何使用它(draw_texture方法或VBO方式).
有什么建议吗?
我刚学完大学一年,学会了如何使用C++,OpenGL和Qt编写出色的应用程序.
我刚要开始学习Objective C和Cocoa.这似乎是开发iOS和Mac应用程序的最佳选择,因为Objective C就像C++一样,C的变种,Cocoa将允许我制作漂亮的UI,我可以继续使用我的良好OpenGL知识来制作3D图形.
然而,Apple最近宣布许多事情正在发生变化.最重要的是,他们宣布有一种名为"Swift"的新语言,他们正在用"Metal"替换(据我的理解)OpenGL
我的问题是,考虑到缺乏好书/综合教程(我找到了一个很好的Objective C和Cocoa).
在这个阶段,我是否应该等待秋季XCode6和iOS8的发布,以及我希望学习这门新语言的新书和教程,并在此期间做其他事情以避免学习一种已失效的语言,或者我应该无论如何要学习Objective C然后在它出来时学习Swift(以及所有这些新东西,比如Metal等).
鉴于所有宣布的新内容,是否值得深化我的OpenGL理解?