Swift SpriteKit:png图像在游戏运行时显示为黑色.我该如何解决?

Swift SpriteKit:png图像在游戏运行时显示为黑色.我该如何解决?,第1张

概述我正在使用 Xcode, Swift和SpriteKit制作游戏.我在photoshop中制作了一个png图像,它涉及透明度,在游戏中看起来很黑.我有其他png图像也涉及透明度,它们看起来像他们应该的方式.我不认为这是一个代码问题,但为了以防万一,这里是将图像引入游戏的代码(它在didMoveToView函数内): let warning = SKSpriteNode(imageNamed: "y 我正在使用 Xcode,Swift和SpriteKit制作游戏.我在photoshop中制作了一个png图像,它涉及透明度,在游戏中看起来很黑.我有其他png图像也涉及透明度,它们看起来像他们应该的方式.我不认为这是一个代码问题,但为了以防万一,这里是将图像引入游戏的代码(它在dIDMovetoVIEw函数内):

let warning = SKSpriteNode(imagenamed: "yellow_warning")    warning.setScale(0.1)    warning.anchorPoint = CGPoint(x: 0,y: 0.5)    warning.position = CGPoint(x: CGRectGetMinX(self.scene!.frame)+296,y: CGRectGetMIDY(self.scene!.frame))    warningsNode.addChild(warning)

warningsNode是一个简单的SKNode,是场景的子节点.

这是我正在使用的图像

谢谢您的帮助!

解决方法 你的形象太大了.下载文件它告诉我它是270×9000像素.根据iPhone / iPad / Mac中的硬件,您的GPU可能无法处理所有这些像素.至少在iPhone / iPad上,图像的最大尺寸(我知道)是4096×4096.您可以通过创建OpenGL上下文并读取告诉您最大纹理大小的属性来检查max.

我会缩小你的图像,使其不高于4096(或者你的硬件告诉你的任何东西).虽然将超大纹理设计为面向未来的很好,但您可能会走得太远.我建议更改此映像的副本,以便以后在有更强大的硬件时不必重新生成它.

编辑:你甚至可以把它做成270×10并拉伸它,因为没有人能够说它被拉伸,因为它看起来都一样下降(如果我错了,请随时纠正我).

总结

以上是内存溢出为你收集整理的Swift SpriteKit:png图像在游戏运行显示为黑色.我该如何解决?全部内容,希望文章能够帮你解决Swift SpriteKit:png图像在游戏运行时显示为黑色.我该如何解决?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1005142.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存