【问题标题】:How to enable setAliasTexParameters for CCMenuItem with Cocos2D如何使用 Cocos2D 为 CCMenuItem 启用 setAliasTexParameters
【发布时间】:2012-02-24 22:14:25
【问题描述】:

我的像素化 2D 游戏真的很难过。我正在使用 Cocos2D 框架,菜单让我发疯。我可以使用 Sprites 更改 setAliasTexParameters 参数,但不适用于 CCMenuItemImage。

我相信 CCMenuItemSprite 可以做到这一点,但我认为你也无法直接设置它,我什至无法让菜单与 CCMenuItem Sprites 一起使用。它与 CCMenuItemImages 思想很好地配合使用。

这里是模糊的按钮: http://cl.ly/0i1V3Y0e3u2k1t102H2a

由于某种未知原因,左箭头按钮很锋利。我试图将锚点、位置和填充更改 1 和 0.5 像素,但没有帮助。所有按钮的大小都是偶数。

这是我的菜单项之一的代码:

CCMenuItemImage *buttonMoveL = [CCMenuItemImage itemFromNormalImage:@"buttonMoveLeft.png" selectedImage:@"buttonMoveLeft2.png" block:^(id sender) {
        // Do something 
        }
    }];

这是菜单本身:

ActionsMenu = [CCMenu menuWithItems: buttonAttack, buttonMoveL, buttonMoveR, buttonDefend, nil];
    ActionsMenu.position = ccp(240, 38);
    [ActionsMenu alignItemsHorizontallyWithPadding:8];

非常感谢所有帮助!

【问题讨论】:

标签: cocos2d-iphone antialiasing blurry


【解决方案1】:

我通过在菜单中使用精灵来让它工作。这是我的解决方案:

CCSprite *spriteDefend1 = [CCSprite spriteWithSpriteFrameName:@"buttonDefend1.png"];
    CCSprite *spriteDefend2 = [CCSprite spriteWithSpriteFrameName:@"buttonDefend2.png"];
    CCMenuItemImage *buttonDefend = [CCMenuItemSprite itemFromNormalSprite:spriteDefend1 selectedSprite:spriteDefend2 block:^(id sender) {
        // Do something cool
        }
    }];

【讨论】:

  • 确实可行,如果您需要以多种语言本地化您的应用程序,请记住包含单独的按钮资产。干杯。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多