Ajuda em como fazer um objeto giratorio.

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

Ajuda em como fazer um objeto giratorio.

Mensagem por litt em Sab 26 Dez 2009, 12:43

Oi galera!!! Eu gostaria de saber, como eu faço um objeto ficar rodando em volta de outro objeto, seguindo-o para onde esse objeto for, daí.

litt

Ranking : Nota C
Número de Mensagens : 81
Idade : 24
Data de inscrição : 25/12/2009
Notas recebidas : C
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://bkparada.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Ajuda em como fazer um objeto giratorio.

Mensagem por PedroX em Sab 26 Dez 2009, 13:48

coloca esse codigo no begin step do objeto que gira:

velocidade=5//pode muda isso
raio=180//pode muda isso
direction+=velocidade
grau=0.02//pode muda isso
movimento_x=objeto_central.x+cos(direction*grau)*raio//mude nome objeto_central
movimento_y=objeto_central.y+sin(direction*grau)*raio//aqui tambem
x=movimento_x //nao pode muda isso
y=movimento_y //nao pode muda isso

Edit: ponha o raio em 70...ou como quiser...

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

Re: Ajuda em como fazer um objeto giratorio.

Mensagem por Igor KinGamer em Sab 26 Dez 2009, 17:51

Pedro Henrique escreveu:coloca esse codigo no begin step do objeto que gira:

velocidade=5//pode muda isso
raio=180//pode muda isso
direction+=velocidade
grau=0.02//pode muda isso
movimento_x=objeto_central.x+cos(direction*grau)*raio//mude nome objeto_central
movimento_y=objeto_central.y+sin(direction*grau)*raio//aqui tambem
x=movimento_x //nao pode muda isso
y=movimento_y //nao pode muda isso

Edit: ponha o raio em 70...ou como quiser...

Pelo que eu testei, isso não dá muito certo, além de você ter criado variáveis desnecessárias e haver algumas coisas sem sentido...
Vou refazer esse código e vou explicar:

No evento step:

Código:
direction += 5;
x = obj_Central.x+cos(direction/180*pi)*200;
y = obj_Central.y-sin(direction/180*pi)*200;

O "direction += 5;" aumenta a direção em 5 a cada step. Toda instância já "nasce" com essa variável (direction), então você não precisa criá-la. Já, se você quisesse usar outra variável (ex.: dir, direcao), você teria que criá-la no create (dir = 0;, direcao = 0);.

O "direction/180*pi" transforma a direção de graus para radianos (o que é nescessário para mecher com seno e cosseno). Outro jeito seria usar a função degtorad(direction); (degrees to radians).

No y, tem que colocar "-sin" em vez de "+sin" porque a direção começa em 0 na direta e aumenta no sentido anti-horário, assim 90 graus (cujo seno é 1) é para cima e 270 (cujo seno é -1) é para baixo, mas o eixo y cresce de cima para baixo, então tem que inverter o seno.

O "*200" é a distância que ele ficará do objeto.
Se você quiser que gire no sentido horário, tem que trocar "direction += 5;" por "direction -= 5;".

Não esqueça de trocar "obj_Central" pelo nome do seu objeto.

Igor KinGamer

Número de Mensagens : 890
Idade : 21
Data de inscrição : 26/09/2008
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Ajuda em como fazer um objeto giratorio.

Mensagem por PedroX em Sab 26 Dez 2009, 18:01

eu testei o meu codigo e funcionou... e tambem as variaveis servem pra ele ajustar do jeito que ele quiser...

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

Re: Ajuda em como fazer um objeto giratorio.

Mensagem por Igor KinGamer em Sab 26 Dez 2009, 18:14

Testei o seu código, o objeto dá uma volta inteira, volta um pouco, dá outra volta inteira, volta de novo, etc. Isso porque você colocou para multiplicar por aquela variável "grau", mas na verdade tem que transformar de graus para radianos. Mude a variável grau para .01 para ver como fica. Só parece que está certo porque, para transformar em radianos, tem que multiplicar por pi/180, que é 0,01745..., quase 0.02.

E também, como eu escrevi no post ali em cima, o certo é colocar "-sin", e não "+sin", como os graus aumentam no sentido anti-horário.

Igor KinGamer

Número de Mensagens : 890
Idade : 21
Data de inscrição : 26/09/2008
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Ajuda em como fazer um objeto giratorio.

Mensagem por PedroX em Dom 27 Dez 2009, 13:07

o seu codigo esta melhor...
mas eu acho que num tem diferenca se os graus rodam num sentido ou outro, ja que é um jogo...valeu por ajustar o codigo

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

Re: Ajuda em como fazer um objeto giratorio.

Mensagem por litt em Dom 27 Dez 2009, 14:46

Olá pessoal! Assim... Obrigado pela ajuda mas... acho faltou só uma coisinha, é que eu nõ sei muito bem mexer em codigos e... faltou um controlador da distancia em que o objeto gira em volta do outro... sera que tem como? Daí.

litt

Ranking : Nota C
Número de Mensagens : 81
Idade : 24
Data de inscrição : 25/12/2009
Notas recebidas : C
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://bkparada.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Ajuda em como fazer um objeto giratorio.

Mensagem por PedroX em Seg 28 Dez 2009, 08:39

no meu codigo é so alterar o raio...
no meu codigo vc pode diminuir o grau de 0.02 para 0.0172

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

Re: Ajuda em como fazer um objeto giratorio.

Mensagem por litt em Seg 28 Dez 2009, 19:13

vlw, brigadão

litt

Ranking : Nota C
Número de Mensagens : 81
Idade : 24
Data de inscrição : 25/12/2009
Notas recebidas : C
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://bkparada.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Ajuda em como fazer um objeto giratorio.

Mensagem por Conteúdo patrocinado Hoje à(s) 09:50


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