gpt4 book ai didi

ios - SpriteKit 和 UIKit 兼容性 : OpenGL error when migrating to Swift 2?

转载 作者:可可西里 更新时间:2023-11-01 01:04:37 26 4
gpt4 key购买 nike

我只是不明白自从我迁移到 Swift 2 后发生了什么。我有一个选项卡式应用程序,但出现此错误:

<CAEAGLLayer: 0x7fb2e053fb40>: calling -display has no effect.
Assertion failed: (length + offset <= _length), function commit_data,
file /BuildRoot/Library/Caches/com.apple.xbs/Sources/Jet_Sim/Jet-1.50/Jet/jet_types_OpenGL.h, line 863.

我知道这真的很模糊,但我不知道从哪里开始寻找错误。谢谢。

编辑:我刚刚意识到这可能与我试图将 GameViewController 嵌入到 TabbedController 中有关。但是,在 iOS 9.0 之前,它不会导致任何错误。有什么线索吗?

最佳答案

好的,所以问题出在 SKShapeNode 上。我正在绘制带有太多顶点的环形部分。通过减少以下函数中的步骤数,问题消失了!!

func drawPortion2(r1:CGFloat, r2:CGFloat, angle1:CGFloat, angle2:CGFloat, fillColor:UIColor, steps:Int)->SKShapeNode{
let vertices=UnsafeMutablePointer<CGPoint>.alloc(2*steps);
let stepsF=CGFloat(steps);

for j in 0..<steps{

vertices[j]=CGPoint(x: r2*cos(angle2-CGFloat(j)*(angle2-angle1)/stepsF), y: r2*sin(angle2-CGFloat(j)*(angle2-angle1)/stepsF));

}

for j in 0..<steps {

vertices[steps+j]=CGPoint(x: r1*cos(angle2-CGFloat(steps-j)*(angle2-angle1)/stepsF), y: r1*sin(angle2-CGFloat(steps-j)*(angle2-angle1)/stepsF));

}

let portion=SKShapeNode(points:vertices, count: 2*steps);
//portion.position=centerPos;
portion.fillColor=fillColor;

return portion;

}

关于ios - SpriteKit 和 UIKit 兼容性 : OpenGL error when migrating to Swift 2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32677503/

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