[Resolvido]Calculo avançado

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

Resolvido [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 11:18

To com a seguinte duvida, tenho um objeto e dou um numero aleatório para ele, mas gostaria de saber em calculo que me diga onde ele estara daqui a 5 segundos em x e y. Sem movimentar ele, só calculo mesmo. Provalvemente, vai usar seno e cosseno. Estou dando uma pesquisada aqui, mas se puderem me ajudar, eu agradeço. Very Happy


Última edição por Kol em Seg 16 Set 2013, 23:21, editado 1 vez(es)

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Gonçalves em Seg 16 Set 2013, 11:32

Ele usa aceleração? Ou uma velocidade constante?

Gonçalves

Ranking : Nota B
Número de Mensagens : 1013
Data de inscrição : 29/10/2010
Notas recebidas : B + A + C
Reputação : 79
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 11:36

Sim

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por PedroX em Seg 16 Set 2013, 13:52

Código:
xfinal = objeto.x + lengthdir_x(objeto.speed*5, objeto.direction);
yfinal = objeto.y + lengthdir_y(objeto.speed*5, objeto.direction);
lengthdir substitui o uso de seno e cosseno.

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 14:05

Não deu certo, você poderia me explicar, como você chegou nesse resultado ?

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por PedroX em Seg 16 Set 2013, 14:09

Vamos tentar assim:

Código:
xx = x + 5*hspeed;
yy = y + 5*vspeed;
Assim xx e yy terão as coordenadas finais do objeto. Só que ele não se moveu de verdade.

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 14:24

Também, não deu. Pois uso o speed, o hspeed e o vspeed, estão em zero. E ainda mais, não é sempre na mesma direção, vai ter o angulo aleatorio. Ta dificil =/

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por PedroX em Seg 16 Set 2013, 14:28

Na verdade, se você usa speed, então hspeed e vspeed são atualizados automaticamente (o GM faz os cálculos). Não importa nem a direção.

Se você usa speed = 5, com a direction em 0, hspeed fica igual a 5 e vspeed fica igual a 0. Se a direção for 180, o hspeed fica igual a -5 e o vspeed se mantém em 0. Se for 270, vspeed fica igual a 5 e hspeed fica igual a 0.

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 14:35

Mas, se eu só quero calcular onde o objeto estaria daqui a 5s, isso tudo nao vai estar em zero ? Já que ele está parado ?

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por PedroX em Seg 16 Set 2013, 14:38

Coloque o código que você usa para o movimento. Não sei nem se você usa friction ou algo do tipo.

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 15:43

Você não entendeu então, eu tenho um objeto, mas ele não se move, eu quero calcular onde ele estaria dentro de 5s, mas ele nao vai pra. São só calculos. Ele está imovel, e permanecerá imovel. A velocidade dele é só ficticia a minha escolha, e a direção é aleatorio, deu para entender ? Meio complicado xD

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Jiraya em Seg 16 Set 2013, 15:51

Código:

finalx=xstart+lengthdir_x(velocidade*5,direction);
finaly=ystart+lengthdir_y(velocidade*5,direction);

if(point_distance(x,y,finalx,finaly)<=1){xstart=x;ystart=y;}

Jiraya

Ranking : Nota A
Número de Mensagens : 1134
Data de inscrição : 20/03/2010
Notas recebidas : A+A
Reputação : 108
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

https://www.facebook.com/seito.washiro.7

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por mZIl em Seg 16 Set 2013, 16:37

Kol escreveu:Você não entendeu então, eu tenho um objeto, mas ele não se move, eu quero calcular onde ele estaria dentro de 5s, mas ele nao vai pra. São só calculos. Ele está imovel, e permanecerá imovel. A velocidade dele é só ficticia a minha escolha, e a direção é aleatorio, deu para entender ? Meio complicado xD
Tá, calma aí você tem que esclarecer algumas coisas. Você está usando duas variáveis de velocidade que indicariam a velocidade vertical e horizontal que não são hspeed e vspeed, ou apenas a direção e a velocidade?

Se você puder dar um pouco de background (Dizer o tipo de game, o que deve acontecer, o que você quer, e coisas assim) ajudaria muito a responder.

mZIl

Número de Mensagens : 49
Idade : 19
Data de inscrição : 10/07/2013
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 18:57

Então amigo, ai que ta. Não existe background, eu só quero o calculo, esse objeto não existe, velocidade e direção são fictícios. Mas oque o Jiraya falo deve dar certo, quando chegar em casa testo Very Happy

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por PedroX em Seg 16 Set 2013, 20:03

O Jiraya postou o mesmo código que eu postei, cara. Você não está nem testando... e fala que está errado...

Se o objeto não existe, xstart e ystart não vão funcionar.

Seria algo do tipo:
Código:
xfinal = xinicial + lengthdir_x(velocidade*5, direcao);
yfinal = yinicial + lengthdir_y(velocidade*5, direcao);

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 21:40

Deu certo.

PedroX, o dele ta igual o seu, mas ele colocou o "velocidade", esse que era o problema, o objeto ta parado, então eu precisava colocar a velocidade que ele "deveria" estar. O seu está correto, eu só precisava mudar as variaveis, na hora não pensei.
Obrigado a todos que ajudaram.

E uma pergunta a parte, se o speed de um objeto é 3, ele anda 3 pixels por segundo ?

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por mZIl em Seg 16 Set 2013, 21:43

Kol escreveu:Deu certo.

PedroX, o dele ta igual o seu, mas ele colocou o "velocidade", esse que era o problema, o objeto ta parado, então eu precisava colocar a velocidade que ele "deveria" estar. O seu está correto, eu só precisava mudar as variaveis, na hora não pensei.
Obrigado a todos que ajudaram.

E uma pergunta a parte, se o speed de um objeto é 3, ele anda 3 pixels por segundo ?
Acredito eu que ele ande 3 pixels por step. Nesse caso, os códigos acima teriam a speed multiplicada por 150, e não 5?

mZIl

Número de Mensagens : 49
Idade : 19
Data de inscrição : 10/07/2013
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 21:46

Se é por step, seria por passo certo ? então seria 3px a cada passo, então 90 pixels por segundo ?

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por PedroX em Seg 16 Set 2013, 21:54

3px por Step a 30 FPS é igual a 90px por segundo.

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Kol em Seg 16 Set 2013, 22:16

Vlw por tudo PedroX e os demais Very Happy

Kol

Número de Mensagens : 56
Data de inscrição : 11/09/2013
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Calculo avançado

Mensagem por Conteúdo patrocinado Hoje à(s) 18:40


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