GameMaker具有全面的函数选项,可以操纵屏幕上绘制内容的颜色和Alpha。使用这些函数,您可以将颜色分成各自的组成部分,创建新颜色并操纵绘制Alpha以更改游戏中的不同内容的绘制方式。
注意 如需使用特殊的 混合模式 和其他 GPU 特定函数来混合图像,请参阅有关 GPU 控制 的部分。
还有许多常量可用作这些(和其他)函数的基色:
颜色 | ||
---|---|---|
常量 | 颜色 | 十进制值 |
c_aqua | 16776960 | |
c_black | 0 | |
c_blue | 16711680 | |
c_dkgray | 4210752 | |
c_fuchsia | 16711935 | |
c_gray | 8421504 | |
c_green | 32768 | |
c_lime | 65280 | |
c_ltgray | 12632256 | |
c_maroon | 128 | |
c_navy | 8388608 | |
c_olive | 32896 | |
c_orange | 4235519 | |
c_purple | 8388736 | |
c_red | 255 | |
c_silver | 12632256 | |
c_teal | 8421376 | |
c_white | 16777215 | |
c_yellow | 65535 |
您可以事先使用$符号从十六进制值创建颜色,这些值也可以与各种颜色函数一起使用,以分别获取分量值。颜色的十六进制值分为三部分,格式为:蓝色/绿色/红色(或$ Bbggrr),例如,要定义浅蓝色/浅蓝色,您可以使用:
col = $FFCC11;
此处,F是蓝色分量,Cc是绿色分量,11是红色分量。
您还可以使用以哈希/磅符号(#)开头的"Css color"。这将使用红/绿/蓝格式(或# Rrggbb),该格式使用的范围更广,并且与各种其他应用程序兼容。
col = #11CCFF;
此颜色与上一个代码块中显示的颜色相同,只有Rr和Bb值被交换以匹配格式。
注意GML 还支持$ Aabbggrr格式(开头带有Alpha十六进制值),但是大多数GML 颜色函数只能使用颜色部分而忽略Alpha。
重要避免在左括号[后使用十六进制代码(以$或#开头),因为GameMaker可能会将其解释为访问器。
以下函数可用于获取选定颜色的分量色调、复合色调、饱和度和亮度,以及Alpha和其他属性:
这些函数可用于从颜色分量的原始输入值创建颜色:
以下函数可用于设置各种不同的绘制到屏幕的选项,包括Alpha、颜色和混合: