草庐IT

为画图应用缩放 OpenGL ES 内容时 Iphone 像素失真

我对openGLES有一个奇怪的问题。我正在为iphone开发一个绘画应用程序[引用GLPaint应用程序]。在我的代码中,我使用了一个包含轮廓图像的imageView,我将[CAEAGLLayer]paintView用于填充颜色。我根据用户触摸的位置在屏幕上绘制线条,为轮廓图像填充颜色。我正在使用“renderLineFromPoint”函数在两点之间绘制一条线,使用“touchesMoved”获取起点和终点。-(void)renderLineFromPoint:(CGPoint)starttoPoint:(CGPoint)end{//根据用户触摸的位置在屏幕上画一条线staticG

ios - 适用于 iOS 的 OpenGL 对象加载器

我想知道是否有用于在iOSOpenGL项目中加载*.obj的iOS库或框架。我想要一些简单的东西(因为simp在Xcode4.2上有这样的编译问题)。我试图找到一些东西但没有成功......感谢您的帮助:) 最佳答案 您可以使用Assimp.这是一个很棒的库,可以理解很多不同的格式。它是C和C++,因此您可以将它与您的ObjectiveC代码一起使用。 关于ios-适用于iOS的OpenGL对象加载器,我们在StackOverflow上找到一个类似的问题: h

ios - 增强现实 : camera stream on OpenGL view

AR(增强现实)似乎是当今所有iO开发人员都关注的目标。我正在玩一个非常经典的宠物项目,滚动带有纹理的骰子,如果可能的话,相机会在骰子面上进行流式传输。我在最后一部分遇到了一些问题,我有一些问题想请教专家:获取视频流需要AVFoundation:AVCaptureVideoDataOutputSampleBufferDelegate获取图像缓冲区,然后使用CGBitmapContextCreate等Quartz函数构建一个UIImage。这在http://www.benjaminloulier.com/articles/ios4-and-direct-access-to-the-cam

iphone - IOS 中 glColor4f OpenGl 函数的应用程序崩溃

我正在开发OpenCV客户端应用程序,我的应用程序在IOS5.1上运行良好,但当我在IOS4.3上运行我的应用程序时,它在gl.hglColor4f函数处崩溃类,但它在崩溃时不显示任何错误消息。我正在做以下事情:QCAR::Matrix44FmodelViewProjection;glColor4f(0.5f,0.0f,0.0f,0.0f);ShaderUtils::multiplyMatrix(&qUtils.projectionMatrix.data[0],&modelViewMatrix.data[0],&modelViewProjection.data[0]);glUsePro

iphone - iOS OpenGL ES 2.0 球体上的广告牌对象并随球体旋转

我在适用于iOS的OpenGLES2.0中有一个球体(地球)。我也有我想放置在地球上的纬度/经度的标记-但我希望标记始终面向用户(广告牌)但在通过触摸旋转时也与地球一起移动。因此,我尝试研究广告牌并将以下代码放在一起。此代码来self创建地球后调用的广告牌功能(在Z轴上向后转换6个单位)。我似乎无法让广告牌的平面始终面向相机,但随着地球的旋转也随之移动。我该怎么做?//GetthecurrentmodelviewmatrixGLKMatrix4originalMat=self.effect.transform.modelviewMatrix;GLKMatrix4currMat=self

ios - OpenGL 2D 游戏纹理工件

我正在为iOS绘制一个像素完美的游戏:问题是每隔几帧我就会看到正在绘制的另一种纹理的随机片段(在黑色中漂浮的蓝绿色点)。首先,我试着确保四边形完全对齐。接下来,我更改了Z缓冲区的大小。这些事情似乎都没有帮助。我正在使用纹理图集,但不幸的是我无法添加填充像素(我见过的一种解决方案)。现在,如果我将纹理坐标从0,1更改为0.005,0.95,问题就会消失,但它看起来像垃圾。此屏幕截图的行为是否暗示了我尚未绑定(bind)的另一个解决方案?请注意,对于sprite艺术,我的过滤模式必须保持NEAREST,当我强制我的角色/相机以整个像素增量移动时(不幸的是感觉不如以子像素移动好),问题就消失

ios - 在 iOS 上更改 OpenGL ES 版本

我的OpenGL调用在iPhone5S和iPadAir上表现得有点奇怪。我不知道为什么,但可能是因为它们支持OpenGLES3,而以前的设备不支持。所以我猜它正在使用OpenGLES3,这可能是问题所在。我不是很了解。有没有办法强制我的应用程序使用OpenGLES2? 最佳答案 您在创建OpenGL上下文时指定API版本。对于ES2.0,创建上下文的调用如下所示:EAGLContext*pCtx=[[EAGLContextalloc]initWithAPI:kEAGLRenderingAPIOpenGLES2];对于ES3.0,上下

ios - 如何使用 OpenGL ES 2.0 将巨大的数组传递给 iOS 上的着色器?

我只需要将一个巨大的Int数组(计数1521)传递给我的动画着色器。首先,我把它当作制服,但作为制服,它似乎太大了。然后,我发现Passingalistofvaluestofragmentshader我没有足够的评论声望,所以我必须打开另一个问题。我不熟悉那些API,我都试过了1D纹理:我找不到任何可用的API。UniformBufferObjects:大多数示例清晰易懂,但在ES2.0的iOS上不可用缓冲纹理:我认为它非常接近,但glTexBuffer和GL_TEXTURE_BUFFER在带有ES2.0的iOS上似乎缺失着色器存储缓冲区对象:这是GL4.3的东西,对于ES2.0来说太

ios - 如何使用 Apples Core Image 和 opengl es

所以我的opengles游戏中有一个纹理(在帧缓冲区中),我一直想模糊它。我一直在尝试多种方法来查看哪种方法可以获得最佳FPS,因为这需要在纹理不断变化时实时发生。我怎样才能将opengles纹理发送到coreImage,然后返回到opengles进行显示?这段代码基本上是您放入UIImage并返回模糊图像的代码。我被卡住的地方是将该纹理获取到UIImage,我想知道它们是否比每次加载新UIImage更好。-(UIImage*)blurredImageWithImage:(UIImage*)sourceImage{//CreateourblurredimageCIContext*con

iphone - OpenGL ES 1.1 中由三角形条构成的四边形上的纹理变形问题

我正在使用三角形带创建一个四边形。问题是当我尝试使用我希望在形状上均匀插值的矩形纹理来绘制它时。只要形状是矩形或矩形的仿射变换,我就会有两个相同的三角形来构建形状并且一切顺利。但是对于任意形状,三角形具有不同的形状并且沿着三角形的公共(public)边自然地发生扭曲。________________||//\/|_____|/_____/\_/OkOkNotOk我想在ES2.0中使用自定义着色器解决这个问题会相当简单,但我如何在ES1.1中实现它? 最佳答案 说白了,如果不提供透视/深度信息,硬件只能对纹理坐标进行线性插值。线性插值