StromanStroman 2019-08-02 10:14 采纳率: 45%
浏览 328
已结题

为啥glDrawArrays不总是出现预期的图像呢?

各位大神你们好。
平台是iOS,用的工具是OpenGLES2.0,开发语言是Objective-C。
问题如下。
我现在试图使用OpenGLES2.0的顶点模式绘制线条,现在我以每条线条为单位,这里面每条线条都是若干个点的数据的集合。
每个线条我用一个数据模型来存储,数据模型中有一个NSData的属性来存储该数据模型对应的线条的所有的点的字节数据。
因为线条不是一条,所以我用C语法创建了一个GLuint类型的动态数组。
当我在要绘制这些线条的时候,我使用VAO数组中的一个来生成VAO,绑定VAO,然后创建VBO,VBO中使用的数据是数据模型中的NSData中的字节,绑定好VAO以后,我就把VBO删除了。
在这里我要强调的是数据模型和VAO数组中的元素都是一一对应的,不会出现错乱。
在渲染阶段,我也是顺次对各个VAO进行渲染,使用的是glDrawArrays方法,这里面用的是for循环。
而且在每次glDrawArrays之后我都会调用glFlush();glFinish();的。
这里面一次渲染是进行了若干次绘制,这若干次绘制就是用for循环来做的。
但是出来的效果并不是每次绘制都会出现预想的效果,就是说有些渲染并没有新的图像出现,请问这是为什么?

  • 写回答

0条回答

    报告相同问题?

    问题事件

    • 已结题 (查看结题原因) 10月12日

    悬赏问题

    • ¥15 cgictest.cgi文件无法访问
    • ¥20 删除和修改功能无法调用
    • ¥15 kafka topic 所有分副本数修改
    • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
    • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
    • ¥40 串口调试助手打开串口后,keil5的代码就停止了
    • ¥15 电脑最近经常蓝屏,求大家看看哪的问题
    • ¥60 高价有偿求java辅导。工程量较大,价格你定,联系确定辅导后将采纳你的答案。希望能给出完整详细代码,并能解释回答我关于代码的疑问疑问,代码要求如下,联系我会发文档
    • ¥50 C++五子棋AI程序编写
    • ¥30 求安卓设备利用一个typeC接口,同时实现向pc一边投屏一边上传数据的解决方案。