وحدات التحكم

*This content is translated using AI (Beta) and may contain errors. To view this page in English, click here.

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

تفعيل CCL

The CCL is opt-in through Studio's Avatar Settings window. To enable it:

  1. From the Avatar tab, open Avatar Settings.

    إعدادات الصورة الرمزية المشار إليها في شريط أدوات Studio
  2. Select the Movement tab on the left side of the window and, in the Abilities section, select Character Controller Library.

    تبديل مكتبة التحكم في الشخصيات في نافذة إعدادات الصورة الرمزية
  3. All of the standard abilities like Running, Jumping, and Climbing are enabled by default. To disable any of them at runtime, uncheck the associated box.

الهيكل

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

التكوين

أثناء تشغيل لعبتك (أو من خلال نص يعمل من ServerScriptService)، يمكنك تجربة مثيل ControllerManager ووحدات التحكم المدمجة.

وقت التشغيل

لتجربة تكوينات وحدة التحكم في وقت التشغيل:

  1. ابدأ اختبار اللعب.

  2. في مستكشف، ابحث عن نموذج الشخصية في Workspace ثم قم بتوسيع شجرة ControllerManager:

  3. حدد إما ControllerManager أو واحدة من سلالاتها، وفي نافذة الخصائص، قم بتخصيص الخصائص مثل تلك الملخصة في الجداول أدناه (يرجى ملاحظة أن هذه الجداول ليست شاملة؛ يرجى الاطلاع على توثيق API للصفوف للحصول على خيارات خصائص إضافية).

    الخاصيةالوصف
    BaseMoveSpeedسرعة الحركة الخطية الأساسية المستخدمة من قبل جميع وحدات التحكم. تقوم وحدات التحكم بتخصيص سرعة الحركة بشكل فردي من خلال خاصية MoveSpeedFactor الخاصة بها.
    BaseTurnSpeedسرعة دوران أساسية تستخدمها جميع وحدات التحكم لمواءمة الشخصية لمواجهة الاتجاه المرغوب. تقوم بعض وحدات التحكم بتخصيص سرعة الدوران بشكل فردي من خلال خاصية TurnSpeedFactor الخاصة بها.
    UpDirectionVector3 والذي يشير إلى متجه الاتجاه العلوي لجزء ControllerManager.RootPart.

عن طريق البرمجة

لتعيين تكوينات وحدة التحكم لجميع الشخصيات من خلال نص:

  1. أنشئ Script جديدة جانب الخادم داخل ServerScriptService وأعد تسميتها إلى ControllerScript.

  2. انسخ والصق الكود التالي في النص الجديد. هذا المثال يزيد من سرعة الحركة/الدوران على الأرض بالإضافة إلى إضافة بعض الوقت للتسارع والتباطؤ. لا تتردد في ضبط الخصائص الأخرى مثل تلك الموضحة في الجداول أعلاه أو لكل فئة كما هو موضح (ControllerManager; GroundController; AirController; ClimbController; SwimController).

    Script in ServerScriptService

    local Players = game:GetService("Players")
    local function onCharacterAdded(character)
    local ControllerManager = character:FindFirstChildWhichIsA("ControllerManager")
    if ControllerManager then
    local GroundController = ControllerManager:FindFirstChild("GroundController")
    if GroundController then
    -- تضاعف السرعات للحركة والدوران
    GroundController.MoveSpeedFactor *= 2
    GroundController.TurnSpeedFactor *= 2
    -- إضافة وقت تسارع وتباطؤ طفيف
    GroundController.AccelerationTime = 0.2
    GroundController.DecelerationTime = 0.4
    end
    end
    end
    local function onPlayerAdded(player)
    if player.Character then
    onCharacterAdded(player.Character)
    end
    player.CharacterAdded:Connect(onCharacterAdded)
    end
    Players.PlayerAdded:Connect(onPlayerAdded)
©2026 شركة Roblox Corporation. تُعد منصّة Roblox، وشعار Roblox وشعار "توسيع حدود المخيلة"، من ضمن علاماتنا التجارية المسجّلة وغير المسجّلة في الولايات المتحدة وبلدان أخرى.