为啥 Sprite Kit 文本分辨率会略微像素化?

Posted

技术标签:

【中文标题】为啥 Sprite Kit 文本分辨率会略微像素化?【英文标题】:Why is Sprite Kit Text Resolution Slightly Pixelated?为什么 Sprite Kit 文本分辨率会略微像素化? 【发布时间】:2014-05-14 14:52:49 【问题描述】:

我正在考虑将 UITableView 添加到 SKView,但我在这里阅读了答案,其中提到这将是“粗鲁的”: Sprite Kit Table View

我测试了一下,tableview中的文字有点像素化。出于好奇,我还制作了一个简单的独立 SKLabelNode,发现它也不是视网膜质量。

我的问题是为什么这些情况下的文本不是视网膜?有没有办法让它们变得更清晰,就好像它们是由 UIKit 呈现的一样?关于文本和 Sprite Kit,我需要了解哪些基本概念?

【问题讨论】:

什么字体(名称)?什么字体大小?节点是否缩放?我观察到的唯一一件事是你不能低于特定的字体大小,即 10 像素左右。原因可能是字体被光栅化(即绘制到纹理上)而不是像我假设 UIKit 那样绘制为矢量图形。 我在 fontSize = 30 时使用 HelveticaNeue-Light。使用 UIKit 它非常清晰。场景在 ViewController 中初始化,大小设置如下(我相信这是一种常用方法): SKScene * scene = [MyScene sceneWithSize:skView.bounds.size]; hmmm 可能改变场景 scaleMode 会影响这个? 【参考方案1】:

我的模拟器设置为使用 iPad 进行测试,而不是 iPad 视网膜。呵呵

【讨论】:

以上是关于为啥 Sprite Kit 文本分辨率会略微像素化?的主要内容,如果未能解决你的问题,请参考以下文章

Sprite Kit - 使用 textureFromNode 时 Retina 上的低分辨率纹理

用Swift语言和Sprite Kit复制微信飞机大战游戏

Sprite Kit 场景编辑器 GameScene.sks 场景宽度和高度

iOS7 Sprite Kit如何在更改锚点时计算节点位置?

如何在 Sprite Kit / Swift 中将文本环绕在一个圆圈中

Sprite Kit:很多精灵 (1000+),带有位 Blitting