Ângulo da Sprite de acordo com ângulo de colisão

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Zero. em Seg 18 Maio 2015, 14:51

Como pegar o ângulo de uma colisão e mudar a image_angle de acordo com este ângulo, como na imagem a seguir :

DVgl4YIW.png hosted at imgserv.com. the free image hosting service.

Um exemplo considerável seria a mudança do ângulo de sprite do sonic que sobe ou gira nas rampas.

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Thyago em Seg 18 Maio 2015, 15:00

Baseado nessa sua imagem, seria algo parecido com...
na colisão com o chão...

Código:
image_angle=(point_direction(other.x,other.y,x,y)+90)

Claro que requer adaptação

Thyago

Ranking : Nota B
Número de Mensagens : 1092
Idade : 30
Data de inscrição : 24/08/2009
Notas recebidas : D+B+B+C+A
Reputação : 31
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 1
   :

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Zero. em Seg 18 Maio 2015, 15:35

A imagem é apenas um exemplo, mas teriamos vários terrenos irregulares e afins, também teria objetos grandes e pequenos, enfim, acredito que essa ideia não seria válida.

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Thyago em Seg 18 Maio 2015, 15:46

Código:
 if!(place_free(x,y+1)){
image_angle=direction;
}

. Pronto ele vai girar conforme o angulo que esta andando

Thyago

Ranking : Nota B
Número de Mensagens : 1092
Idade : 30
Data de inscrição : 24/08/2009
Notas recebidas : D+B+B+C+A
Reputação : 31
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 1
   :

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Thyago em Seg 18 Maio 2015, 15:47

Código:
 if!(place_free(x,y+1)){
image_angle=direction;
}

. Pronto ele vai girar conforme o angulo que esta andando

Thyago

Ranking : Nota B
Número de Mensagens : 1092
Idade : 30
Data de inscrição : 24/08/2009
Notas recebidas : D+B+B+C+A
Reputação : 31
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 1
   :

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Zero. em Seg 18 Maio 2015, 16:32

Como eu implemento isso? Na verdade não entendi oque isso faz. Não trabalho com direction e nem com solid.

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por willyruduit em Seg 18 Maio 2015, 18:53

Zero. escreveu:Como eu implemento isso? Na verdade não entendi oque isso faz. Não trabalho com direction e nem com solid.

Creio que colocando no step da faria efeito!

Tente assim:

Código:
if!(place_empty(x,y+1)){
image_angle=direction;
}

willyruduit

Ranking : Nota A
Número de Mensagens : 306
Idade : 28
Data de inscrição : 02/08/2013
Notas recebidas : B-B-B-A-A
Reputação : 33
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Rodrigo Santiago em Seg 18 Maio 2015, 19:34

Na verdade isso é muito mais complexo no game maker. Já que ele usa sistema de colisão pixel-a-pixel.

Não tem como fazer isso só com 1 Objeto. Você pode fazer como no Sonic(rampas diferentes variando 22.5% cada) e coloca-las em cadeia. E mudar a sprite deacordo com o objeto que está colidindo é não "com a direção relativa".
Cuidado ao mudar image_angle pois isso afetará a mask e fará bugs na colisão. Crie uma variável e faça seu próprio draw.

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Zero. em Qua 20 Maio 2015, 23:03

Imaginando um pouco, será que seria possível fazer a imagem rotacionar nos terrenos irregulares, fazendo uma relação entre y e yprevious?

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Rodrigo Santiago em Qui 21 Maio 2015, 06:45

Não, iria ficar uma bagunça. Você já viu minha engine 360?
Ela faz exatamente isso, só que, está muito complicada.

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Zero. em Qui 21 Maio 2015, 11:50

Olhei sua engine, qual a ideia pra fazer a sprite rotacionar?

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Rodrigo Santiago em Qui 21 Maio 2015, 11:58

Existem objetos ocultos. Cada tem uma variavel que representa angulo.

Tipo rampa : Valor Fixo.
Tipo ponto: O angulo do objeto para o jogador.

E então o jogador fica com a image_angle do objeto mais proximo.

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Re: Ângulo da Sprite de acordo com ângulo de colisão

Mensagem por Conteúdo patrocinado Hoje à(s) 07:49


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum