通知设置 新通知
控制器的动作如何停止
heartkey 回复了问题 • 3 人关注 • 2 个回复 • 245 次浏览 • 2025-12-15 14:19
在fairygui里有没有像cocos creator中一样的预设体
Erin 回复了问题 • 3 人关注 • 2 个回复 • 333 次浏览 • 2025-12-15 14:19
cc3.7.2,使用registerFont 注册字体,fairygui设置全局字体不生效?
letYou 回复了问题 • 4 人关注 • 3 个回复 • 1139 次浏览 • 2025-11-28 17:20
关于发布后纹理集问题
谷主 回复了问题 • 2 人关注 • 1 个回复 • 244 次浏览 • 2025-11-27 19:52
cocos3.8.7中支持颜色混合
GodChouyu 发表了文章 • 0 个评论 • 170 次浏览 • 2025-11-14 19:05
两种方法。
1.可以修改源码的情况下,修改BlendMode.ts文件的apply函数。
public static apply(node: Node, blendMode: BlendMode) {
let f = factors[<number>blendMode];
node.components.forEach(component => {
if (component instanceof UIRenderer) {
component["_srcBlendFactor"] = f[0];
component["_dstBlendFactor"] = f[1];
}
})
}2.不修改源码,覆盖GObject的setup_beforeAdd方法。随意一个脚本中添加并调用Init();
public static init() {
const factors = [
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //normal
[gfx.BlendFactor.ONE, gfx.BlendFactor.ONE], //none
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE], //add
[gfx.BlendFactor.DST_COLOR, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //mul
[gfx.BlendFactor.ONE, gfx.BlendFactor.ONE_MINUS_SRC_COLOR], //screen
[gfx.BlendFactor.ZERO, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //erase
[gfx.BlendFactor.ZERO, gfx.BlendFactor.SRC_ALPHA], //mask
[gfx.BlendFactor.ONE_MINUS_DST_ALPHA, gfx.BlendFactor.DST_ALPHA], //below
[gfx.BlendFactor.ONE, gfx.BlendFactor.ZERO], //off
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //custom1
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //custom2
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //custom2
];
const GObjectSetupBeforeAdd = fgui.GObject.prototype.setup_beforeAdd;
fgui.GObject.prototype.setup_beforeAdd = function (this: fgui.GObject, buffer: ByteBuffer, beginPos: number) {
GObjectSetupBeforeAdd.call(this, buffer, beginPos);
let f = factors[<number>this.blendMode];
this.node.components.forEach(component => {
if (component instanceof cc.UIRenderer) {
component["_srcBlendFactor"] = f[0];
component["_dstBlendFactor"] = f[1];
}
})
}
}
因为blend模块的相关代码没有导出,所以先这么处理。factors数组是从fgui源码中复制出来的。
_srcBlendFactor和_dstBlendFactor两个属性的cocos源码在cocos源码地址。
已经提交pr,谷主看到的话希望能合并一下。
查看全部
两种方法。
1.可以修改源码的情况下,修改BlendMode.ts文件的apply函数。
public static apply(node: Node, blendMode: BlendMode) {
let f = factors[<number>blendMode];
node.components.forEach(component => {
if (component instanceof UIRenderer) {
component["_srcBlendFactor"] = f[0];
component["_dstBlendFactor"] = f[1];
}
})
}2.不修改源码,覆盖GObject的setup_beforeAdd方法。随意一个脚本中添加并调用Init();public static init() {
const factors = [
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //normal
[gfx.BlendFactor.ONE, gfx.BlendFactor.ONE], //none
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE], //add
[gfx.BlendFactor.DST_COLOR, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //mul
[gfx.BlendFactor.ONE, gfx.BlendFactor.ONE_MINUS_SRC_COLOR], //screen
[gfx.BlendFactor.ZERO, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //erase
[gfx.BlendFactor.ZERO, gfx.BlendFactor.SRC_ALPHA], //mask
[gfx.BlendFactor.ONE_MINUS_DST_ALPHA, gfx.BlendFactor.DST_ALPHA], //below
[gfx.BlendFactor.ONE, gfx.BlendFactor.ZERO], //off
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //custom1
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //custom2
[gfx.BlendFactor.SRC_ALPHA, gfx.BlendFactor.ONE_MINUS_SRC_ALPHA], //custom2
];
const GObjectSetupBeforeAdd = fgui.GObject.prototype.setup_beforeAdd;
fgui.GObject.prototype.setup_beforeAdd = function (this: fgui.GObject, buffer: ByteBuffer, beginPos: number) {
GObjectSetupBeforeAdd.call(this, buffer, beginPos);
let f = factors[<number>this.blendMode];
this.node.components.forEach(component => {
if (component instanceof cc.UIRenderer) {
component["_srcBlendFactor"] = f[0];
component["_dstBlendFactor"] = f[1];
}
})
}
}因为blend模块的相关代码没有导出,所以先这么处理。factors数组是从fgui源码中复制出来的。
_srcBlendFactor和_dstBlendFactor两个属性的cocos源码在cocos源码地址。
已经提交pr,谷主看到的话希望能合并一下。
关于分支发布后组件的型别消失问题
谷主 回复了问题 • 2 人关注 • 1 个回复 • 193 次浏览 • 2025-11-03 22:29
在cocos creator中3.8.4关联系统失效
loop 回复了问题 • 2 人关注 • 2 个回复 • 274 次浏览 • 2025-10-13 20:31
creator 3.8.7引擎下,textinput的bug
谷主 回复了问题 • 2 人关注 • 1 个回复 • 292 次浏览 • 2025-10-11 16:26
图形的圆角在cocos中失效
谷主 回复了问题 • 2 人关注 • 1 个回复 • 231 次浏览 • 2025-10-11 14:48
多边形图形作为遮罩,在CocosCreator中不生效
谷主 回复了问题 • 2 人关注 • 1 个回复 • 313 次浏览 • 2025-09-22 11:42
Cocos Creator 鼠标事件中Event.button 值一直返回0,无法取分左右键。
hhp 回复了问题 • 3 人关注 • 3 个回复 • 796 次浏览 • 2025-09-19 15:42
在cocoscreator3.8.2里FairyGUI 设置的add等叠加模式无法生效
谷主 回复了问题 • 2 人关注 • 1 个回复 • 352 次浏览 • 2025-09-05 16:46
cocos2.2.1,使用装载器GLoader ,加载url,,url是https地址的,,,在安卓手机上不显示,,麻烦可以看一下这个问题吗
回复cocos0524 发起了问题 • 1 人关注 • 0 个回复 • 389 次浏览 • 2025-07-16 19:08
制作动效时改变spine播放的动画名称实际未生效
柠檬冰 回复了问题 • 2 人关注 • 2 个回复 • 487 次浏览 • 2025-07-14 19:02
组件出场音效没有播放
谷主 回复了问题 • 2 人关注 • 1 个回复 • 339 次浏览 • 2025-06-23 17:10
creator 安全区域组件SafeArea
谷主 回复了问题 • 2 人关注 • 1 个回复 • 434 次浏览 • 2025-06-23 17:03
Cocos Creator 3.5 调用 fgui.GRoot.create(); 之后,Creator的 input 事件监听不到。
hhp 回复了问题 • 3 人关注 • 3 个回复 • 2464 次浏览 • 2025-06-18 16:46
插件开发在mac环境执行FairyEditor.ProcessUtil.Start异常
谷主 回复了问题 • 2 人关注 • 2 个回复 • 279 次浏览 • 2025-06-15 22:44
cocos的还维护吗,上次提交还是去年
谷主 回复了问题 • 2 人关注 • 1 个回复 • 599 次浏览 • 2025-05-26 21:43
Cocos creator3.8项目 其中使用了第三方字体 由Cocos creator预览后字体没有显示
回复IssacLynx 发起了问题 • 1 人关注 • 0 个回复 • 476 次浏览 • 2025-05-22 20:38