Fusion Makers
Faça login para usufruir de todos nossos recursos. Ainda não tem uma conta? Inscreva-se já!
Conectar-se

Esqueci minha senha

Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
2 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 2 Visitantes

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 65 em Sex 01 Abr 2016, 22:48
Estatísticas
Temos 255 usuários registrados
O último usuário registrado atende pelo nome de LuckN

Os nossos membros postaram um total de 5264 mensagens em 574 assuntos

Detectores de Colisão e Fast Loops

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

Detectores de Colisão e Fast Loops

Mensagem por Skilo em Sex 21 Jan 2011, 13:53

Detectores de Colisão e Fast Loops


Ferramentas utilizadas: apenas MMF2 ou TGF2
Nível: Intermediário (dependendo do ponto de vista)

Introdução:

Bom, como o Skilo fez uma matéria sobre o básico do custom moviment, resolvi escrever essa matéria sobre detectores de colisão (ou máscaras de colisão, como preferir) e sobre o uso de Fast Loops para remover os bugs de colisão.
Antes de tudo quero ressaltar que vc precisará de muita atenção para poder entender tudo que eu citarei nessa matéria. Aconselho tbm a você ler a matéria do Skilo antes da minha, pois retirei toda a base dela.


O que são Detectores de Colisão?

São objetos criados por você que se posicionarão nas bordas do personagem, na maioria das vezes é criado 4 detectores, um em cima, um em baixo, um na esquerda, e outro na direita do personagem, como a figura abaixo:


E pra que servem os Detectores de Colisão?
No movimento custom, você irá encontrar bugs caso ponha aquele mesmo evento de sempre: “Personagem is overlapping a backdrop -> Personagem Stop”, esse evento funcionaria perfeitamente se vc estivesse usando o movimento pre-definido do MMF2, mas não é o caso. Para que possamos fazer o personagem parar quando bater em algum objeto/parede, vamos ter que usar os detectores de colisão, juntamente com o Fast Loop (que vamos ver mais abaixo).


O que diabos é esse Fast Loop?

Fast Loop é uma função que já vem com o MMF2, que permite que você rode uma ação várias vezes em um curto espaço de tempo, como o nome diz, é um loop rápido. Na imagem abaixo mostra em que local você pode ver os eventos relacionados a ele.

http://img504.imageshack.us/my.php?image=fastloopne7.png

Posicionando os Detectores

Para começar, temos que colocar um evento para posicionar os detectores sempre na mesma posição:

Always_____
Set Detector de Cima position at “Em cima do Personagem”
Set Detector de Baixo position at “Em baixo do Personagem”
Set Detector da Esquerda position at “Esquerda do Personagem”
Set Detector da Direita position at “Direita do Personagem”

Detectores de Esquerda e Direita (colisão horizontal):

Agora vamos partir aos eventos principais:
Detector da Esquerda is overlapping a backdrop_____
Start Loop “Esquerda” 30 times

On loop “Esquerda”
+Detector da Esquerda is overlapping a backdrop_____

Set X position of Personagem to X(“Personagem”)+1
Set X position of Detector da Esquerda to X(“Detector da Esquerda”)+1

Pronto, a colisão de qualquer objeto com a esquerda do personagem já está funcionando, agora vamos fazer com a direita:

Detector da Direita is overlapping a backdrop_____
Start Loop “Direita” 30 times

On loop “Direita”
+Detector da Direita is overlapping a backdrop_____

Set X position of Personagem to X(“Personagem”)-1
Set X position of Detector da Esquerda to X(“Detector da Esquerda”)-1

Pronto, terminamos com as colisões horizontais, agora vamos para as colisões verticais (com o chão e com o teto =])


Detectores de Baixo e Cima (colisão vertical):

Vamos começar fazendo a colisão com o chão (detector de baixo), esse é o que costuma dar mais dor de cabeça aos makers do MMF2 XD

Detector de Baixo is overlapping a backdrop_____
Start Loop “Baixo” 50 times

On loop “Baixo”
+Detector de Baixo is overlapping a backdrop_____

Set Y position of Personagem to Y(“Personagem”)-1
Set Y position of Detector de Baixo to Y(“Detector de Baixo”)-1

Agora com o de cima (colisão com o teto):

Detector de Cima is overlapping a backdrop_____
Start Loop “Cima” 50 times

On loop “Cima”
+Detector de Cima is overlapping a backdrop_____

Set Y position of Personagem to Y(“Personagem”)+1
Set Y position of Detector de Cima to Y(“Detector de Cima”)+1

Bom, a matéria termina por aqui, se vc entendeu tudo, percebeu que isso é só uma questão de lógica, e também poderá aprofundar o uso do Fast Loops pra diversas coisas.

PS: existe um modo mais profissional de se fazer detectores de colisão com o MMF2, mas resolvi optar por ensinar este antigo, por ser de mais fácil compreensão, e compreendendo esse método, com o tempo irá ganhar o conhecimento do outro tbm.

É isso ae, comentem e flws!

Matéria criada por Alves na BrMaker
avatar
Skilo
Usuário

Mensagens : 32
Data de inscrição : 28/01/2010

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Detectores de Colisão e Fast Loops

Mensagem por Eskyz em Sex 21 Jan 2011, 18:21

E onde leio a matéria do Skilo? /troll mode off

Não, sério, essa matéria do Alves é perfeita. Tanto ela como a sua são as bases do movimento customizado. Lendo as duas, o cara programa o movimento numa boa. Obrigado por trazer Wink
avatar
Eskyz
Administrador
Administrador

Mensagens : 360
Data de inscrição : 28/02/2010
Idade : 20
Localização : Brasil

Ver perfil do usuário http://www.mmfmakers.rg3.net/

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