Studio / ROBLOX
أول إضاءة نهارية في Roblox Studio: المصابيح والجو ووضوح الطريق
خطط لمشهد تدريبي صغير، وافصل الإضاءة العامة عن المصادر المحلية، ثم قارن وضوح الطريق بتغيير واحد في كل مرة. الأرقام المقترحة نقاط بداية لفحوص لاحقة وليست نتائج مقاسة.
1. أعط الإضاءة مهمة واضحة #
الهدف الأول طريق مفهوم: يرى اللاعب حافة العائق، ويفهم كيف يلتف حوله، ويتعرف على النهاية. ابدأ بمشهد نهاري دون زخارف معقدة. اكتب ثلاثة أسئلة: أين تبدأ الحركة، وما الذي يمنع المرور المباشر، وأي جسم يدل على النهاية؟ ينبغي أن تساعد الإضاءة على الإجابة من مسافة الكاميرا المعتادة، لا من صورة مكبرة بعناية داخل المحرر فقط. حدد ما تريد ملاحظته قبل اختيار المظهر الجميل للسماء.
هذا تخطيط لنموذج تدريبي مستقل، والأرقام المقترحة تحتاج إلى ملاحظة لاحقاً. لا تنقلها كما هي إلى مستوى كبير. إذا كانت النهاية معروفة باللون وحده فأضف شكلاً مميزاً، مثل عمود طويل له رأس عريض. وإذا اندمج العائق مع الأرض، فافصل أولاً الشكل والخامة. يصبح تقييم الضوء أسهل عندما تشرح الهندسة الطريق، بدلاً من مطالبة اللاعب بتخمين ممر لا يراه.
2. جهز ثلاث نقاط فوق أرض بسيطة #
في place تدريبي منفصل جهز أرضاً مستوية وثلاثة أجسام مثبتة بأسماء Source وObstacle وFinish. الترتيب المقترح على محور واحد هو Source عند (-8, 6, 0)، وObstacle عند (0, 3, 0)، وFinish عند (10, 1, 0)، بوحدة studs. يمكن البدء بحجم عائق (2, 6, 6)، مع ترك أرض كافية على جانبيه للالتفاف. هذه الأبعاد تسهّل المقارنة ولا تحدد مخططاً إلزامياً للعبة كاملة.
اختر موضع مشاهدة من جهة Source وسجله. لا تحرك الكاميرا عشوائياً بين النسخ. انظر إلى مسار الالتفاف من الجانب أيضاً؛ فقد يحجب العائق علامة النهاية في المشاهدة المباشرة مهما كانت الإضاءة. استخدم خامات بسيطة معتمة وأشكالاً مختلفة ثم احتفظ بمرجعك. الرسم الأول يوضح الترتيب والالتفاف المقترح، ولا يحسب شدة الإضاءة ولا يعرض مشهداً جرى اختباره فعلياً في Studio.
3. استخدم إعدادات Lighting الحالية #
اختر Lighting في Explorer ثم افحص خصائصه في Properties. الاختيار الحالي للمظهر هو LightingStyle وله Realistic وSoft. نقترح Realistic للنسخة الأولى؛ إذا كان Soft أنسب لاتجاهك الفني، فسجل الاختيار وأعد المقارنة انطلاقاً منه. لا تبحث عن وصفة ضرورية عبر Technology؛ هذه الخاصية قديمة، وكذلك مسار Unified السابق ليس مدخل العمل الحالي الموصى به.
سجل PrioritizeLightingQuality بصورة منفصلة. يعبر عن تفضيل جودة الضوء القريب أو مسافة الرؤية حين تنخفض جودة العرض، ولا يضمن سرعة أعلى للعب. اترك قيمته الموجودة ثابتة في البداية. تحتاج التعليمات القديمة التي تذكر Future أو ShadowMap إلى تفسير قبل نقلها إلى الخصائص الحالية. يكفي في المشهد الأول اختيار نية بصرية واضحة والحفاظ على ظروف قابلة للمقارنة، بدلاً من البحث عن توليفة سرية أو تغيير عشرات الخيارات دون سؤال محدد.
4. اضبط الوقت وثبّت ظروف الشمس #
اقترح ClockTime = 13 في Lighting كبداية نهارية. افحص TimeOfDay المرتبط به؛ ينبغي أن يقابل 13:00:00. كلاهما وصف لوقت المشهد وليس ساعة حاسوبك. الوقت لا يتقدم تلقائياً؛ دورة الليل والنهار تحتاج إلى آلية منفصلة لا يتضمنها هذا التدريب. بعد التأكد من القيمة راقب جهة العائق التي تصلها الإضاءة وموضع المساحة الداكنة.
سجل GeographicLatitude ولا تغيّره بالتزامن مع الوقت، لأنه يؤثر أيضاً في موضع الشمس. يمكنك في مقارنة لاحقة اقتراح ClockTime = 16 مع ثبات الباقي. قيّم وضوح الحافة بدلاً من إعلان ساعة مثالية لكل الألعاب. أعد الوقت الأصلي بعد المقارنة كي تتعلق الخطوات التالية بالمشهد نفسه. من دون هذه العودة قد تنسب تغيراً في الصورة إلى المصباح بينما تغيرت الشمس في الوقت ذاته.
5. سجل خط الأساس العام #
الجدول الأول يقترح إعدادات بداية ولا يقدم قياسات. تتعلق Lighting.Brightness بالشمس والقمر العامين، بينما الخاصية بالاسم نفسه في المصباح تتعلق بذلك المصباح. توفر ExposureCompensation = 0 مرجعاً واضحاً. سجل المؤثرات الموجودة أيضاً، ولا تضف تمويهاً أو توهجاً أثناء التقييم الأول للطريق كي لا تختلط عدة أسباب في ملاحظة واحدة.
يساعد Ambient في المناطق المحجوبة عن السماء، بينما يتعلق OutdoorAmbient بالمناطق المفتوحة عند تفعيل الظلال العامة. يبقي زوج الرمادي المقترح الثاني أفتح من الأول. تعني RGB هنا أرقام حقل اللون لا صيغة Color3 العشرية داخل كود. إذا تحول المشهد إلى بقعة فاتحة، فارجع إلى المرجع وقارن الخامات. رفع السطوع والتعريض والإضاءة المحيطة معاً يجعل تفسير اختفاء التفاصيل صعباً. احتفظ بسجل قصير لاستعادة الحالة السابقة دون الاعتماد على الذاكرة.
| الجسم / الخاصية | البداية المقترحة | سبب التسجيل |
|---|---|---|
| Lighting.LightingStyle | Realistic | أسلوب النسخة المرجعية |
| Lighting.ClockTime / TimeOfDay | 13 / 13:00:00 | وقت واحد للمشهد |
| Lighting.Brightness | 2 | سطوع عام قابل للمقارنة |
| Lighting.ExposureCompensation | 0 | تعريض مرجعي |
| Lighting.Ambient | RGB (70, 70, 70) | إضاءة المناطق المحجوبة |
| Lighting.OutdoorAmbient | RGB (125, 125, 125) | إضاءة المناطق المفتوحة |
| Lighting.GlobalShadows | true | شرط الظلال العامة |
| PointLight | Brightness 1.5; Range 12; Enabled true; Shadows true | مصدر محلي واحد |
| Atmosphere (إذا كان موجوداً) | Density 0; Haze 0; Glare 0 | مرجع جوي واضح |
6. أضف PointLight واحداً #
جهز Attachment عند نقطة الإضاءة المطلوبة في Source ثم أضف داخله PointLight، مع إبقاء هذه البنية داخل Workspace. اختر المصدر نفسه في Explorer. البداية المقترحة هي Enabled = true وBrightness = 1.5 وRange = 12 ولون أبيض وShadows = true. يضيء PointLight حول نقطة، ولذلك يناسب مصباحاً تدريبياً بسيطاً دون حزمة اتجاهية.
قارن أولاً بين تشغيله وإيقافه من الموضع نفسه. قد تكون مساهمته صغيرة نهاراً؛ هذه الملاحظة وحدها لا تثبت تعطل المصدر. يحدد Range المسافة بوحدة studs، وزيادة Brightness لا توسعها. في ترتيبنا تقع Finish أبعد من Source من نصف القطر المقترح، فلا تتوقع إضاءة الطريق كله بهذا المصباح. إذا احتجت مدى آخر فغيّر Range وحده وسجل ما تراه، دون نقل المصدر في التجربة نفسها.
7. قارن البدائل الاتجاهية #
لنسخة أخرى أوقف PointLight وأضف SpotLight مباشرة داخل BasePart للجسم Source. يوجه الضوء داخل مخروط؛ نقترح Angle = 60 وRange = 12 كبداية. هنا تختار Face جانب Source، فافحصه واتجاه القطعة. عند وضعه بصورة منفصلة داخل Attachment تختار Face محوره، ولذلك يجب فحص اتجاه Attachment أيضاً. لا تعوض بالسطوع قبل التأكد من أن المصباح يواجه الطريق فعلاً؛ المصدر القوي الذي يشير إلى الجانب لا يجيب عن مشكلة الاتجاه.
جرّب SurfaceLight بصورة منفصلة على لوحة مستوية: أضفه داخل BasePart للوحة واختر Face المناسبة. في هذا الترتيب ينبعث الضوء من سطح وليس من نقطة واحدة. تسمح API أيضاً بوضعه داخل Attachment، حيث يشبه السلوك SpotLight، لكن احتفظ باللوحة في التدريب. افحص البدائل بالتتابع مع مصدر واحد نشط. تشغيل الأنواع الثلاثة معاً يصعب تفسير أيها كشف حافة العائق وأيها أضاف مجرد بقعة ساطعة.
8. افصل خامة Neon عن مصدر الضوء #
قد تجعل خامة Neon علامة النهاية تبدو مضيئة، لكنها وحدها لا تنير الأرض المجاورة مثل PointLight. قارن بصورة مستقلة خامة Finish العادية ثم Neon دون تغيير المصباح. راقب العلامة والسطح القريب معاً. المظهر المتوهج والإضاءة المحلية الفعلية مهمتان مختلفتان؛ تحتاج الثانية إلى مصدر مناسب، وليس فقط إلى تبديل الخامة.
لا تجعل العلامة اللافتة بديلاً لفحص حافة خطرة. ينبغي أن يعرف اللاعب العائق والالتفاف حتى إذا ظهر التوهج الزخرفي أضعف على جهاز آخر. إذا أردت لوحة مضيئة تنير محيطها، فخطط لخامة اللوحة ولمصباحها بصورة منفصلة. اكتب الغرضين: التعرف على النهاية ورؤية جزء من الأرض. يساعد هذا الاتفاق على تغيير الفن لاحقاً مع الحفاظ على الاتجاه، دون اعتبار صورة جميلة دليلاً على أن الطريق مفهوم.
9. أضف Atmosphere بعد وضوح المسار #
إذا احتوى Lighting على Atmosphere، فنقترح Density = 0 وHaze = 0 وGlare = 0 كمرجع واضح. سجل خصائصه الأخرى واتركها ثابتة أولاً. بعد ذلك جرب Density = 0.2 في مقارنة مستقلة. راقب هل تظل Finish مميزة وهل يندمج الجزء البعيد بالخلفية. تحدد هذه الأرقام ظروف فحص لاحق ولا تضمن الرؤية؛ لا تملأ نتيجة قبل النظر إلى مشهدك فعلياً.
يؤثر Density في حجب الأجسام بالجو وHaze في الضباب الجوي؛ لا يحل أي منهما محل Range للمصباح. عند وجود Atmosphere داخل Lighting تُخفى خصائص Fog المعتادة، فلا توجد هنا معادلة عامة لتحويل Density إلى FogEnd. لا تخلط المسارين حسب وصفات عشوائية. لا تحتاج النسخة الأولى إلى عمل معقد مع Glare وDecay. إذا أخفى الجو ممراً ضرورياً فقلل تأثيره أو عدل المعالم قبل إضافة مصابيح أشد سطوعاً باستمرار.
10. قيّم الرؤية من موضع اللاعب #
ارجع إلى موضع المشاهدة المسجل من جهة Source، ثم اتبع الالتفاف المخطط وانظر إلى Finish. افصل ثلاث ملاحظات: الهندسة تحجب العلامة، الحافة مظلمة جداً، أو الشكل البعيد يختفي في الجو. تقود كل ملاحظة إلى مقارنة مختلفة. تحتاج العلامة المحجوبة غالباً إلى ارتفاع أو موضع آخر، لا إلى ضوء أقوى خلف جدار. حدد الظاهرة قبل اختيار الخاصية التالية.
خطط لاحقاً لفحص بجودة عرض أقل وعلى هاتف فعلي. لا تخزن إرشاداً ضرورياً في ظل دقيق وحده، لأن تفاصيل العرض قد تختلف. اسأل هل الاتجاه مفهوم بدلاً من مطالبة كل بكسل بالتطابق. إذا اختلف المحرر عن جلسة اللعب، فسجل الخصائص الحالية وافحص هل يغيرها منطق المشروع. لا يثبت منظر واحد للنموذج سلوك كل مشاهد Roblox أو الأجهزة، كما لا يمثل حكم الوضوح قياساً عاماً للأداء.
11. قارن دون اختراع النتائج #
يترك الجدول الثاني النتائج الفعلية فارغة. قبل كل سطر أعد خط الأساس وغيّر فقط الخاصية أو البديل المحدد. يكفي لتقرير قصير تاريخ وموضع كاميرا وملاحظة وخطوة تالية. بدلاً من «أصلحت الضوء» اكتب وصفاً محدداً مثل رؤية الحافة اليسرى من المدخل والتعرف على العلامة بعد الالتفاف، ولكن بعد إجراء الفحص فعلاً فقط.
إذا ظهر التحسن من زاوية جديدة وحدها، فسجل حركة الكاميرا بشكل مستقل. لا تنسبه إلى إعداد تغير في اللحظة نفسها. عند فحص شخص آخر، اطلب إيجاد النهاية دون تلميح شفهي وسجل مواضع التردد. لا يستبدل النظر إلى الرسم أو مرجع المحرر اختباراً لاحقاً على جهاز. يبقى السطر غير المنفذ فارغاً، وتنحصر الخلاصة في الظروف التي شوهدت فعلاً بدلاً من ضمان سلامة اللعبة بأكملها.
| النسخة | تغيير واحد عن المرجع | سؤال الفحص | النتيجة الفعلية |
|---|---|---|---|
| A | لا تغيير: الظروف المرجعية | هل تظهر الحافة ويُفهم الالتفاف؟ | |
| B | PointLight.Enabled = false | أي منطقة اعتمدت على المصباح؟ | |
| C | PointLight.Range = 20 | ما الذي يتغير مع السطوع نفسه؟ | |
| D | مصباح بديل واحد | إلى أين يتجه SpotLight / SurfaceLight؟ | |
| E | Atmosphere.Density = 0.2 | هل تتميز Finish من الموضع نفسه؟ | |
| F | جهاز آخر أو جودة أخرى | هل الطريق واضح ضمن الظروف المسجلة؟ |
12. احفظ المشهد وسلم سجلاً واضحاً #
احفظ place التدريبي بصورة منفصلة وسجل النسخة: مواقع الأجسام الثلاثة والوقت والأسلوب والمصدر النشط وإعدادات Atmosphere. عند فتحه لاحقاً افحص الحالة، بما فيها TimeOfDay، قبل استكمال المقارنة. حفظ المشروع ونشر التجربة وفحص عميل اللعب مراحل منفصلة. لا يتطلب الدرس النشر الفوري لمجرد البدء في إعداد أول إضاءة نهارية.
قدم لمطور آخر هدف الطريق وخط الأساس والتغيير الواحد والملاحظة الفعلية إن وجدت. حدد الفحوص التي لم تنفذ بعد. اختر المهمة التالية بحسب المشكلة: وضوح الطريق أو اختبار المستوى أو مقارنة الجهاز. لا تقدم الأرقام المقترحة كمعيار لكل المشاهد ولا تنقل مخططاً غير مفحوص إلى لعبة نهائية دون تقييم. النتيجة الأولى المفيدة خطة قابلة للتكرار وطريق واضح يمكن فحص خصائصه بالتتابع وتطويره اعتماداً على ملاحظات محددة.
المصادر الأصلية
Roblox Creator Hub — Global lighting and current style controlsRoblox Creator Hub — Lighting API
Roblox Creator Hub — Technology deprecation
Roblox Creator Hub — LightingStyle options
Roblox Creator Hub — Local light sources
Roblox Creator Hub — PointLight range
Roblox Creator Hub — SpotLight direction and angle
Roblox Creator Hub — SurfaceLight parenting and emission
Roblox Creator Hub — Atmospheric effects
Roblox Creator Hub — Atmosphere and Fog interaction
Roblox Creator Hub — Neon appearance and separate illumination