Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
[Trancado] adaptar pathfinding
3 participantes
Página 1 de 1
[Trancado] adaptar pathfinding
ola!
em meu jogo,estou usando o pathfinding,de inicio nao deu problemas,mas agora comecei a notar varios...
vi que a maioria dos pthfinding do forum foram feitos apenas para jogos que tem os objetos mais organizados,em uma certa armonia de distancia um do outro,ate para ajudar o pathfinding a achar o caminho.
Em meu jogo nao é assim,a objetos solidos por toda a parte,desorganizado,dificultando e gerando bug no pathfinding...eu tentei fazer assim,modificando o mpgrid em 10 e 10 steps:
é isso!
em meu jogo,estou usando o pathfinding,de inicio nao deu problemas,mas agora comecei a notar varios...
vi que a maioria dos pthfinding do forum foram feitos apenas para jogos que tem os objetos mais organizados,em uma certa armonia de distancia um do outro,ate para ajudar o pathfinding a achar o caminho.
Em meu jogo nao é assim,a objetos solidos por toda a parte,desorganizado,dificultando e gerando bug no pathfinding...eu tentei fazer assim,modificando o mpgrid em 10 e 10 steps:
- Código:
mgrid = mp_grid_create(x-535,y-513,x+535,y+513,21,6)
é isso!
Última edição por Adilson Thiago Vieira em Ter 26 Fev 2013, 17:35, editado 1 vez(es)
Adilson Thiago Vieira- Games Ranking :
Notas recebidas : D+C+C+D
Data de inscrição : 17/10/2012
Reputação : 25
Número de Mensagens : 367
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Trancado] adaptar pathfinding
O problema dos pathfindings é que eles funcionam em grids. Pesquise sobre o A* - é a teoria usada pelo GM e tem uns artigos muito bem explicados pela internet afora (acho que no meu tutorial tem uns links).
A única forma de fazer o pathfinding ser eficaz numa grid irregular é transformá-la em grid regular. Isso pode significar fazer com que a célula da grade meça 1 pixel. Ou seja, vai ficar lento pra caramba!
Ficar rodando o pathfind de tempos em tempos (10 em 10 ou 1 em 1 steps)não é uma boa idéia. O melhor seria definir muito bem em que momentos ele é necessário e rodar só nesses eventos.
Minha sugestão é adaptar seu jogo e colocá-lo numa grid regular. Essa grid pode ser hexagonal, de forma que fica menos perceptível ao jogador o fato de existir uma grid (mas aí você vai ter que escrever sua própria versão do A*).
Infelizmente, existem casos em que o jogo tem que sofrer alguns cortes por questões práticas. A velocidade de processamento do pathfinding é uma questão prática...
A única forma de fazer o pathfinding ser eficaz numa grid irregular é transformá-la em grid regular. Isso pode significar fazer com que a célula da grade meça 1 pixel. Ou seja, vai ficar lento pra caramba!
Ficar rodando o pathfind de tempos em tempos (10 em 10 ou 1 em 1 steps)não é uma boa idéia. O melhor seria definir muito bem em que momentos ele é necessário e rodar só nesses eventos.
Minha sugestão é adaptar seu jogo e colocá-lo numa grid regular. Essa grid pode ser hexagonal, de forma que fica menos perceptível ao jogador o fato de existir uma grid (mas aí você vai ter que escrever sua própria versão do A*).
Infelizmente, existem casos em que o jogo tem que sofrer alguns cortes por questões práticas. A velocidade de processamento do pathfinding é uma questão prática...
saim- Games Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios :
x 1 x 6 x 0
x 1 x 0 x 3
x 0 x 0 x 0
Re: [Trancado] adaptar pathfinding
tah...valeu ai saim,eu ja mais ou menos esperava que nao teria um jeito certo...mas so queria ter certeza!
obrigado pela sugestao,eu me viro para achar uma soluçao,podem tranca o topico! =)
obrigado pela sugestao,eu me viro para achar uma soluçao,podem tranca o topico! =)
Adilson Thiago Vieira- Games Ranking :
Notas recebidas : D+C+C+D
Data de inscrição : 17/10/2012
Reputação : 25
Número de Mensagens : 367
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Trancado] adaptar pathfinding
Existe uma alteração teórica do A* para não ser aplicada em grids que nem sempre dá certo.
O conceito básico é o seguinte: quando colidir com um sólido, o objeto deve saber como desviar do objeto, que no caso é analisando como ocorreu a colisão e o tamanho de bounding box dele, é quase que executar o mp_potential_step, mas existe implementações mais complexas que simulam a distâncias curtas o pathfinding.
É só lembrar de jogos RTS 3D, e jogos de RPG que seu personagem vai aonde você clica, de alguma maneira eles sempre chegam lá
O conceito básico é o seguinte: quando colidir com um sólido, o objeto deve saber como desviar do objeto, que no caso é analisando como ocorreu a colisão e o tamanho de bounding box dele, é quase que executar o mp_potential_step, mas existe implementações mais complexas que simulam a distâncias curtas o pathfinding.
É só lembrar de jogos RTS 3D, e jogos de RPG que seu personagem vai aonde você clica, de alguma maneira eles sempre chegam lá
L0l-King- Data de inscrição : 04/04/2010
Reputação : 1
Número de Mensagens : 148
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Trancado] adaptar pathfinding
valeu Lol king,eu estava a pensar em algo com o mp potential step,estou trabalhando bastante para criar algo que fique bom,talves sem precisar das grids,eu sei que é bem dificil,mas se eu axar uma soluçao,eu posto aki no topico para mais gente poder usar e nao bater tanto a cabeça igual eu!
mais uma vez,obrigado aos dois! C=
mais uma vez,obrigado aos dois! C=
Adilson Thiago Vieira- Games Ranking :
Notas recebidas : D+C+C+D
Data de inscrição : 17/10/2012
Reputação : 25
Número de Mensagens : 367
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» Adaptar código a colisão
» A* pathfinding - LITE?
» como fazer a tela de um jogo android se adaptar?
» Adaptar script para utilizar arquivos externos
» Pathfinding com mais de um inimigo
» A* pathfinding - LITE?
» como fazer a tela de um jogo android se adaptar?
» Adaptar script para utilizar arquivos externos
» Pathfinding com mais de um inimigo
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos