लक्ष्य
यह tutorial Unity का एक बहुत उपयोगी beginner pattern समझाता है: ground पर click पढ़ना और character को उस point की ओर साफ, controllable तरीके से move करना.

ScreenPointToRay, Physics.Raycast और MoveTowards से beginner-friendly click-to-move controller बनाएं.
लेसन का सारांश
यह tutorial Unity का एक बहुत उपयोगी beginner pattern समझाता है: ground पर click पढ़ना और character को उस point की ओर साफ, controllable तरीके से move करना.
30-40 मिनट / शुरुआती
Floor पर click करने से अगला destination set होता है.
शुरू करने से पहले
जब आपको पता होता है कि स्क्रीन पर क्या दिखना चाहिए और कौन सा नतीजा पूरा माना जाएगा, तो लेसन बहुत आसानी से आगे बढ़ता है.
यह tutorial Unity का एक बहुत उपयोगी beginner pattern समझाता है: ground पर click पढ़ना और character को उस point की ओर साफ, controllable तरीके से move करना.
Camera.main.ScreenPointToRay से screen click को 3D ray में बदलें और Physics.Raycast से ground detect करें.
Floor पर click करने से अगला destination set होता है.
using UnityEngine;
public class ClickMoveController : MonoBehaviour
{
[SerializeField] private float moveSpeed = 5f;
[SerializeField] private LayerMask groundLayer;
private Vector3 targetPosition;
private bool hasTarget;
private void Start()
{
targetPosition = transform.position;
}
private void Update()
{
if (Input.GetMouseButtonDown(0))
{
var ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray, out RaycastHit hit, 100f, groundLayer))
{
targetPosition = hit.point;
hasTarget = true;
}
}
if (!hasTarget) return;
transform.position = Vector3.MoveTowards(
transform.position,
new Vector3(targetPosition.x, transform.position.y, targetPosition.z),
moveSpeed * Time.deltaTime
);
}
}