GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Ú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


Auto Draw GM

4 participantes

Ir para baixo

Auto Draw GM Empty Auto Draw GM

Mensagem por gabrielsch Qua 10 Mar 2010, 17:48

O Auto draw é a criação automatica de sprites, que nem no RPG Maker, bem, em uma engine i que havia um bloco com um contorno preto e cor cinza, bem simples, então estava lá na room em uma engine de acho que tiro, então fui testar os simples blocos ficaram mais ou menos assim:

Auto Draw GM AdgpAuto Draw GM Dgpd

Curioso com isso fui verificar os codigos do objeto e no draw tinha algo como "metting, bom, como eu formatei o pc eu perdi ela.
Alguém poderia me dizer como fazer isso no GM?
Nota: O codigo que eu me lembre acho que tava no evento Draw do objeto
gabrielsch
gabrielsch

Games Ranking : Nota A

Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Reputação : 28
Número de Mensagens : 1230
Prêmios : Auto Draw GM Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 2 Bronze x 0

Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Auto Draw GM Empty Re: Auto Draw GM

Mensagem por Igor KinGamer Seg 15 Mar 2010, 14:56

Um jeito que eu sei que dá para fazer é criar um sprite com todas as possibilidades de paredes que, se não me engano, são 29 (ou seja, em uma subimage, totalmente contornado (não há nenhum bloco por perto); em outra, aberto na direita (há um bloco à direita); outra, aberto em cima; aberto na esquerda; aberto embaixo; aberto na direita e em cima; em cima e na esquerda; esquerda e embaixo; embaixo e na direita; direita e esquerda; em cima e embaixo; na direita, em cima e na diagonal entre os dois; etc.).

E então, testar onde há blocos (do mesmo objeto) para escolher a subimage:

// Step:

