【问题标题】:Retina Display images looks fuzzy and blurred. No Reason why?Retina Display 图像看起来模糊不清。没有理由为什么?
【发布时间】:2012-07-06 19:10:33
【问题描述】:

我是Cocos2d 游戏开发者。我正在使用视网膜显示图像开发游戏。

我使用 zwoptex 创建了带有和不带有 HD 后缀的纹理文件。

我在app-delegate 中添加了那些 zwoptex plist 纹理文件,例如[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"Background.plist"]; 我已将视网膜显示启用为YES[director enableRetinaDisplay:YES];

我在任何我想使用ccsprite *background = [CCSprite spriteWithSpriteFrameName:@"sample.png"]; 的地方都使用了plist 中的png 文件。

我包含的所有这些 png 文件都是高分辨率图像,具有960*640480 * 320 两种尺寸。但是当我在模拟器或 iPhone 中运行游戏时,图像毫无理由地看起来很模糊。任何人请帮我解决这个问题........

(以下图片作为示例发布在评论中。)

【问题讨论】:

  • 这与我的问题无关。我使用帖子中给出的相同指南创建了精灵表。我可以查看视网膜显示图像,但它看起来很模糊。每当我在模拟器或 iPhone 中运行游戏时,它都不会显示原始图像分辨率。当启用视网膜显示设置为是或否时,它仅显示模糊图像作为输出。
  • 确保在调试器中以像素为单位的精灵大小是您想要的。我的意思是,例如,如果您使用 Retina 设备,它的大小为 200x100,像素为 400x200。

标签: ios cocos2d-iphone


【解决方案1】:

cocos2d 默认对精灵应用抗锯齿。您需要将其关闭:

[background.texture setAliasTexParameters];

希望这会有所帮助。

【讨论】:

  • 感谢您的回复。我使用它,但结果相同。有没有其他方法可以解决这个问题
  • 这种情况只发生在视网膜显示器上吗?
  • 无论视网膜显示设置为是还是否,它都只会显示模糊的图像。
  • 我明白,但我的意思是只在视网膜设备上? 3gs(普通屏幕)呢
  • 嗨老兄,我通过添加 [CCTexture2D setDefaultAlphaPixelFormat:kTexture2DPixelFormat_RGBA8888]; 解决了这个问题。通过将像素格式设置为 4444 到 8888,所有这些模糊问题都得到了解决,非常感谢您的支持
【解决方案2】:

您发布的屏幕截图(我冒昧地将其添加到您的问题中)显示它是从 iPhone 模拟器而不是 iPhone (Retina) 模拟器中获取的。因此它不会使用高清图像。

在 iPhone 模拟器运行的情况下,转到硬件 -> 设备菜单并选择 iPhone (Retina) 作为设备。然后重启你的应用。

还请注意,无论 cocos2d 或您的 Mac 中的设置如何,iPhone 模拟器都只会以 16 位的颜色深度渲染游戏。出于性能原因,iOS Simulator 渲染器仅限于 16 位渲染(它只使用软件渲染,没有硬件加速)。只有在实际设备上观看游戏,您才能对图像质量做出判断。

要测试游戏是否实际加载了高清资源,或者出于某种原因只加载了标清图像,请尝试在没有标清图像的情况下运行游戏。如果游戏尝试加载 SD 图像,则会导致错误。如果不是,它正在加载高清图像,并且“模糊问题”有不同的原因。您还可以通过将 NSLog 语句添加到 CCFileUtil 类方法 fullPathFromRelativePath 来记录加载的文件,该方法执行文件名更改以尽可能加载 -hd 图像。

您会发现,即使对精灵应用极少量的缩放或旋转也可能使其看起来模糊,因此请检查您是否碰巧这样做了。混合模式的任何变化(使用 ccBlendFunc)也可能导致图像模糊。还要检查您的图像是否完全不透明(不透明度 == 255)。

【讨论】:

  • 感谢您的帮助,伙计...我使用 [CCTexture2D setDefaultAlphaPixelFormat:kTexture2DPixelFormat_RGBA8888]; 解决了这个问题。它清除了所有那些模糊的问题。再次感谢您给予我的指导。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-09
相关资源
最近更新 更多