Controladores de Stick Stick

1

Index

Fichiers attachés

Les fichiers suivants ont été attachés à ce tutoriel:

.capx

Contributeurs

Statistiques

6,605 visites, 9,937 vues

Outils

Partager

Traductions

License

This tutorial is licensed under CC BY 4.0. Please refer to the license text if you wish to reuse, share or remix the content contained within this tutorial.

Published on 6 Nov, 2017. Last updated 25 Feb, 2019

Analógico tipo arcade

Analógico tipo arcade é melhor utilizado quando precisa-se de uma gama de graus e distância de confiança, ao invés de um ângulo ou um ângulo sem entrada. Fidelity permite a diferença entre andar, correr ou colidir. Juntamente com a fidelidade da entrada,o controlador também fornece ângulo. O problema é que o joystick analógico é mais complexo, o que requer mais sprites, eventos e ações.

O que você precisa

* Pad Sprite que não vai passar e representa o ponto de 0x0 do controlador.

* Stick Sprite que representa a distância relativa e o ângulo em comparação com o pad sprite.

Variáveis

* Radius no grupo que é necessário para determinar o valor de distância visual que o stick pode viajar e é usado para determinar a fidelidade de entrada.

* dist (ance) é a variável em grupo para manter a distância entre a plataforma e a localização do thumb stick.

*cangle no grupo é uma variável conveniente para manter o ângulo atual em que a plataforma está em relação ao touch.

* conAngle(controller angle)

* XP horizontal percentual de entrada variando de -99.x para 99.x.

* YP vertical percentual de entrada variando de -99.x para 99.x.

Event Sheet

Como funciona

Aqui nos aprofundarmos na integra do controlador analógico por toque. Embora este modelo de entrada tem apenas alguns eventos , há um número maior de ações.

*Evento Um

Capturar onde o evento toque ocorre e armazenar o ID touch. O ID touch é vital para qualquer controle de toque longo. Isto permite a batida rápida para jogos , se quisessem oferecer explosão (Dodge , rush ... ) para o movimento.

*Evento Dois

Muito mais acontece no Evento dois. Aqui, assim como acima, o ângulo é seguido, no entanto a entrada(input) segue o analógico gráfico enquanto o evento está atualizado com o toque usando o TouchForID . Isto é importante porque um dedo que desliza para fora do controlador irá perder o controle. Isso pode não ser um problema, mas pode perder o controle ao tentar fazer controles com jogos intensos, ou apenas ser chato se os controles não são do tamanho certo . O evento continua a seguir enquanto o ID específico está em contato . Isto é importante porque o polegar do analógico é utilizado para calcular a entrada.

a. Guarde a distância e o ângulo da localização do toque em variáveis para cálculos matemáticos .

b. Calcula-se a posição do analógico gráfico em relação ao gráfico. O analógico polegar será usado para a medição de entrada . O que acontece é que a posição é determinada pelo ângulo entre o evento de toque e a gráfico . A distância está usando um inline if para determinar se o Box Arraste está além dos limites da variável raio do controle. Isso permite o controle continue mesmo se o polegar desliza do touchpad.

Code to set position X

    (cos(cangle) [*] (dist < radius ? dist :  radius)) + sanaPad.X

Code to set position Y

    (sin(cangle) [*] (dist < radius ? dist : radius)) + sanaPad.Y


c. Lastly set usable input values determined by the stick position to radius.

The following line retrieves the X percentage of the analog control

    ((sanaStick.X - sanaPad.X)  / radius) * 100

The following line retrieves the Y percentage of the analog control

    ((sanaStick.Y - sanaPad.Y)  / radius) * 100


*Evento Três

Semelhante ao evento dois, há mais trabalho para finalizar o comando de entrada. Centralize o cursor e avançar para zerar os dados introduzidos.

  • 0 Comments

Want to leave a comment? Login or Register an account!