jjzjj

ios - WebGL:OES_texture_float 是否需要存储为 32 位 float ?有些设备似乎只存储为半 float

如果设备支持OES_texture_float,则FLOAT纹理应存储为32位浮点值,accordingtothespec.但是,在某些设备上,纹理似乎存储为半float。以下代码创建一个包含值Pi的1x1浮点纹理。片段着色器对纹理进行采样并将结果与​​Pi的32位float和16位float(即半float)表示进行比较。着色器为32位返回绿色,为16位返回红色。"usestrict";constcanvas=document.getElementsByTagName("canvas")[0];constgl=canvas.getContext("webgl");if(!gl.get

objective-c - 为什么我在 OpenGL ES for iOS 中使用 GL_UNSIGNED_SHORT 时得到 EXC_BAD_ACCESS?

我需要做的是绘制一个包含超过256个元素的顶点数组。当我的数量少于那么多时,并且在调用glDrawElements时使用GL_UNSIGNED_BYTE,一切正常。当我有超过256个元素时,它会再次从第一个顶点开始绘制(即,最后一个元素[256-255,无论什么]与第一个[1或0]连接,并且不会绘制更多元素)。如果我改用GL_UNSIGNED_SHORT,我会得到EXC_BAD_ACCESS。给了什么?intindexLim=self.animIndex;GLushortglIndLim=(GLushort)indexLim;VertexlocalVertices[glIndLim];

iphone - 打开 GL-ES 2.0 : Touch detection

大家好,我正在iOS上做一些工作,这项工作需要使用OpenGLes。所以现在我在屏幕上有一堆正方形、立方体和三角形。其中一些几何图形可能会重叠。触摸检测的任何想法/方法?问候 最佳答案 为了跟进已经给出的答案,正方形、立方体和三角形是凸形,因此您可以很容易地执行光线-对象相交,甚至可以直接从几何而不是从完美对象的数学描述中进行。您将需要能够计算点到平面的距离以及射线与平面的交点。作为一个简单的测试,您可以非常快速地自己实现,对于凸形上的每个多边形计算出射线和平面之间的交点。然后检查该点是否在由与您刚刚测试的共享一​​条边的多边形定义

ios - yv12 到 rgb 在 iOS 中使用 glsl,附上结果图像

referredtothisquestion我使用glsl着色器将yv12帧数据转换为rgb数据,原始图像如下:但结果图像与前者不一样,附在下面:以下是我将三个平面数据上传到纹理的代码:-(GLuint)textureY:(Byte*)imageDatawidthType:(int)widthheightType:(int)height{GLuinttexName;glGenTextures(1,&texName);glBindTexture(GL_TEXTURE_2D,texName);glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILT

ios - 是否可以在 OpenGL ES 2.0/iOS 上渲染到 8 位纹理帧缓冲区?

我需要将某些内容渲染到屏幕外缓冲区,然后通过调用glReadPixels将像素读回“CPU内存”。我的代码在Windows下编译为普通OpenGL时运行良好,但要使其在iOS中的OpenGLES2.0下运行,我必须将GL_ALPHA(或GL_LUMINANCE)纹理替换为一个GL_RGBA,意思是glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,width,height,0,GL_RGBA,GL_UNSIGNED_BYTE,NULL);代替glTexImage2D(GL_TEXTURE_2D,0,GL_ALPHA,width,height,0,GL_ALPHA,

ios - 使用 GL_FLOAT 和 GL_LUMINANCE 进行线性插值?

我正在iPad3上使用OpenGLES2.0开发一个应用程序。我试图在调用glTexImage2D()时从GL_UNSIGNED_BYTE切换到GL_FLOAT用于“type”,GL_LUMINANCE作为“internalFormat”和“format”参数。(以前是GL_RGBA)问题:线性插值现在消失了。当你放大时,它是非常像素化的而不是平滑的,就像线性插值一样。我是否需要切换到GL_RGBA而不是GL_LUMINANCE?使用GL_LUMINANCE会自动禁用插值吗?在我的着色器中,我从:highpvec4tex=texture2D(Texture,TexCoordOut);就

ios - glDrawElements 三角形使用顶点数组开始和结束的顶点渲染(使用 GL_TRIANGLE_STRIP)

我正在尝试使用对glDrawElements()的单个调用来呈现一组线条。每条线都是一个四边形,我在它们之间使用退化三角形来分隔它们。渲染时,使用索引0、n-1和n-2处的顶点绘制了一个额外的三角形,我不相信是GL_TRIANGLE_STRIPS的正常行为。例如,12个顶点组成3个四边形,我的索引数组如下所示:(0,1,2,3,3,4,4,5,6,7,7,8,8,9,10,11)结果是这样的:无论我尝试渲染多少个顶点,或者我在索引列表中放入多少个索引,它仍然用三角形连接开始和结束。我正在使用VBO和IBO进行绘图,包裹在VAO中。所以要画画,我只需调用:glBindVertexArra

android - Google 应用邀请 : iOS App and Android app with different package names/bundle IDs - how can they be linked with goo. gl/应用邀请?

我是一个适用于iOS和Android的应用程序,我需要通过AppInvites链接-但它们有不同的包名称/bundleID,代表相同的服务-我如何将它们与goo.gl/app-invite系统链接起来?Android包名称与iOS包ID不同,因为Androidkey被之前的开发者遗失了,很遗憾。谢谢! 最佳答案 您可以在Android和iOS之间发送邀请。它们使用开发人员控制台(console.developers.google.com)进行链接。android应用程序和iOS应用程序都需要在同一个控制台项目中。如果每个只有一个,那

ios - MapBox GL 从 makefile 构建 Xcode 项目

我在我的项目中使用MapBoxGLNative(https://github.com/mapbox/mapbox-gl-native)。我被迫对源代码进行更改。现在我需要从Makefile在Xxode中为iOS构建一个库。我该怎么做? 最佳答案 git存储库中包含一个Makefile。只需从您的控制台输入makeipackage。 关于ios-MapBoxGL从makefile构建Xcode项目,我们在StackOverflow上找到一个类似的问题: http

ios - 您如何使用 Open GL ES 2.0(着色器)进行视频处理?

这个问题是关于iOS的。在Android上,使用OpenGLES2.0在View上渲染纹理(用于预览)或将其发送到编码器(用于文件写入)非常容易。我一直没能在iOS上找到任何使用着色器效果实现视频播放(从文件预览视频效果)和视频录制(保存带有效果的视频)的教程。这在iOS上可行吗?我遇到了一个关于着色器的演示,名为GLCameraRipple但我不知道如何更一般地使用它。例如:使用AVFoundation。[编辑]我践踏了thistutorialaboutOpenGLES,AVFoundationandvideomergingoniOS在搜索片段时。这是另一个有趣的入口。