cocos2d-lua 关于纹理像素放大

96
人气小哥
2017.07.19 14:50* 字数 80

所谓像素放大就是ps里面的邻近(保留硬边缘)

Ps中的邻近保留硬边缘.png

设置放大后像素效果
使用
setAliasTexParameters

放大后像素效果.png

相反设置平滑过渡使用
setAntiAliasTexParameters

放大后模糊效果.png

如果是cc.Sprite调用

local _spr = cc.Sprite:create()
    :addTo(self)
assert(_spr)
local frameName = "title_nil.png"
local frame = cc.SpriteFrameCache:getInstance():getSpriteFrame(frameName)
assert(frame, "frameName = " .. frameName .. "文件不存在")
_spr:setSpriteFrame(frame)
_spr:getTexture():setAliasTexParameters()

如果是Widget控件使用呢 继承Widget接口的ImageView

self.m_Image_JumpItem:getVirtualRenderer():getSprite():getTexture():setAliasTexParameters()
--self.m_Image_JumpItem:getVirtualRenderer():getSprite():getTexture():setAntiAliasTexParameters()

如果是BUTTON需要去源码中找相应接口

cocos3.10自己的框架