草庐IT

opengl-compat

全部标签

ios - OpenGL ES 2.0 线条看起来比 Core Animation 更锯齿。在 iOS 4 中可以抗锯齿吗?

有没有一种相对简单的方法可以使用OpenGLES2.0在iOS4上实现抗锯齿?在某种情况下,我需要放弃CoreAnimation以支持OpenGLES2.0以获得真正的3d图形。一切正常,但我注意到使用CoreAnimation渲染的简单3d立方体比使用OpenGL制作的立方体更清晰,后者具有更多锯齿状的线条。我读到iOS4.0支持GL_TRIANGLE_STRIP的抗锯齿,我发现了一个onlinetutorial(请参阅下面的链接代码)看起来很有希望,但我无法让它工作。我首先注意到的是所有OES后缀,它们似乎是OpenGLES1.0的残余。因为我所做的一切都是为了OpenGLES2.

ios - iPad 缺少 OpenGL 扩展字符串 GL_APPLE_texture_2D_limited_npot

在我的iOS游戏中,我想在可用时使用GL_APPLE_texture_2D_limited_npot扩展来节省内存(游戏有NPOT纹理,在我当前的实现中,我添加了一些填充来使它们成为2的幂)。我正在我的iPad(第一代)上进行测试。到目前为止我读到的所有内容都表明所有支持OpenGLES2的iOS设备(包括iPad)也支持GL_APPLE_texture_2D_limited_npot(这非常好,因为我的游戏使用OpenGLES2)。我已经在我的iPad上进行了测试,它确实支持(如果我将wrap设置为GL_CLAMP_TO_EDGE,我删除了填充并且图像可以工作),但是当我调用glGe

ios - 是否可以在 ios 和 android 中使用 haxe nme 构建 opengl 游戏?

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。我知道haxenme可以在后端使用opengl来显示游戏的2DSprite,但是是否可以直接从nme操作opengl来构建跨平台的ios和android纯3Dopengl游戏?

ios - -[CCTextureAtlas drawNumberOfQuads :fromIndex:] 556 中的 OpenGL 错误 0x0500

我正在学习LearnCOCOS2D一书中的BOX2D教程,我开始在控制台上每秒看到10次这样的错误。我用谷歌搜索了这个错误,但找不到任何相关信息。有些人在谈论着色器文件,但我不知道那些是什么。有些人说不要使用多个GLVIEW,但我看不出我在这样做。下面是实现文件的全部代码。错误信息:-[CCTextureAtlasdrawNumberOfQuads:fromIndex:]556中的OpenGL错误0x0500-(void)dealloc{if(world){deleteworld;world=NULL;}if(debugDraw){deletedebugDraw;debugDraw=n

ios - 当图像太大时使用 OpenGL 的黑色纹理

在我的应用程序(Tres)中,我从图像选择器加载图像并将其放在纹理上。在我的所有测试中它都运行良好,但现在使用带视网膜显示屏的iPad的在线用户提示图像显示为黑色。我正在查看GL_MAX_TEXTURE_SIZE以确保图像不大于该值。这里我设置了纹理:texture_aspect=image.size.width/image.size.height;CGFloatside=image.size.width;if(side>GL_MAX_TEXTURE_SIZE)side=GL_MAX_TEXTURE_SIZE;UIImage*newImage=[ImageUtilsimageWithI

c++ - 当我在我的 xcode 项目中使用 #include <OpenGL/gl.h> 行时,它在哪里寻找 gl.h 文件?

我正在将Linux的开源C++程序移植到OSX。我一直在改变这行#include对此#include基于这篇文章的建议:HowdoIuseOpenGLinaC++projectthatIamportingfromLinux该更改消除了编译器错误,但我很困惑:xcode/它使用的C++编译器在哪里查找该文件?如果我搜索我的xcode项目,我没有看到名为OpenGL的目录或文件=gl.h?我习惯于根据.html文件的工作目录在网页中包含图像或javascript库。xcode中发生了其他事情。 最佳答案 在Mac上,您将从OpenGL框

objective-c - OpenGL ES 2.0 纹理映射,但显示为黑色

我试图让我的纹理显示在基本OpenGLView(UIView的子类)中,但无论我使用哪种纹理,它都显示为黑色。我的View代码如下:@implementationSymGLViewtypedefstruct{floatPosition[3];floatColor[4];floatTexCoord[2];}Vertex;constVertexVertices[]={{{1,-1,0},{1,0,0,1},{0,0}},{{1,1,0},{0,1,0,1},{0,1}},{{-1,1,0},{0,0,1,1},{1,1}},{{-1,-1,0},{0,0,0,1},{1,0}}};cons

ios - 如何传递非插值数据 OpenGL ES (GLSL)

我正在尝试将简单的FLOAT值从顶点传递到片段着色器。我怎样才能在没有插值的情况下“按原样”传递它?在桌面上我可以使用平面变化来禁用插值,在openGLes中是否有类似的东西或者唯一的方法是通过纹理? 最佳答案 GLSLES目前不支持flat关键字,所以唯一的办法就是在所有的三角形顶点使用相同的float值。这里给出了相同的答案:Inopengles2,isthereawaytopreventinterpolationofvaryings 关于ios-如何传递非插值数据OpenGLES(

ios - iOS OpenGL ES 3.0 上缺少 GL_GEOMETRY_SHADER

我正在将我的引擎移植到iOS,但出现错误'GL_GEOMETRY_SHADER'undefined我正在使用iOS8SDK和OpenGL3.0;设备是iPhone5s。还有其他选择吗?或者如何访问几何着色器? 最佳答案 OpenGLES中没有几何着色器,无论是3.0还是3.1。有一个extension,它基于ES3.1。由于iOS目前不支持3.1,因此该扩展程序当然无法在iOS上使用。替代品?如果你真的需要几何着色器,基于Android的设备总是一个选择。:)几何着色器是ES3.1的Android扩展包的一部分,它是Google鼓励

objective-c - OpenGL ES - 如何批量渲染 500 多个具有/不同 alpha、旋转和缩放的粒子?

我正在开发一款iOS游戏,需要一次渲染500-800个粒子。我了解到,最好在OpenGLES中批量渲染许多Sprite,而不是在游戏中的每个Sprite上调用glDrawArrays(..),以便能够渲染更多Spritew/out帧率急剧下降。我的问题是:我如何批量渲染500多个粒子,它们都具有不同的alpha、旋转和缩放,但共享相同的纹理图集?这个问题的重点在于每个粒子的不同alphas、旋转和尺度。我意识到这个问题与HowdoIdraw1000+particles(w/uniquerotation,scale,andalpha)iniPhoneOpenGLESparticlesys