if (!place_meeting(x+n, y, object_index)) // Não há à direita
{
if (!place_meeting(x, y-n, object_index)) // Não há em cima
{
if (!place_meeting(x-n, y, object_index)) // Não há à esquerda
{
if (!place_meeting(x, y+n, object_index)) // Não há embaixo
image_index = 0;
else // Há embaixo
image_index = 1;
}
else // Há à esquerda
{
if (!place_meeting(x, y+n, object_index)) // Não há embaixo
image_index = 2;
else // Há embaixo
image_index = 3;
}
...


O único problema é que tem que ser bem cuidadoso e paciente para ter certeza de que há todas as possibilidades, para relacionar todas as condições corretamente com as subimages, etc.

Se foi feito desse jeito e os códigos estavam no draw, pode ter sido usado draw_sprite em vez de image_index. Mas não dá pra ter nenhuma certeza do jeito que foi usado nessa tal engine.
Igor KinGamer
Igor KinGamer

Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios : Auto Draw GM Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Auto Draw GM Empty Re: Auto Draw GM

Mensagem por dungeon333 Seg 15 Mar 2010, 15:51

Igor KinGamer escreveu:Um jeito que eu sei que dá para fazer é criar um sprite com todas as possibilidades de paredes que, se não me engano, são 29 (ou seja, em uma subimage, totalmente contornado (não há nenhum bloco por perto); em outra, aberto na direita (há um bloco à direita); outra, aberto em cima; aberto na esquerda; aberto embaixo; aberto na direita e em cima; em cima e na esquerda; esquerda e embaixo; embaixo e na direita; direita e esquerda; em cima e embaixo; na direita, em cima e na diagonal entre os dois; etc.).

E então, testar onde há blocos (do mesmo objeto) para escolher a subimage:

<gml class="brush: gml;">// Step:

if (!place_meeting(x+n, y, object_index)) // Não há à direita
{
if (!place_meeting(x, y-n, object_index)) // Não há em cima
{
if (!place_meeting(x-n, y, object_index)) // Não há à esquerda
{
if (!place_meeting(x, y+n, object_index)) // Não há embaixo
image_index = 0;
else // Há embaixo
image_index = 1;
}
else // Há à esquerda
{
if (!place_meeting(x, y+n, object_index)) // Não há embaixo
image_index = 2;
else // Há embaixo
image_index = 3;
}
...</gml>

O único problema é que tem que ser bem cuidadoso e paciente para ter certeza de que há todas as possibilidades, para relacionar todas as condições corretamente com as subimages, etc.

Se foi feito desse jeito e os códigos estavam no draw, pode ter sido usado draw_sprite em vez de image_index. Mas não dá pra ter nenhuma certeza do jeito que foi usado nessa tal engine.
sim eh + ou - isso a diferença eh que sao 256 possibilidades e nao 29
ja q sao 8 lados
2 ^ 8 256
111
101
111
eu fiz uma engine
http://www.4shared.com/file/241867481/9e3dd0ee/RAYCAST_LIGHTING.html
pode usar como base , mais nao copia pq eu vou usar ele ( eh um projeto meu )
avatar
dungeon333

Data de inscrição : 29/05/2009
Reputação : 0
Número de Mensagens : 351
Prêmios : Auto Draw GM Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Auto Draw GM Empty Re: Auto Draw GM

Mensagem por gabrielsch Seg 15 Mar 2010, 17:16

Poxa pensei que esse topico tava esquecido, pois bem, Kin Games, não entendi muito o seu codigo porque deu alguns erros aqui com os { e }.
E dungeon333 não entendi a engine, mas pelo projeto ele esta ótimo, tentei fazer um parecido no meu jogo para um editor de mapas.
gabrielsch
gabrielsch

Games Ranking : Nota A

Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Reputação : 28
Número de Mensagens : 1230
Prêmios : Auto Draw GM Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 2 Bronze x 0

Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Auto Draw GM Empty Re: Auto Draw GM

Mensagem por donte Seg 15 Mar 2010, 18:05

creat:
Código:
{
edge1 = place_meeting(x+1,y,object_index) or (x+50 > room_width);
edge2 = place_meeting(x,y-1,object_index) or (y-2 < 0);
edge4 = place_meeting(x-1,y,object_index) or (x-2 < 0);
edge8 = place_meeting(x,y+1,object_index) or (y+50 > room_height);

image_index = edge1+edge2*2+edge4*4+edge8*8;
image_speed = 0;

shadow_image = edge1+edge4*2;
}
step:
Código:
{
draw_sprite(sprite_index,image_index,x,y);
if edge8 = 0
    {
    draw_set_blend_mode(bm_subtract);
    draw_sprite(spr_chao_sombra,shadow_image,x,y+48);
    draw_set_blend_mode(bm_normal);
    }
}
avatar
donte

Data de inscrição : 22/12/2009
Reputação : 0
Número de Mensagens : 1165
Prêmios : Auto Draw GM Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker Studio 2.0
  • Unity


Ir para o topo Ir para baixo

Auto Draw GM Empty Re: Auto Draw GM

Mensagem por gabrielsch Seg 15 Mar 2010, 18:51

donte ainda não entendo para que serve o objeto sombra, eu uso cubos pretos só quero fazer o contorno...
gabrielsch
gabrielsch

Games Ranking : Nota A

Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Reputação : 28
Número de Mensagens : 1230
Prêmios : Auto Draw GM Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 2 Bronze x 0

Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Auto Draw GM Empty Re: Auto Draw GM

Mensagem por Igor KinGamer Seg 15 Mar 2010, 18:56

dungeon333 escreveu:sim eh + ou - isso a diferença eh que sao 256 possibilidades e nao 29
ja q sao 8 lados
2 ^ 8 256
111
101
111

São 256 possibilidades de combinação, mas não há um sprite para cada combinação (por exemplo, se houver apenas um bloco na diagonal, o sprite vai ser o mesmo que se não houver nenhum bloco).

Essa é uma tile set que eu fiz para um jogo meu, tem 47 imagens (os 3 últimos quadrados são apenas espaços vazios), acho que todas possíveis estão aí:
Auto Draw GM Tilesd

gabrielsch escreveu:Poxa pensei que esse topico tava esquecido, pois bem, *KinGamer*, não entendi muito o seu codigo porque deu alguns erros aqui com os { e }.

Eu não postei o código completo (por isso o '...' no final). Para fazer esse código, já tem que ter o sprite pronto, com todas subimages, sabendo a ordem. Só estava dando um exemplo.
Igor KinGamer
Igor KinGamer

Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios : Auto Draw GM Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Auto Draw GM Empty Re: Auto Draw GM

Mensagem por gabrielsch Seg 15 Mar 2010, 19:07

Vamos acabar com isso, o kin gamer você pode fazer uma engine para eu analizar bem isso dai eu posso ficar fazendo uns testes aqui, então fazer os meus sprites aqui.
gabrielsch
gabrielsch

Games Ranking : Nota A

Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Reputação : 28
Número de Mensagens : 1230
Prêmios : Auto Draw GM Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 2 Bronze x 0

Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Auto Draw GM Empty Re: Auto Draw GM

Mensagem por donte Seg 15 Mar 2010, 20:20

então tira o step ;) pega do mesmo jeito ;)
avatar
donte

Data de inscrição : 22/12/2009
Reputação : 0
Número de Mensagens : 1165
Prêmios : Auto Draw GM Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker Studio 2.0
  • Unity


Ir para o topo Ir para baixo

Auto Draw GM Empty Re: Auto Draw GM

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos