Chạm để di chuyển (Tap To Move)
C# Code
using UnityEngine;
using UnityEngine.AI; // Yêu cầu có NavMeshAgent trên Player
[RequireComponent(typeof(NavMeshAgent))]
public class TapToMove : MonoBehaviour
{
private NavMeshAgent agent;
public LayerMask groundLayer; // Layer của mặt đất
void Start()
{
agent = GetComponent<NavMeshAgent>();
}
void Update()
{
if (Input.GetMouseButtonDown(0)) // Hoạt động với cả chạm màn hình
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if (Physics.Raycast(ray, out hit, 100, groundLayer))
{
// Di chuyển agent đến vị trí chạm
agent.SetDestination(hit.point);
}
}
}
}Cho phép người chơi di chuyển nhân vật đến một vị trí trên mặt đất bằng cách chạm vào điểm đó trên màn hình. Sử dụng Raycast để xác định vị trí trong không gian 3D.