请教一个百思不得其解的简单问题.

我用的是cocos create 3.8.8

const graphics = this.getComponent(Graphics)

    if (!graphics) return

    graphics.fillColor.fromHEX('#ff0000');

    graphics.circle(0, 0, 100)

    graphics.fill()

以上代码可以画出红色的圆.

const graphics = this.getComponent(Graphics)

    if (!graphics) return

    graphics.fillColor.set(1, 0, 0, 1)


    graphics.circle(0, 0, 100)

    graphics.fill()

以上的代码却是漆黑一片,

我知道问题出在 graphics.fillColor.set(1, 0, 0, 1)
但是不知道为什么会不行

真心求解,头都大了

fillColor = Color("") 这样?

graphics.fillColor.set(255, 0, 0, 255)

0~255,不是 0~1,试一试

1赞
/**
 * @en Representation of RGBA colors.<br/>
 * Each color component is an integer value with a range from 0 to 255.<br/>
 * @zh 通过 Red、Green、Blue 颜色通道表示颜色,并通过 Alpha 通道表示不透明度。<br/>
 * 每个通道都为取值范围 [0, 255] 的整数。<br/>
 */
export class Color extends ValueType implements Modifiable {
    public static WHITE = freezeColor(255, 255, 255, 255);
    public static GRAY = freezeColor(127, 127, 127, 255);
    public static BLACK = freezeColor(0, 0, 0, 255);
    public static TRANSPARENT = freezeColor(0, 0, 0, 0);
    public static RED = freezeColor(255, 0, 0, 255);
    public static GREEN = freezeColor(0, 255, 0, 255);
    public static BLUE = freezeColor(0, 0, 255, 255);
    public static CYAN = freezeColor(0, 255, 255, 255);
    public static MAGENTA = freezeColor(255, 0, 255, 255);
    public static YELLOW = freezeColor(255, 255, 0, 255);
1赞

果真是这样的,谢谢大家

这个是从哪里找到的

看源码,官网文档/api啊

https://docs.cocos.com/creator/3.8/api/zh/class/GraphicsComponent?id=fillColor