Trevors
Novato
Novato
Autor
Mensagens: 18
Registrado em: Qui Abr 19, 2018 9:43 am
Karma: 14

mudar a cor do da sprite ou iluminação gml

Dom Jan 12, 2020 9:38 pm

galera queria a ajuda de vcs tenho um obj goku por exemplo e outro obj bola com 10 frame por exemplo, queria que quando o obj bola colidisse com o obj goku o obj goku ganhasse uma brilho semelhante ao do obj bola por ex o azul,, se nao souber outro pode ser o image_blend mais eu quero que so fique com a coloração extra durante os cinco primeiros frame, e lembrando que o obj bola pode colidir com o obj goku mais de uma vez.
1
 
grononmc
Membro
Membro
Mensagens: 23
Registrado em: Dom Fev 14, 2016 9:19 pm
Karma: 41

Re: mudar a cor do da sprite ou iluminação gml

Dom Jan 12, 2020 11:31 pm

Você quer tipo um efeito de dano?
Com esse código creio que você não precisará colocar somente nos 5 primeiros frames, pois você pode regular a velocidade com que ele decrementa o alpha do efeito brilho.

// Create
alpha = 0; // Alpha para o efeito


// Step
var velAlpha = 0.05; // Velocidade que o efeito vai sumir quanto mais alto mais rápido
alpha = lerp(alpha, 0, velAlpha); // Reseta o alhpa para zero
var colObjBola = collision_point(x, y, obj_bola, false, true);
if(colObjBola != noone){
  alpha = 1;
}


// Draw
draw_self(); // Desenha a Sprite principal abaixo do efeito

gpu_set_fog(true, -1, 0, 1); // Se for gmk 1.4 use d3d_set_fog()
draw_sprite_ext(sprite_index, image_index, x, y, 1, 1, 0, -1, alpha); // Aqui desenha o efeito
gpu_set_fog(false, -1, 0, 1);
2
 
Trevors
Novato
Novato
Autor
Mensagens: 18
Registrado em: Qui Abr 19, 2018 9:43 am
Karma: 14

Re: mudar a cor do da sprite ou iluminação gml

Seg Jan 13, 2020 10:59 am

valeu cara, queria saber para quer serve o gpu_set_fog e como funciona o draw_sprite_ext oque colocar no sprite_index e no image_index, é que nunca usei essa variáveis.
1
 
grononmc
Membro
Membro
Mensagens: 23
Registrado em: Dom Fev 14, 2016 9:19 pm
Karma: 41

Re: mudar a cor do da sprite ou iluminação gml

Seg Jan 13, 2020 1:32 pm

gpu_set_fog() é utilizado mais em 3d para fazer aquele efeito de nevoa, para mascarar coisas que estão muito distantes e não precisam ser renderizadas, no 2d ele simplesmente pega a sprite após ele e deixa com uma coloração unica basicamente.

sprite_index é a sprite que você colocou no seu objeto, nele você pode definir uma sprite manualmente tipo, sprite_index = spr_goku.

image_index são os frames dessa imagem, então se colocar ele no draw_sprite(), seus frames irão rodar normalmente ele só é utilizado mesmo quando você cria um Event Draw no objeto, ou caso você deseje manter tipo um frame único image_index = 5.
1
 
Trevors
Novato
Novato
Autor
Mensagens: 18
Registrado em: Qui Abr 19, 2018 9:43 am
Karma: 14

Re: mudar a cor do da sprite ou iluminação gml

Ter Jan 14, 2020 11:00 pm

Consegui cara muito obg valeu mesmo grononmc.

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 4 visitantes