cocos2dx 真是要命啊,由于公司要做跨平台游戏,故在windows里面cocos2dx 经常抽风。
没办法啊,本来不想改源码的,且改且珍惜啊。
最近又遇到了在windows下面文字模糊的情况,由于字体绘制跟图片绘制如出一辙,故断定一定是字体没有开启抗锯齿功能。
因此只能单步调试:
找到了字体初始化入口:Texture2D::initWithString
bool Texture2D::initWithString(const char *text, const FontDefinition& textDefinition) { ... ... ... _hasPremultipliedAlpha = hasPremultipliedAlpha; return ret; }
好了:不多说,添加抗锯齿功能。对所有文本都有效。
bool Texture2D::initWithString(const char *text, const FontDefinition& textDefinition) { ... ... ... _hasPremultipliedAlpha = hasPremultipliedAlpha; // add by xxj 2014/08/25 16:22:27 this->setAliasTexParameters(); return ret; }
ok,完成。
顺便说下:这个不必改源码的,可以对单个字体做开启据此功能,但是由于我项目是用cocostudio开发的,就这样让全部都支持。
顺便说下:手机上运行是不会出现这个问题的。
学习交流!!!紧供参考
时间: 2024-10-29 10:46:20