تعلم البرمجة لمحرك الألعاب يومنتي 3 دي من الصفر الجزء الأول " Unity scripting "

 في البداية وعندما نحب أن نقوم بصناعة لعبة على محرك الألعاب يونيى 3 دي فأن أول شيء نحتاجه هو الأختيار بين اللغتان الاساسيتان في يونتي، وهما سي شارب و جافا سكربت.

 


 

ورغم أن محرك الألعاب يدعم أستخدام كلا اللغتان في مشروع واحد أي في لعبة واحدة، ألى أن الأمر قد يحدث بعض من المشاكل أثناء التجميع، فلذلك نحن لا نرجح أستخدام اللغتان معا، حتى لا تكون من هؤلاء الذين وجهو مثل هذه المشكله بعد أن أنهو لعبتهم.

وهنا في هذه الدوره سنشرح فيها بالتفصيل كل ما تريد معرفته لتكتب أكواد لعبتك، وستكون الدورة عن لغة السي شارب.

أولا لأنشاء ملف جديد لكتابة الأكواد

في أي مكان في نافذة البروجيكت الخاص بنا نضغط على ذر الموس الأيمن ثم "Create menu
" ثم " C# Script ".

نختار أسم للملف الجديد.

ثم بعد ذلك نقوم بفتح الملف في محرر الأكواد الخاص بنا.

كانت هذه مقدمة صغيرة فالنبدأ في شرح طريقة كتابة الأكواد.

أولا المتغيرات:

المتغيرات يمكننا أن نعرفها على أنها مجرد صندوق لحفظ الأشياء بداخلة، فالمتغيرات مجرد مكان في ذاكرة الجهاز يخصص لحفظ شيء ما، مثل حفظ أسم اللاعب، حفظ الأسكور وعدد النقاط التي حققها، حفظ الهاي سكور، حفظ أسم المستوي الذي وصل أليه اللاعب، وغيرها من البيانات التي تحتاجها داخل اللعبة، والمتغيرات هي أساس البرمجة، فالبرمجة ما هي ألا بيانات محفوظة في متغيراتن ثم يتم تغيير تلك البيانات عبر أكواد برمجية، ثم تحفظ، أو تستخدم.

على سبيل المثال لعبة تقوم فيها بتحريك سيارة سباق، مع بداية اللعبة تقف السيارة عند النقطة صفر في بداية السباق، فيضغط اللاعب علي مفتاح في لوحة الأزرار فتتحرك السيارة للأمام، هذا بسبب في بداية اللعبة مكان السيارة مخزن في متغير، وعند الضغط على المفتاح يقوم نص برمجي بأستدعاء المكان المحفوظ في المتغير وزيادته بمقدار الضغط على الزر ثم يقوم بحفظ القيمة الجديدة للمتغير، وتحديث مكان السيارة على الشاشة بالقيمة الجديدة.

أنواع المتغيرات:

 أولا النوع " int " وهو يمثل القيمة الصحيحة أى الأرقام بدون فواصل عشرية مثل( 1،2،3،4،000000).

وهو يمكن تخزين القيم الصحيحة مثل عدد العملات الذهبيه في اللعبة، عدد مستويات اللعبة.

ثانيا النوع "  "  وهو يمثل القيمة ذات الفواصل العشرية مثل( 1.256).

وهو يمكن أن نخزن به مكان اللاعب.

ثالثا النوع " bool " وهو متغير يتم حفظ فيه قيمتان فقط " صح" أو " خطأ " .

وهو يمكن أن يستخدم على سبيل المثال في حفظ الأختبارات، مثل عند الضغط على زر القفز، يتم أختبار هل اللاعب يمشي على الارض لو صحيح فيتم القفز، لو خطا فمعني هذا أن اللاعب قفز بالفعل فلا يتم القفز مرة أخرىحتي تنتهي القفزة ويعود اللاعب ملامسا للأرض.

رابعا النوع " string " وهو متغير لحفظ الجمل والكلمات النصية.

فيمكن من خلاله حفظ أسماء اللاعبين، أو اعمارهم، البريد الألكتروني لهم، أو حفظ أسماء المراحل.

خامسا النوع " Vector3 " وهو متغير يتم حفظ ثلاث قيم بداخلة، وهو يستخد في الأغلب لحفظ مكان الأجسام داخل الألعاب.

فيمكن من خلال هذا النوع حفظ مكان أي جسم عبر قياس بعدة عن النقطة صفر بمعني في أي مجسم 3 دي يتم تحديد نقطة مركزية تأخذ قيمة " Vector3 " لها (  0،0،0) أي يكون مكانها علي الثلاث محاور الطول والعرض والارتفاع هو صفر، ثم نحدد جسم آخر يكون مكانه مثلا علي محور الطول واحد والعرض أثنان والأرتفاع صفر فهذا يعيني يبعد عن النقطة المركزية بمقدار واحد متر طولا و أثنان متر عرضا وله نفس الأرتفاع، وهكذا يتم تحديد أماكن جميع الأجسام قياسا عن تلك النقطة المركزية عبر تحديد الثلاث قيم لمكانهم، والتي تكون مخزنة في المتغير  " Vector3 ".

بالطبع هناك الكثير من المتغيرات والتي سنتعرف عليها تباعا، فهناك متغيرات لنحفظ بداخلها الصور، أو الاجسام الثري دي، أو الموسيقى ومقاطع الصوتن وغيرها من المتغيرات.

أستخدام المتغيرات:

 بالطبع لأستخدام أي متغير يجب أولا أن نقوم بتعريف ذلك المتغير، وتحديد نوعة، وذلك يتم عبر تحديد أسم فريد لهذا المتغير أي أسم لم أستخدمه لتعريف متغير آخر في نفس المجموعة البرمجية، وكذلك تحديد نوعة، أي تحديد نوع البيانات التي سوف يتم تخزينها في هذا المتغير، وهل سيكون هذا المتغير عام، أي يمكن الوصول له عبر أي مكان في اللعبة، أم هو متغير خاص فقد يتم التحكم به عبر مجموعة الأوامر في جزء من البرنامج داخل اللعبة.

 

public string PlayerName = "";

 public int PlayerHealth = 100;

 public Vector3 Position = Vector3.zero;

 

 بكلمة " public "  هنا تعني عام، أي يمكن للوصول لهذا المتغير من أي مكان خارج تلك المجموعة البرمجية، أي عبر سكربت آخر داخل اللعبة، كما أنها تتيح تغيير قيمة هذا المتغير من قوائم اليونتي دون الحاجة للتغير عبر الأسطر البرمجية، كما سوف نعرضه بتفاصيل أكبر في الدروس القادمة.

 أما كلمات " string ، int ،  Vector3 " فهي لتعريف نوع المتغير سواء كان، أي تحديد نوع البيانات التي سوف يتم تخزينها في تلك المتغيرات سواء كانت بيانات عبارة عن نصو، أو أرقام صحيحة، أو ثلاث قيم.


إرسال تعليق

0 تعليقات