此函数的作用与draw_sprite_stretched()函数完全相同,添加了绘制sprite时设置颜色混合和Alpha值的函数(类似于函数draw_sprite_ext())。
注意使用此函数绘制时,将忽略精灵x偏移和y偏移(或原点),并使用房间中指定的x/ y位置的左上角绘制精灵。
注意只有在启用WebGL时,才建议对HTML5目标使用颜色混合,但如果未启用混合颜色,则仍可以设置该混合颜色,并且该混合颜色会将sprite混合为正常颜色。但是,以这种方式进行的所有混合都会创建一个重复的精灵,然后将其存储在缓存中并在需要时使用。这远远不是最佳选择,如果您使用多种颜色更改,则除非您激活WebGL,否则会降低游戏性能。如果您不希望使用WebGL,则可以设置字体缓存大小,以便在必要时使用函数sprite_set_cache_sizee()进行限制。
draw_sprite_stretched_ext(sprite, subimg, x, y, w, h, colour, alpha);
参数 | 类型 | 描述 |
---|---|---|
sprite | Sprite Asset | 要绘制的精灵的索引。 |
subimg | Real | 要绘制的精灵的subimg(帧)(image_index或-1)与对象中动画的当前帧相关联。 |
x | Real | 绘制精灵的位置的x坐标。 |
y | Real | 绘制精灵的位置的y坐标。 |
w | Real | 拉伸精灵将占据的区域的宽度。 |
h | Real | 拉伸精灵将占据的区域的高度。 |
colour | Colour | 混合精灵的颜色。c_white将正常显示精灵。 |
alpha | Real | 精灵的alpha(从0到1,其中0是透明的,1是不透明的)。 |
N/A
draw_sprite_stretched_ext(sprite_index, image_index, x, y, sprite_width, sprite_height / 2, c_white, 0.5);
这将绘制分配给精灵的实例及其子图像,其中左角位于实例x/y位置。其宽度设置为与精灵相同,高度为精灵高度除以两。它也将正常混合,但具有部分透明的Alpha值。