إنتقل إلى المحتوى الرئيسي

Cursor + Unity تطوير الألعاب: دليل التكامل الكامل

Cursor Unity Integration

Unity هي واحدة من أشهر محركات الألعاب، ودمجها مع قدرات الذكاء الاصطناعي في Cursor يمكن أن يُسرع بشكل كبير سير عمل تطوير الألعاب. يغطي هذا الدليل كل ما تحتاجه لإعداد Cursor لتطوير Unity، من تكوين المشروع إلى البرمجة النصية بمساعدة الذكاء الاصطناعي.

المتطلبات الأساسية​

قبل البدء:

  • تثبيت Unity 2022.3 LTS أو أحدث
  • Cursor مع خطة Pro (موصى بها للمشاريع الأكبر)
  • .NET SDK (لدعم خادم لغة C#)
  • مشروع Unity يحتوي على مجلد Scripts

الخطوة 1: إنشاء ملفات مشروع C# في Unity​

يحتاج Cursor إلى ملفات .csproj للحصول على IntelliSense وفهم سياق الذكاء الاصطناعي.

تمكين الأدوات الخارجية​

  1. افتح محرر Unity
  2. انتقل إلى Edit > Preferences (Windows) أو Unity > Settings (macOS)
  3. انتقل إلى External Tools
  4. اضبط External Script Editor على Cursor (أو تصفح إلى ملف Cursor التنفيذي)
  5. حدد Generate .csproj files for:
    • Registry packages
    • Build-in packages
    • Local packages
    • Embedded packages
  6. انقر فوق Regenerate project files

البديل: حزمة VS Code اليدوية​

إذا لم يظهر Cursor في القائمة:

  1. قم بتثبيت حزمة Visual Studio Code Editor في Unity:
    • Window > Package Manager
    • ابحث عن "Visual Studio Editor"
    • قم بتثبيت/التحديث إلى أحدث إصدار
  2. اضبط External Script Editor على Visual Studio Code
  3. أعد إنشاء ملفات المشروع

الخطوة 2: فتح مشروع Unity في Cursor​

الطريقة 1: من Unity​

  1. انقر نقرًا مزدوجًا على أي نص C# في نافذة Project في Unity
  2. سيفتح Unity مشروعًا محملًا في Cursor

الطريقة 2: الفتح المباشر​

# انتقل إلى مشروع Unity الخاص بك
cd ~/MyUnityProject

# افتح في Cursor
cursor .

الطريقة 3: باستخدام ملف .sln​

# افتح ملف الحل مباشرة
cursor MyUnityProject.sln

الخطوة 3: تكوين IntelliSense​

التحقق من C# Dev Kit​

  1. في Cursor، افتح Extensions (Cmd/Ctrl + Shift + X)
  2. تأكد من تثبيت C# Dev Kit
  3. إذا لم يكن مثبتًا، قم بتثبيته من السوق

التحقق من تحميل المشروع​

بعد فتح مشروع Unity:

  1. انتظر تحميل خادم لغة C# (تظهر شريط الحالة التحميل)
  2. افتح أي ملف نصي
  3. اختبر IntelliSense بكتابة transform. — يجب أن ترى اقتراحات API Unity

استكشاف أخطاء IntelliSense​

إذا لم يعمل IntelliSense:

# إعادة إنشاء ملفات المشروع من سطر الأوامر
# على macOS
/Applications/Unity/Hub/Editor/2022.3.x/Unity.app/Contents/MacOS/Unity \
-quit -batchmode -projectPath ~/MyUnityProject

# حذف ملفات المشروع المخزنة مؤقتًا
rm -rf ~/MyUnityProject/.vscode
rm -f ~/MyUnityProject/*.sln
rm -f ~/MyUnityProject/Assembly-CSharp*.csproj

ثم أعد إنشاء الملفات من تفضيلات External Tools في Unity.

الخطوة 4: قواعد Cursor لـ Unity​

أنشئ .cursor/rules/unity-development.mdc:

---
description: 'إرشادات تطوير Unity لـ Cursor'
globs: ['Assets/**/*.cs']
alwaysApply: true
---

# قواعد تطوير Unity

## أسلوب الكود
- استخدم PascalCase للطرق والخصائص العامة
- استخدم camelCase للحقول الخاصة (ببادئة شرطة سفلية)
- استخدم SerializeField بدلاً من الحقول العامة لعرض Inspector
- خزّن مراجع المكونات في ذاكرة التخزين المؤقت في Awake() أو Start()

## الأداء
- تجنب GetComponent() في Update() — خزّن في ذاكرة التخزين المؤقت في Start()
- استخدم object pooling للكائنات التي يتم إنشاؤها بشكل متكرر
-فضّل RaycastNonAlloc على RaycastAll
- استخدم Coroutines للعمليات الموقوتة بدلاً من فحوصات Update()

## الأنماط
- استخدم ScriptableObjects للبيانات/التكوينات المشتركة
- نفّذ منطق اللعبة في MonoBehaviours، والبيانات في ScriptableObjects
- استخدم Events/Actions للتواصل غير المترابط
-فضّل التكوين على الوراثة

الخطوة 5: البرمجة النصية لـ Unity بمساعدة الذكاء الاصطناعي​

إنشاء المكونات​

مثال على prompt:

أنشئ نص تحكم باللاعب لمنصة ثنائية الأبعاد تحتوي على:
- حركة سلسة مع تسارع/تباطؤ
- ارتفاع قفز متغير بناءً على الضغط المستمر على الزر
- وقت coyote للقفزات المتسامحة
- كشف الأرض باستخدام raycasts
- إدخال باستخدام نظام الإدخال الجديد

إعادة بناء MonoBehaviours​

مثال على prompt:

أعد بناء هذا PlayerController لاستخدام:
1. نمط آلة الحالات (حالات Idle، Run، Jump، Fall)
2. ScriptableObject لمعاملات الحركة
3. نظام صحة قائم على الأحداث
4. فصل معالجة الإدخال عن منطق الحركة

إنشاء أدوات المحرر​

أنشئ نافذة محرر مخصصة تقوم بما يلي:
- سرد جميع كائنات اللعبة في المشهد التي تفتقر إلى colliders
- عرض أزرار لإضافة BoxCollider أو SphereCollider
- عرض عدد الكائنات لكل طبقة
- احتواء على زر "تحديد الكل"

الخطوة 6: تصحيح أخطاء Unity في Cursor​

إرفاق المصحح​

  1. قم بتثبيت ملحق Unity في Cursor
  2. افتح مشروع Unity في Cursor
  3. اضغط على F5 أو انتقل إلى Run > Start Debugging
  4. حدد Unity Debugger
  5. في Unity، ادخل إلى وضع Play
  6. ستصبح نقاط التوقف فعالة الآن

تكامل وحدة التحكم​

استخدم طرفية Cursor لتشغيل Unity في وضع batch:

# تشغيل اختبارات Unity من سطر الأوامر
Unity -batchmode -quit -projectPath ~/MyUnityProject -executeMethod BuildScript.RunTests

الخطوة 7: خادم MCP Unity (متقدم)​

للتكامل المتقدم، استخدم خادم MCP Unity:

الإعداد​

  1. قم بتثبيت حزمة Unity MCP:
# في Unity Package Manager
# إضافة من عنوان URL git: https://github.com/unity-mcp/server.git
  1. قم بالتكوين في إعدادات MCP في Cursor:
{
"mcpServers": {
"unity": {
"command": "dotnet",
"args": ["run", "--project", "path/to/unity-mcp"]
}
}
}

ما يمكنك فعله​

  • الاستعلام عن تسلسل هرمي للمشهد
  • إنشاء/تعديل كائنات اللعبة
  • ضبط خصائص المكونات
  • البناء والاختبار من Cursor

مثال:

[@unity] أنشئ كائن لعبة جديدًا باسم "EnemySpawner" في الموضع (0، 5، 0) وأضف نص MonoBehaviour بفاصل spawn قدره 2 ثانية.

أفضل الممارسات​

هيكل المشروع​

Assets/
Scripts/
Core/ # مديرو اللعبة، الأحاديات
Player/ # النصوص المتعلقة باللاعب
Enemies/ # ذكاء العدو ووحدات التحكم
UI/ # وحدات تحكم UI والمديرون
Utils/ # أساليب التوسيع، المساعدون
ScriptableObjects/
PlayerData/ # تكوينات اللاعب
EnemyData/ # تكوينات العدو
LevelData/ # إعدادات المستوى
Editor/ # أدوات المحرر المخصصة

التحكم في الإصدار​

أضف إلى .gitignore:

# Unity
[Ll]ibrary/
[Tt]emp/
[Oo]bj/
[Bb]uild/
[Bb]uilds/
[Ll]ogs/
[Uu]ser[Ss]ettings/

# Cursor
.cursor/
.vscode/

تحليل الأداء​

استخدم Cursor لتحليل الأداء:

راجع طريقة Update() هذه وحدد مشاكل الأداء:
[الصق الكود]

اقترح تحسينات باستخدام:
1. Object pooling
2. المراجع المخزنة مؤقتًا
3. هياكل البيانات الفعالة

المشاكل الشائعة والحلول​

المشكلةالحل
IntelliSense لا يعملأعد إنشاء ملفات .csproj في Unity
نقاط التوقف لا تصبح فعالةتأكد من أن Unity في وضع Play
اقتراحات API Unity مفقودةتحقق من تثبيت C# Dev Kit
تحميل المشروع بطيءاستثنِ مجلد Library/ من فهرسة Cursor
الذكاء الاصطناعي يقترح كودًا غير تابع لـ Unityأضف قواعد Unity إلى .cursor/rules/

الأوامر السريعة​

المهمةالأمر
إعادة إنشاء ملفات المشروعUnity > Edit > Preferences > External Tools > Regenerate
فتح نص في Cursorانقر نقرًا مزدوجًا على النص في Unity
إرفاق المصححF5 في Cursor
البحث في API Unityاستخدم رمز @ في دردشة Cursor

الموارد ذات الصلة​