Eu tenho um controlador de caracteres básico configurado para um jogo de plataformas 2D com Box2D e estou começando a ajustá-lo para tentar fazê-lo se sentir bem. Os mecanismos de física têm muitos botões para ajustar, e não está claro para mim, escrevendo com um mecanismo de física pela primeira vez, quais devo usar. O salto deve aplicar uma força para vários carrapatos? Um impulso? Definir velocidade diretamente? Como faço para impedir que o avatar cole nas paredes sem remover todo o atrito (ou retiro todo o atrito, mas apenas no ar)? Devo modelar o personagem como uma cápsula? Uma caixa com cantos arredondados? Uma caixa com duas rodas? Apenas uma roda grande? Eu sinto que alguém deve ter feito isso antes!
Parece haver muito poucos recursos disponíveis na Web que não são a "primeira física do bebê", todos cortados onde espero que alguém já tenha resolvido os problemas. A maioria dos exemplos de mecanismos de física para plataformas tem controles flutuantes, saltos no ar ou comportamento facilmente explorável quando a penetração temporária é muito alta, etc.
Alguns exemplos do que quero dizer:
- Um pequeno toque de salto salta a uma curta distância; uma torneira longa salta mais alto.
- Deslizamentos curtos ao parar ou reverter as direções em alta velocidade.
- De pé de forma estável em declives (mas talvez deslizando para baixo quando se esquivar).
- Velocidade analógica ao usar um controlador analógico.
- Todas as outras coisas que separam bons criadores de plataforma dos ruins.
- Ouso sugerir plataformas móveis estáveis?
Eu realmente não estou procurando "ei, faça isso". Obviamente, a coisa certa a fazer depende do que eu quero no jogo. Mas espero que alguém em algum lugar tenha examinado as possibilidades e tenha dito "a técnica bem A apresenta X bem, a técnica B bem Y, mas isso não funciona com C", ou tem alguns exemplos funcionados além "if (key = = espaço) character.impulse (0, 1) "