Colour And Alpha

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;

此颜色与上一个代码块中显示的颜色相同,只有RrBb值被交换以匹配格式。

注意GML 还支持$ Aabbggrr格式(开头带有Alpha十六进制值),但是大多数GML 颜色函数只能使用颜色部分而忽略Alpha。

重要避免在左括号[后使用十六进制代码(以$#开头),因为GameMaker可能会将其解释为访问器

函数

以下函数可用于获取选定颜色的分量色调、复合色调、饱和度和亮度,以及Alpha和其他属性:

 

这些函数可用于从颜色分量的原始输入值创建颜色:

 

以下函数可用于设置各种不同的绘制到屏幕的选项,包括Alpha、颜色和混合: