SLIM

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

SLIM (نماذج تفاعلية خفيفة الوزن وقابلة للتوسع) هو نظام تحسين تلقائي يقوم بإنشاء تمثيلات خفيفة الوزن ومحسّنة لـ Models وأفاتار المنصة باستخدام تحويل سحابي (تحويل الأصول إلى تنسيقات أكثر كفاءة). عند التمكين، يقوم SLIM بدمج أجزاء متعددة في عدد أقل من أوامر الرسم (أوامر العرض المرسلة إلى وحدة معالجة الرسومات) ويولد مستويات متعددة من التفاصيل، مما يسمح للمحرك باختيار أفضل تمثيل بناءً على المسافة، وقدرة الجهاز، والموارد المتاحة.

بدون SLIM — النماذج المتدفقة غير مرئية
مع SLIM — البدائل المحسّنة تبقى مرئية

يوفر SLIM ثلاث فوائد رئيسية:

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

استكشف SLIM في هذه الألعاب المنشورة:

نموذج مدينة الناس والسيارات SLIM — نماذج العالم مع تمكين SLIM

أفاتار منصة SLIM — 200 أفاتار متحرك تم عرضه باستخدام SLIM

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

يتطلب SLIM ما يلي:

  1. يجب تمكين StreamingEnabled على كائن Workspace. انظر أيضًا خصائص البث للإعدادات الموصى بها ذات الصلة.
  2. يجب أن يكون المكان محفوظًا على Roblox (ليس ملف .rbxl محلي)، حيث يستخدم SLIM تحويل سحابي لإنشاء أصول محسّنة. إذا كنت تختبر محليًا، انشر المكان ثم قم بتمكين SLIM.
  3. يجب تمكين Team Create للعبة، حيث يعتمد SLIM على الخصائص المرتبطة لإنشاء الأصول السحابية.

السلوك الفني

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

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

SLIM للنماذج

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

لتمكين SLIM على نموذج، قم بتعيين خاصية LevelOfDetail إلى SLIM في نافذة الخصائص.

نافذة الخصائص مع تعيين خاصية LevelOfDetail إلى SLIM.

عندما يتم تعيين SLIM على نموذج، يقوم المحرك:

  1. بتسلسل الخصائص ذات الصلة بعرض النموذج (الهندسة، المواد، القوام، التحولات) إلى تمثيل مضغوط. تشمل أنواع العناصر المدعومة داخل النموذج Part، MeshPart، Decal، Texture، SurfaceAppearance، PartOperation، NegateOperation، و SpecialMesh.
  2. يقوم بتحميل هذه البيانات إلى خدمة تحويل سحابية عند أول نشر أو تشغيل.
  3. تقوم الخدمة السحابية بإنشاء شبكة مركبة مع مستويات متعددة من التفاصيل، وإزالة الهندسة الداخلية المخفية وتحسين القوام.
  4. في وقت التشغيل، يقوم العملاء بجلب الأصل SLIM المحسّن وعرضه عندما يقوم المحرك بتدفق النموذج الأصلي أو عندما يكون SLIM أكثر كفاءة من النموذج الكامل.

إذا كانت لعبتك تستخدم إعداد StreamingMesh التقليدي لـ Model.LevelOfDetail، يمكنك تحويل النماذج الفردية عن طريق تحديدها وتغيير الخاصية في نافذة الخصائص، أو يمكنك تحويل عدة نماذج دفعة واحدة باستخدام نص برمجي مثل التالي في شريط الأوامر. لاحظ أن بعض النماذج التي كانت تعمل مع StreamingMesh قد تحتاج إلى تعديلات لـ SLIM، خصوصًا تلك التي تحتوي على أجزاء متداخلة أو هياكل PartOperation معقدة.

Batch-Convert StreamingMesh to SLIM
for _, descendant in workspace:GetDescendants() do
if descendant:IsA("Model") and descendant.LevelOfDetail ==
Enum.ModelLevelOfDetail.StreamingMesh then
descendant.LevelOfDetail = Enum.ModelLevelOfDetail.SLIM
end
end

SLIM للأفاتار

الأفاتار على المنصة خارج المنطقة المتدفقة حاليًا غير مرئية بشكل افتراضي. تمكين أفاتار SLIM يعرض شخصيات اللاعبين القياسية — بغض النظر عن عدد الإكسسوارات أو طبقات الملابس التي لديهم — كبدائل خفيفة الوزن ومتحركة تحافظ على الدقة البصرية بتكلفة عرض أقل بكثير.


الخاصية الرئيسية الخاصة بـ SLIM للأفاتار هي Workspace.EnableSLIMAvatars والتي يجب تعيينها إلى Enabled في نافذة الخصائص، جنبًا إلى جنب مع LevelOfDetail المعين إلى SLIM على نماذج العالم غير الأفاتار الخاصة بك.

