关于绘制的一些问题
gamemaker吧
全部回复
仅看楼主
level 6
kh16wlll 楼主
1.我想绘制一个文本,然后给这个文本加上指定颜色的描边,我该怎么弄
2.我想做出来让一个精灵“闪白一下”的效果,我想的方法是在绘制事件里先绘制这个精灵本身,在再此之上绘制一个纯白色的精灵,然后让这次绘制的alpha持续减少,直至0。然而我却不知道该如何绘制一个与原精灵相同的纯白色精灵,这应该怎么办,或者还有什么方法可以达到让一个精灵“闪白一下”的效果
2023年05月25日 14点05分 1
level 8
1.我想绘制一个文本,然后给这个文本加上指定颜色的描边,我该怎么弄
效率最高的方法是:大号字符上面再画小号字符
draw_set_color(描边颜色);draw_set_font(比绘制文本大一号的字体)
draw_text(x-1,y-1,文本字符)
draw_set_color(文本颜色);draw_set_font(绘制文本字体)
draw_text(x,y,文本字符)
2 我也不知道,但猜测应该可以用更改绘制模式来实现。
2023年05月26日 02点05分 2
我去试了,这样做描边无法均匀,而且描边越大越不均匀,该怎么样才能让绘制的文字均匀的描边
2023年05月26日 04点05分
level 8
如果你的文本量不大的话,可以在精灵中手动为每个字描边。再绘制该精灵即可。
2023年05月26日 23点05分 3
level 8
也可以翻翻前面的老帖子,我记得有讲为精灵描边的。
2023年05月27日 00点05分 4
吧务
level 13
1、纯色文本的描边,通常是用描边颜色在原有位置的上下左右1像素的地方额外绘制1次,总计4次(或者加上斜方向,总计8次),然后再绘制文字本身。
2、闪白效果如果不考虑额外准备一套sprite的话,可以考虑使用shader强改颜色。如果是GM8的话(下次记得提问是注明IDE版本),之前看有人使用d3d_set_fog来实现这个效果。
2023年05月29日 03点05分 5
level 2
闪白我是这样写的
绘制事件:
draw_self()
if hitflash!=0
{
gpu_set_blendmode(bm_add)
draw_sprite_ext(sprite_index,-1,x,y,1,1,0,c_white,hitflash*(1/30))
gpu_set_blendmode(bm_normal)
}
hitflash>0在其他事件每步-1,,,跑起来大概是闪了一下的效果[乖]
2024年07月01日 13点07分 6
1