Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

260
Visualizações
Manera eficiente de detectar el tacto excepto en el área del joystick

Estoy usando este joystick y Mirror para trabajar en red.

https://github.com/herbou/Unity_EasyJoystick

Y tengo este script para disparar una bala en el toque del usuario

 public class ShootBullet : NetworkBehaviour { [SerializeField] private GameObject bulletPrefab; private GameObject bullet; // Set via the Inspector in Units/second [SerializeField] private float _moveSpeed = 2f; [SerializeField] private Camera _camera; Vector3 touch_Pos = new Vector3(0, 0, 0); private void Awake() { if (!_camera) _camera = Camera.main; } void Update() { if (Input.touchCount > 0 && this.isLocalPlayer) { if (Input.GetTouch(0).phase == TouchPhase.Began) { var touch = Input.GetTouch(0); touch_Pos = _camera.ScreenToWorldPoint(touch.position); this.CmdShoot(); } } if (bullet != null) { bullet.transform.position = Vector3.MoveTowards(bullet.transform.position, touch_Pos, _moveSpeed * Time.deltaTime); } } [Command] void CmdShoot() { bullet = Instantiate(bulletPrefab, this.transform.position, Quaternion.identity); NetworkServer.Spawn(bullet); } }

Mi problema en este momento es que dispara una bala cuando toco el área del joystick. ¿Cuál es la forma eficiente de excluir input.touch en el área del joystick?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Puede transmitir la posición táctil y verificar el resultado.

 var mousePos = Input.mousePosition; var mouseToRay = _camera.ScreenPointToRay(mousePos); RaycastHit hit; if (Physics.Raycast(mouseToRay, out hit)) { var gameObject = hit.collider.gameObject; //Here You can check the name of your object or the layer or tag var isMouseUnderJoyStick = gameObject.CompareTag("Your_UI_Tag"); }

Y tienes que agregar el componente colisionador a tu JoyStick

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda