ios - glUniform*fv 是否保留传递的缓冲区?

标签 ios objective-c swift opengl-es

当我调用 glUniform2fv 时到底会发生什么?

它是同步复制传递的缓冲区还是只是接受指针并稍后使用该数据?它保留缓冲区吗?

换句话说:在函数中传递本地创建的或非保留的缓冲区是否安全,或者由我来保持该缓冲区处于事件状态?

我在 iOS/Mac 上使用 Objective-C 和/或 Swift 来使用 OpenGL,我担心 GC (ARC) 会在发送到 GPU 之前吃掉我的缓冲区。

最佳答案

它是安全的,但文档对此并不清楚,至少在 https://www.opengl.org/sdk/docs/man/html/glUniform.xhtml 找到的版本

They retain the values assigned to them by a call to glUniform until the next successful link operation occurs on the program object

关于ios - glUniform*fv 是否保留传递的缓冲区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35954374/

相关文章:

ios - 数据未显示在表格 View 中

ios - UIPickerView 行为异常

ios - 从 API 模式问题加载数据

iOS NSMutableArray 如何检查它是否包含 NSNumber 对象?

iphone - SIGTRAP -[__NSCFString 计数] : unrecognized selector sent to instance

ios - 当使用 Parse 查询数据时,我的 View 仅在重复 while 之后加载

ios - 在不同的测试目标之间有效地共享测试替身

ios - 如何在iOS swift中实现评论和回复系统

ios - 按钮不起作用(Swift)

objective-c - 选择器的生命周期是多少?