草庐IT

ios - OpenGL ES(在 iOS 上):

我有一系列标准的OpenGL指令,格式如下:glBegin(GL_TRIANGLES);//...glNormal3fv(a);glVertex3f(a[0]*r,a[1]*r,a[2]*r);//...glEnd();我想在iOS上运行它们,因此必须将它们转换为OpenGLES。由于OpenGLES不支持glBegin()或glEnd(),我将glVertex3f调用包装到GLfloat顶点数组中,然后调用glDrawArrays()。GLfloatvertices[]={1,0,0,0,1,0,...};glEnableClientState(GL_VERTEX_ARRAY);gl

android - OpenGL ES - 在不同的顶点上重复相同的纹理

假设我有一个使用GL_TRIANGLE_STRIP由几个三角形组成的多边形(一个长矩形)。现在假设我有一个正方形纹理,应该映射到构成矩形的每个小正方形。我该如何实现? 最佳答案 您需要沿着几何体重复纹理。为此,您需要将纹理的GL_TEXTURE_WRAP_S设置为GL_REPEAT。然后你可以为你的顶点分配纹理坐标:(0,0),(0,1)第一列的两个顶点(1,0),(1,1)用于第2列的2个顶点(2,0),(2,1)第3列等等 关于android-OpenGLES-在不同的顶点上重复相同

ios - openGl ES 纹理渲染

我目前正在学习OpenGLES以构建iOS应用程序。我试图为我的模型添加纹理但没有成功。我从下载了一个示例项目link并且一直在研究它。我的问题是:当我不加改动地运行项目时,我得到以下信息:如您所见,它是一个带有纹理的基本立方体。我决定将.png文件更改为不同的图像。但是当我这样做时,我遇到了:我不知道为什么我的.png文件没有渲染到立方体?这是我的纹理:和原文:只是为了确认我没有收到任何错误并且我没有对代码进行任何更改。 最佳答案 如果您使用的是非二次幂纹理,则不能使用mipmap,您需要正确设置过滤。过滤:glTexParame

ios opengl 3.0 不编译版本

我正在xcode5中试用opengl3.0这就是我编译着色器的方式*shader=glCreateShader(type);glShaderSource(*shader,1,&source,NULL);glCompileShader(*shader);这是我的着色器#version140attributevec4position;attributevec4color;varyingvec4colorVarying;attributevec2TexCoordIn;varyingvec2TexCoordOut;outintrowIndex;outintcolIndex;voidmain(v

android - OpenGL es 2.0 glDrawElements 索引指针错误

我在为每个面使用不同纹理的立方体添加纹理时遇到了问题。我可以在所有面上使用一种纹理绘制立方体,但是当我尝试使用多种纹理时,它会失败。我尝试这样做的方式是这样的://myindexingarraylocatedinaheaderfile#defineNUM_IMAGE_OBJECT_INDEX36staticconstunsignedshortcubeIndices[NUM_IMAGE_OBJECT_INDEX]={0,1,2,2,3,0,//front4,5,6,6,7,4,//right8,9,10,10,11,8,//top12,13,14,14,15,12,//left16,17

ios - 如何将 Apple 的 iAds 添加到我基于 OpenGL 的 iPhone 应用程序中?

我想通过Apple的iAds为我的基于OpenGL的iPhone应用程序创造一些收入。应用中的所有内容均使用OpenGL完成,包括菜单、按钮等。如何将iAd添加到我的应用中?更多信息:我查看了来自Apple的示例代码,但仍然卡住了。仅供引用,我目前不使用任何ViewController。我只有一个“窗口”。我尝试使用addSubView方法将bannerView添加到窗口,但它只会使应用程序崩溃。出于某种原因,这适用于MailComposerView。感谢您的帮助!更多信息:我创建了UIViewController的子类并在其上放置了BannerAd。现在测试广告出现了。如何使UIVi

iphone - OpenGL ES 和默认的 iPhone UI 组件

因此,我对桌面平台上的OpenGL相当有经验,并且正在尝试将其与我的iOS开发经验相结合。我已经创建了几个大型iOS应用程序,所以我对这个过程也有很好的理解。我想知道是否有人知道将iOSUI组件与OpenGL场景集成的任何有用技术,或者这是否可能。如果这是一般情况,我深表歉意。如有必要,我可以对其进行改进。例如,假设您有一个iPad应用程序,其左侧有一个表格和诸如此类的东西,而您想在右侧添加一个小的3DOpenGL窗口。(也许是图表或用户可以与之交互的东西?)这不是为了游戏或任何东西,而是为了我对如何顺利整合不同平台的理解。社区可以提供的任何建议或链接将不胜感激。提前致谢!

ios - 为什么 glBlendFunc() 在我的 OpenGL ES 2.0 应用程序中没有执行任何操作?

我正在绘制非纹理三角形,其alpha在像素着色器中被明确设置为0.5以用于测试目的。我的应用程序基于Xcode提供的OpenglES预制件。我没有触及我的EAGLView类。我打电话glEnable(GL_ALPHA)glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SC_ALPHA)glDrawArrays(...)我的clearColor是0,0,0,1,CAEAGLayer的格式是RGBA8。我看到的结果是没有发生任何类型的混合,绘制的像素只是替换了下面的内容。我也尝试过使用GL_ONE,GL_ONE。我试图将我的CAEAGLayer的不透明属性设置为f

iphone - 当我调整 CAEAGLLayer 大小时,OpenGL 绘图搞砸了

我正在尝试在我的应用程序中实现一些基本的OpenGL,在这样做的过程中,我使用了SDK中包含的GLPaint示例作为起点。我的代码本身运行良好,但一旦我将所有内容移至我的应用程序,相同的代码就会失败。根据我的尝试,问题是(1)图元在第一次绘制时被压扁,然后在绘制后续图元时漂浮到屏幕顶部,或者(2)图元根本不出现.我已将范围缩小到我的应用程序需要调整CAEAGLLayer的大小这一事实。它在UIScrollView中,可以随时移动和调整大小(捏合、拖动等),就像在GLPaint示例中一样,我吹走了帧缓冲区并在每次View调整大小时(通过layoutSubviews)重新创建它,但这不会不

ios - YUV420p 有很多绿色 --> iOS 上 OpenGL 2.0 着色器中的 RGB

我想使用ffmpeg和OpenGLES2.0为iOS制作一个电影播放器但我有一些问题。输出的RGB图像有很多绿色。这是代码和图片480x320宽度和高度:512x512纹理宽度和高度我从ffmpegAVFrame得到了一个YUV420p行数据。for(inti=0,nDataLen=0;idata[i];for(intj=0;j>nShift);j++){memcpy(&pData->pOutBuffer[nDataLen],pYUVData,(mWidth>>nShift));pYUVData+=_frame->linesize[i];nDataLen+=(mWidth>>nShif