gpt4 book ai didi

ios - GLKit:为 Swift 格式化 Objective-C GLKit 参数

转载 作者:行者123 更新时间:2023-11-28 15:19:11 27 4
gpt4 key购买 nike

场景

我正在构建一个应用程序来处理视频帧的色度值。我正在使用来自另一个项目的 Objective-C 代码并将其翻译成 Swift。但是我遇到了一段奇怪的代码,我想将其翻译成 Swift,如果我能弄清楚它的含义的话。方法如下:

- (void)updateUniformValues
{
// Precalculate the mvpMatrix
GLKMatrix4 modelViewProjectionMatrix = GLKMatrix4Multiply(
self.transform.projectionMatrix,
self.transform.modelviewMatrix);
glUniformMatrix4fv(uniforms[GMVPMatrix], 1, 0,
modelViewProjectionMatrix.m);

// Texture samplers
const GLint samplerIDs[1] = {self.texture2d0.name};
glUniform1iv(uniforms[GSamplers2D], 1,
samplerIDs);
}

note: self.texture2d0 is of type GLKEffectPropertyTexture

有问题的行是 const GLint samplerIDs[1] = {self.texture2d0.name};。在使用 Swift 编程之前,我已经使用 Objective-C 编写代码多年,但我以前从未见过这样的东西。所以它是 Glint 类型的常量,但是从没有 return 语句的 self.texture2d0 block 中分配了一个值?而 [1] 让我觉得它应该是一个 Array。好迷茫。

问题

这条线在做什么?我怎样才能将它翻译成 Swift?

最佳答案

它是一个 samplerIDsGLint 的一个const 数组,有一个非常量成员,self.texture2d0.name

这类似于:

let samplerIDs = [self.texture2d0.name]

关于ios - GLKit:为 Swift 格式化 Objective-C GLKit 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46311744/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com