انظر إلى الأشياء
جزء من قسم أساسيات البرمجة النصية في Unity في رحلة Unity على Coddy. الدرس 34 من 85.
تُدير transform.LookAt(point) الجسم بحيث يشير محوره الأمامي، وهو السهم الأزرق للمحور z، إلى موضع في العالم. إنها تُدير الجسم ولا تحرّكه. يقع هذا الكشّاف على برج عند (0, 6, 0) ويوجّه ضوءه نحو البوابة عند (4, 0, 10):
void Start()
{
transform.LookAt(new Vector3(4, 0, 10));
}تقع البوابة أسفل الضوء، لذا يميل الكشّاف إلى الأسفل بالإضافة إلى دورانه: يوجّه LookAt الجسم مباشرةً نحو النقطة، سواء كانت أعلى أم أسفل. بعد ذلك، يشير transform.forward من الضوء نحو البوابة.
عند استدعاء LookAt في Start()، يوجّه الجسم مرة واحدة. وعند استدعائه في Update()، يوجّه الجسم من جديد في كل إطار، لذلك يظل الجسم مواجهًا للنقطة بينما يتحرك الجسم أو النقطة. وسيطها دائمًا موضع: يوجّه LookAt(Vector3.forward) الجسم نحو نقطة العالم (0, 0, 1)، وهي بقعة بجوار مركز العالم، أينما كان الجسم.
التحدي
متوسطاجعل العربة الجوالة تواجه الاتجاه الذي تتحرك فيه.
- أسفل التعليق في
Update()، اكتبif (move != Vector3.zero)، لكي تحافظ العربة الجوالة المتوقفة على اتجاهها. - داخلها، استدعِ
transform.LookAt(transform.position + move);.
اضغط على «العب» وقد العربة: ستدير مقدمتها نحو الاتجاه الذي تتحرك فيه. ثم اضغط على «تحقق».
جرّب بنفسك
using UnityEngine;
public class Rover : MonoBehaviour
{
public float speed = 3f;
void Update()
{
Vector3 move = Vector3.zero;
if (Input.GetKey(KeyCode.RightArrow)) move += Vector3.right;
if (Input.GetKey(KeyCode.LeftArrow)) move += Vector3.left;
if (Input.GetKey(KeyCode.UpArrow)) move += Vector3.forward;
if (Input.GetKey(KeyCode.DownArrow)) move += Vector3.back;
move = move.normalized;
transform.position += move * speed * Time.deltaTime;
// أدِر المركبة الجوالة لتواجه الاتجاه الذي تسير فيه
}
}
جميع دروس أساسيات البرمجة النصية في Unity
1أساسيات C# في Unity
مرحبًا يا Unityالمتغيراتالأعداد العشرية تحتاج إلى fالنص في وحدة التحكممتغيرات تتذكرإذا وإلامقارنة الأعدادمراجعة: جامع العملات7الحلقات والدوال
التكرار باستخدام forحلقات داخل حلقاتكتابة دالةدوال تُعيد إجابةالمصفوفاتمراجعة: السُّلّم5المتجهات
جمع المتجهاتالاتجاهاتالفضاء المحلي والعالميالسرعة القُطريةالمسافة بين الأشياءVector3 بنية Structمراجعة: قيادة الطائرة المسيّرة8كائنات اللعبة والمكوّنات
المراجع في Inspectorالحصول على مكوّنالمكوّنات المفقودةإضافة مكوّنRequireComponentالإظهار والإخفاءمراجعة: مفتاح الإضاءة6التحويلات والتسلسل الهرمي
الآباء والأبناءارفع العلمالتحجيمانظر إلى الأشياءتحرّك نحو نقطةمراجعة: القمر في مدارهتدرّب بنفسك: Playground لـ Unity