نافذة الخصائص مع تعيين خاصية EnableSLIMAvatars إلى Enabled.

مع تمكين EnableSLIMAvatars، يقوم المحرك:

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

على عكس نموذج SLIM الذي يمكنك اختباره بمفرده عن طريق الابتعاد عن نموذج حتى يتم تدفقه، تتطلب أفاتار SLIM وجود عدة لاعبين في اللعبة للملاحظة. استخدم أحد أوضاع الاختبار لاختبار أفاتار SLIM:

  • اختبار الفريق — انضم مع الأصدقاء أو حسابات بديلة لرؤية أفاتار SLIM عن بُعد.
  • الخادم والعملاء — أطلق نافذتين أو أكثر من العملاء حيث يعرض كل عميل نسخًا من الأفاتار التي يقوم الآخرون بعرضها كـ SLIM عند المسافة.

لاحظ أنه يجب أن تكون الأفاتار قد تم تحويلها في لعبة تم تمكين SLIM لها قبل أن تظهر كـ SLIM. إذا لم يتم عرض الأفاتار كـ SLIM في اختبارك الأول، انضم مرة أخرى إلى اللعبة بعد لحظة للسماح بإكمال التحويل.

القيود

القيودالتفاصيل
يتطلب البثيعمل SLIM فقط مع تعيين StreamingEnabled إلى true. بدون البث، تعود النماذج المؤهلة لـ SLIM إلى عرض مستوى التفاصيل التقليدي.
نماذج ثابتة فقطلا يدعم نموذج SLIM النماذج المعدلة أثناء وقت التشغيل (إضافة/إزالة أجزاء، تغيير الخصائص) أو النماذج التي تلعب الرسوم المتحركة.
عناصر إنسانيةيستبعد المحرك النماذج التي تحتوي على Humanoid من معالجة نموذج SLIM الثابت. استخدم أفاتار SLIM لشخصيات اللاعبين المتحركة.
قيود الأفاتارتدعم أفاتار SLIM فقط شخصيات اللاعبين R15. تعود هياكل R6، NPCs، والأفاتار ذات النسب المخصصة إلى العرض الافتراضي.
اعتماد على السحابةتقوم الخدمة السحابية بإنشاء وتخزين أصول SLIM على CDN. لا ينتج الاختبار غير المتصل أو المحلي بدون مكان منشور نتائج SLIM.
نماذج ذات مقياس صفريستبعد المحرك النماذج التي تحتوي على Scale من SLIM.
توفر المنصةعلى المنصات التي لا يدعم فيها SLIM بعد، تعود النماذج المعينة إلى Disabled.

استكشاف الأخطاء وإصلاحها

  • تحقق من أن StreamingEnabled هو true.
  • تأكد من أن المكان منشور على Roblox وأن Team Create مفعل.
  • تحقق من أن LevelOfDetail تم تعيينه إلى SLIM للنموذج.
  • انتظر 1-2 دقيقة بعد أول نشر لإكمال تحويل السحابة، ثم انضم مرة أخرى.
  • تأكد من أن النموذج لا يحتوي على عنصر Humanoid.

قد لا تعرض عناصر PartOperation الخاصة بـ النمذجة الصلبة (الاتحادات، التقاطعات، النفي) بشكل صحيح في بعض نماذج SLIM. إذا بدا أن اتحادًا مفقودًا أو مشوهًا في تمثيل SLIM، حاول فصل PartOperation المتأثر إلى نموذج خاص به أو تبسيط عملية CSG.

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

  • قم بتحريك الأجزاء المتداخلة قليلاً بعيدًا (حتى 0.01 وحدات كافية).
  • تجنب الأسطح المتطابقة تمامًا بين الأجزاء المجاورة في نفس النموذج.

يعيد SLIM إنشاء خرائط UV (كيفية عرض القوام على الأسطح ثلاثية الأبعاد) أثناء التحويل. قد تظهر المواد الافتراضية في Roblox أنماط تكرار مختلفة قليلاً مقارنة بالأصل. للتخفيف من ذلك:

  • استخدم قوامًا مخصصًا عبر SurfaceAppearance للأسطح المهمة.
  • قم بتجميع الأجزاء ذات الصلة بصريًا في نفس النموذج لضمان تلوين متسق.

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

قد تشير لوحة إحصائيات العرض إلى أعداد مثلثات غير صحيحة عند تمكين أفاتار SLIM. هذه مشكلة معروفة في الإبلاغ ولا تؤثر على أداء العرض الفعلي.

©2026 شركة Roblox Corporation. تُعد منصّة Roblox، وشعار Roblox وشعار "توسيع حدود المخيلة"، من ضمن علاماتنا التجارية المسجّلة وغير المسجّلة في الولايات المتحدة وبلدان أخرى.