Entrar
Últimos assuntos
» Retorno da GMBR!!!por theguitarmester Ter 19 Mar 2024, 22:38
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42
» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18
» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34
» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13
» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18
» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12
» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02
» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55
» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42
» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56
» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49
» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21
» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21
» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39
» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16
» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05
» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55
» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39
» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28
» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01
Sistema de cores do GM
3 participantes
Página 1 de 1
Sistema de cores do GM
Pelo oque me parece,o sistema de cores do GM é bem ruim,ou só oque parece.
Quando eu edito em qualquer editor,a mesma cor,eles sempre acham o mesmo valor de RGB.
Mas,quando eu checo uma cor pelo o GM,e seus valores RGB,ele me retorna outros valores.
O código que estou usando:
Fiz esse código só para testar o sistema de cores do GM.
Alguem sabe porque o GM mostra valores diferentes,ou se tem um jeito de evitar isso?
Quando eu edito em qualquer editor,a mesma cor,eles sempre acham o mesmo valor de RGB.
Mas,quando eu checo uma cor pelo o GM,e seus valores RGB,ele me retorna outros valores.
O código que estou usando:
- Código:
tesrt=draw_getpixel(1,1)
r=color_get_red(tesrt)
g=color_get_green(tesrt)
b=color_get_blue(tesrt)
show_message(r)
show_message(g)
show_message(b)
Fiz esse código só para testar o sistema de cores do GM.
Alguem sabe porque o GM mostra valores diferentes,ou se tem um jeito de evitar isso?
Luca$- Games Ranking :
Notas recebidas : D-C
Data de inscrição : 10/10/2010
Reputação : 1
Número de Mensagens : 582
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Sistema de cores do GM
Note que o desenho na tela não acontece todo de uma vez só.
A engine interna percorre cada objeto, background e foreground de room e afins desenhando um de cada vez.
Então se você desenhar algo vermelho, usar draw_getpixel e depois desenhar algo cinza por cima, draw_getpixel retornara vermelho.
Para capturar exatamente o que aparece depois de todo estar desenhado o ideal e usar essa função depois do evento Draw (Begin Step por exemplo).
A engine interna percorre cada objeto, background e foreground de room e afins desenhando um de cada vez.
Então se você desenhar algo vermelho, usar draw_getpixel e depois desenhar algo cinza por cima, draw_getpixel retornara vermelho.
- Código:
draw_set_color(c_red);
draw_rectangle(0,0,room_width,room_height,0);
draw_getpixel(1,1); // vermelho
draw_set_color(c_gray);
draw_rectangle(0,0,room_width,room_height,0);
- Código:
draw_set_color(c_red);
draw_rectangle(0,0,room_width,room_height,0);
draw_set_color(c_gray);
draw_rectangle(0,0,room_width,room_height,0);
draw_getpixel(1,1); // cinza
Para capturar exatamente o que aparece depois de todo estar desenhado o ideal e usar essa função depois do evento Draw (Begin Step por exemplo).
Re: Sistema de cores do GM
O pixel que estou pegando,é dentro de uma surface,olha o código todo:
Evento draw:
Evento draw:
- Código:
//== Pegar o arquivo ==//
mapad=get_open_filename("Arquivos .PNG|*.png*","");
if mapad!=""
{
MAPA_spr=sprite_add(mapad,0,0,0,0,0)
//== Configurações ==//
compr=sprite_get_width(MAPA_spr)
alt=sprite_get_height(MAPA_spr)
//== Surface ==//
MAPA=surface_create(compr,alt)
surface_set_target(MAPA)
draw_sprite(MAPA_spr,0,0,0)
//== Desenhar ==//
for (i=0; i<compr; i+=1)
{
for (a=0; a<alt; a+=1)
{
CORi=draw_getpixel(i,a)
r=color_get_red(CORi)
g=color_get_green(CORi)
b=color_get_blue(CORi)
COR=make_color_rgb(r,g,b)
block=pix_bloco()
surface_reset_target()
surface_set_target(global.mapa)
draw_sprite(blocos,block,i*16,a*16)
};
};
}
tesrt=draw_getpixel(1,1)
r=color_get_red(tesrt)
g=color_get_green(tesrt)
b=color_get_blue(tesrt)
show_message(r)
show_message(g)
show_message(b)
//== Resetando a surface para não ocorrer possiveis bugs ==//
surface_reset_target()
Luca$- Games Ranking :
Notas recebidas : D-C
Data de inscrição : 10/10/2010
Reputação : 1
Número de Mensagens : 582
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Sistema de cores do GM
nossa você fez uma mega confusão na hora de apontar as surfaces...
tente isso
tente isso
- Código:
//== Pegar o arquivo ==//
mapad=get_open_filename("Arquivos .PNG|*.png*","");
if mapad!=""
{
MAPA_spr=sprite_add(mapad,0,0,0,0,0)
//== Configurações ==//
compr=sprite_get_width(MAPA_spr)
alt=sprite_get_height(MAPA_spr)
//== Surface ==//
MAPA=surface_create(compr,alt)
surface_set_target(MAPA)
draw_sprite(MAPA_spr,0,0,0)
surface_reset_target();
//== Desenhar ==//
surface_set_target(global.mapa)
for (i=0; i<compr; i+=1)
{
for (a=0; a<alt; a+=1)
{
CORi=surface_getpixel(MAPA,i,a)
r=color_get_red(CORi)
g=color_get_green(CORi)
b=color_get_blue(CORi)
COR=make_color_rgb(r,g,b)
block=pix_bloco()
draw_sprite(blocos,block,i*16,a*16)
};
};
}
surface_reset_target();
tesrt=draw_getpixel(1,1)
r=color_get_red(tesrt)
g=color_get_green(tesrt)
b=color_get_blue(tesrt)
show_message(r)
show_message(g)
show_message(b)
//== Resetando a surface para não ocorrer possiveis bugs ==//
Re: Sistema de cores do GM
draw_getpixel só pega a tela principal, ou seja, não captura o que esta em uma surface até mesmo porque ela nem esta desenhada na tela ainda.
Até a parte do "tesrt=draw_getpixel(1,1)" você esta desenhando na surface e não na tela.
Você deve usar draw_surface antes da função.
Para esse caso é melhor o surface_getpixel já que captura direto da surface.
Até a parte do "tesrt=draw_getpixel(1,1)" você esta desenhando na surface e não na tela.
Você deve usar draw_surface antes da função.
Para esse caso é melhor o surface_getpixel já que captura direto da surface.
Re: Sistema de cores do GM
Nossa,valeu Jiraya e Kabeção
Seu código funcionou perfeitamente Jiraya,acho que o problema,era que eu estava tentando pegar o pixel no draw,e nao na surface,certo?
Pra falar verdade,essa ajuda de vocês me deu uma enorme vontade de continuar o projeto,pois eu já estava pensando em abandona-lo... :S
Seu código funcionou perfeitamente Jiraya,acho que o problema,era que eu estava tentando pegar o pixel no draw,e nao na surface,certo?
Pra falar verdade,essa ajuda de vocês me deu uma enorme vontade de continuar o projeto,pois eu já estava pensando em abandona-lo... :S
Luca$- Games Ranking :
Notas recebidas : D-C
Data de inscrição : 10/10/2010
Reputação : 1
Número de Mensagens : 582
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|