باختصار
- VSM طريقة ظلال عالية الدقة في Unreal Engine 5، صُممت للاستخدام مع Nanite وLumen وWorld Partition.
- تُستخدم VSM افتراضيًا في المشاريع الجديدة؛ أما المشاريع التي أُنشئت قبل Unreal Engine 5.0 فيجب تفعيلها فيها على نحو منفصل.
- تقسّم VSM خرائط الظلال إلى صفحات بحجم 128 × 128 بكسل، وتنشئ الصفحات المطلوبة على الشاشة وتخزّنها مؤقتًا بين الإطارات.
- يمكن التحكم في مظهر الظلال الناعمة عبر Source Radius في الأضواء الموضعية، وSource Angle في Directional Light.
ما الذي ستتعلمه في هذا الدليل؟
Virtual Shadow Maps (VSM) هي طريقة لخرائط الظلال تُستخدم في Unreal Engine لإنتاج ظلال عالية الدقة وغنية بالتفاصيل. ووفقًا لوثائق Epic، يستهدف النظام ظلالًا تلائم مستوى تفاصيل هندسة Nanite، إلى جانب إعداد أبسط. في هذا الدليل، نستعرض خطوة بخطوة الحالات التي تكون فيها VSM مناسبة، وكيفية تفعيلها في المشروع، وتأثير مصادر الضوء في خصائص الظلال.
VSM ليست خيار جودة مستقلًا يجعل الظلال «أفضل» بمفرده. ينبغي تقييم النتيجة بالاقتران مع حركة الأضواء، والهندسة في المشهد، ومدى الظل، وحجم مصدر الضوء، وإعدادات المشروع. لذلك، راقب الصورة وأداء التشغيل معًا أثناء تطبيق الخطوات.
المتطلبات وحالات الاستخدام المناسبة
يتناول الدليل الرسمي VSM إلى جانب ميزات Nanite Virtualized Geometry وLumen Global Illumination and Reflections وWorld Partition في Unreal Engine 5. وقد صُممت VSM للاستخدام مع Nanite؛ فإذا كانت المنصة المستهدفة أو المشروع لا يستخدم Nanite، تشير Epic إلى أن هذه الطريقة قد لا تكون مناسبة. لذا ينبغي أن يكون القرار الأول هو تحديد ما إذا كان المشهد يستخدم Nanite.
يجب تفعيل VSM في المشاريع القديمة التي أُنشئت قبل Unreal Engine 5.0، إما من إعدادات المشروع أو باستخدام متغير وحدة التحكم r.Shadow.Virtual.Enable. أما المشاريع الجديدة فتستخدم VSM افتراضيًا. ولا تحدد المصادر بطاقة رسومات أو مستوى عتاد أو نوع حساب أو شرط شراء بعينه، لذا لا ينبغي افتراض وجود متطلبات من هذا النوع.
عند اختيار طريقة الظلال، خذ نوع الأضواء وحركتها في الحسبان أيضًا. إذ يؤثر تصنيف الأضواء في Unreal Engine إلى Static أو Stationary أو Movable في كيفية استخدام الظلال المحسوبة مسبقًا والظلال الآنية. وعند تفعيل VSM، تُحسب الإضاءة المباشرة والظلال للأضواء Stationary ديناميكيًا؛ أما الظلال المخبوزة بالكامل للأضواء الثابتة، فتظل مستمدة من خرائط الإضاءة عندما لا يكون Lumen مستخدمًا.
تفعيل VSM وإعدادها الأساسي
تحقق من طريقة الظلال في المشروع. ابحث عن خيار Shadow Map Method ضمن قسم Shadows في Engine > Rendering داخل Project Settings. ومن هنا، تأكد مما إذا كان المشروع يستخدم Virtual Shadow Maps أم طريقة Shadow Maps التقليدية المستخدمة في الإصدارات السابقة.
فعّل VSM في المشروع القديم. في المشاريع التي أُنشئت قبل Unreal Engine 5.0، اختر VSM من إعدادات المشروع نفسها أو استخدم متغير وحدة التحكم
r.Shadow.Virtual.Enableالمذكور في الوثائق. وتشير الوثائق إلى أن VSM هي الخيار الافتراضي في المشاريع الجديدة؛ ومع ذلك، تحقق من إعداد المشروع الحالي لتتأكد من طريقة الظلال المستخدمة في الاختبار.راجع استخدام Nanite ومحتوى المشهد. صُممت VSM للتعامل مع الهندسة عالية التفاصيل بالتوازي مع Nanite. وإذا كان المشروع يستخدم Nanite، فضع في الحسبان أن بعض الأساليب المستخدمة مع الأضواء Stationary في خرائط الظلال التقليدية غير مدعومة. ووفقًا لـ Epic، ينبغي استخدام Movable Lights أو VSM في المشاريع التي تتضمن Nanite.
اضبط حجم مصدر الضوء. يؤثر Source Radius في الأضواء النقطية وأضواء Spot، بينما يؤثر Source Angle في Directional Light، في نعومة الظلال. وتنتج زاوية المصدر أو نصف قطره الأكبر ظلالًا أنعم؛ لذا قيّم الصورة والأداء معًا عند زيادة هذه القيم. ليس للأضواء الموضعية قيمة Source Radius افتراضية، بينما تبدأ Directional Light بقيمة Source Angle منخفضة.
قارن سلوك الظلال داخل المشهد. راقب الأجسام القريبة والبعيدة والهندسة الرفيعة ونقاط التلامس من الكاميرا نفسها. تنشئ VSM صفحات الظلال وفق تحليل عمق البكسلات الظاهرة على الشاشة، وتخزّن الصفحات المطلوبة مؤقتًا بين الإطارات. وعند ظهور مناطق جديدة بسبب حركة الكاميرا، قد يلزم إنشاء صفحات لم تُستخدم من قبل.
تعرّف إلى SMRT عند تقييم جودة الظلال الناعمة. يستخدم Shadow Map Ray Tracing أخذ العينات مع VSM لإنتاج ظلال ناعمة أكثر واقعية وتدرّج في حدة الظل عند نقاط التلامس. وتعتمد الجودة على Source Radius في الأضواء الموضعية، وعلى Source Angle في Directional Light. وتوضح وثائق Epic أن عدد الأشعة الافتراضي للأضواء الموضعية وDirectional Light هو ثمانية عندما يكون مستوى Shadows مضبوطًا على Epic. ويمكن تقليل عدد الأشعة أو العينات باستخدام متغيرات وحدة التحكم؛ فقد يقلل خفض عدد العينات تكلفة الأداء، لكنه قد يحد من نعومة الظلال أو يُظهر ضوضاء في منطقة شبه الظل.
التأثير في سير عمل العمارة والتصميم الداخلي والتصور المعماري
يمكن استخدام VSM في التصور المعماري لتقييم اتساق الظلال في المشاهد التي تضم عناصر واجهات مفصلة وهندسة كثيفة وإضاءة آنية. وفي مشاهد التصميم الداخلي، ينبغي اختبار حجم مصدر الضوء ومظهر ظلال التلامس والمنطقة التي يغطيها الضوء معًا. ولا تحل هذه الطريقة محل النمذجة أو إعداد المواد، بل تعمل بالتكامل مع الإضاءة والهندسة في المشهد.
من المفيد للمكاتب ومشاريع الطلاب البدء بمشهد صغير ممثل وإجراء مقارنة: اختبر نموذجًا يستخدم Nanite مع VSM، ثم قارن ذلك بخيار Shadow Maps التقليدي عندما تسمح ظروف المشروع بذلك. ولأن المصادر لا تقدم توصيات محددة بشأن العتاد، يجب قياس الأداء على كل جهاز وفي كل مشهد. وافحص أيضًا تكلفة الأضواء ذات أنصاف الأقطار الكبيرة أو مناطق شبه الظل الناعمة جدًا وأثرها في الصورة. وإذا كان المشروع سيُفتح على أجهزة أخرى، فتأكد من اتساق اختيار طريقة الظلال في إعدادات المشروع.
أخطاء شائعة
اعتبار VSM الخيار الأنسب تلقائيًا لكل مشروع لا يستخدم Nanite. تشير Epic إلى أن VSM قد لا تكون مناسبة للأهداف التي لا تتضمن Nanite.
تقييم ظل الضوء باستخدام Source Radius أو Source Angle وحدهما. إذ تتأثر النتيجة بنوع الضوء والمنطقة التي يغطيها وهندسة المشهد.
خفض عدد أشعة SMRT أو عيناته من دون التحقق من الجودة. فقد يؤدي خفض عدد الأشعة إلى ظهور ضوضاء في منطقة شبه الظل، بينما يحد خفض عينات خريطة الظلال من مقدار النعومة الممكن تحقيقه.
استخدام قيم كبيرة جدًا لـ Source Radius أو Source Angle بلا حدود. تشير Epic إلى أن القيم المفرطة قد تؤثر في الأداء وتتسبب في تشوهات بصرية عندما تقترب الكاميرا من شبه ظل الظل.
افتراض أن الأضواء Stationary ستحافظ على سلوكها القديم للظلال كما هو عند تفعيل VSM. ففي هذه الحالة، تُحسب الإضاءة المباشرة والظلال ديناميكيًا.
الخطوات التالية
تحقق أولًا من إعداد المشروع واستخدام Nanite، ثم قارن خصائص الظلال بتغيير حجم المصدر مع تثبيت الكاميرا وترتيب الإضاءة. وعند تعديل الإعدادات لتحسين جودة الظلال، سجّل الفرق في الصورة والأداء معًا. وإذا احتجت إلى تحكم أدق، فراجع أقسام دليل VSM من Epic المتعلقة بمتغيرات عدد أشعة SMRT وعيناته. وضع في الحسبان أيضًا اختلاف بنية clipmap في المشاهد التي تستخدم أضواء اتجاهية لتغطية مساحات واسعة، عن تنظيم الخرائط المستخدم لكل ضوء في الأضواء الموضعية.
المصدر والترخيص
أُعد هذا الدليل بتكييف باللغة التركية عن صفحتي وثائق Epic Games «Virtual Shadow Maps in Unreal Engine» و«Shadowing in Unreal Engine». ويُشار إلى كلا المصدرين في قائمة المصادر على أنهما متاحان بترخيص حر.
المصادر
2 مصادرلا نعيد نشر نصوص المصادر؛ الاقتباسات القصيرة مشار إليها، وما تبقى ملخص وتعليق من إعدادنا.
تكمن القيمة العملية لـ VSM بالنسبة إلى مكاتب العمارة وفرق التصور في تركيا في تبسيط إعداد الظلال في المشاهد الآنية التي تستخدم Nanite، واستهداف نتائج متوافقة مع الهندسة عالية التفاصيل. لكن لا ينبغي اعتبار ذلك مكسبًا مباشرًا في الأداء في كل مشروع؛ فبنية المشهد وإعدادات الإضاءة والعتاد هي ما يحدد النتيجة.
ينبغي للطلاب والفرق الصغيرة إجراء اختبار أولي بمشهد نموذجي على أجهزتهم، مع تغيير قيم Source Radius وSource Angle تدريجيًا، خصوصًا عند ضبط الظلال الناعمة. ولا توضح المصادر رسوم الترخيص أو متطلبات العتاد؛ لذا من المهم التحقق، قبل تسليم المشروع، من توافق طريقة الظلال المستخدمة ومتطلبات Nanite مع بيئات العمل الأخرى لدى الفريق.
الأسئلة الشائعة
كيف يمكن تفعيل Virtual Shadow Maps في Unreal Engine؟
تحقق من خيار Shadow Map Method ضمن قسم Shadows في Engine > Rendering داخل Project Settings. يجب تفعيل VSM على نحو منفصل في المشاريع التي أُنشئت قبل Unreal Engine 5.0؛ أما المشاريع الجديدة فتستخدمها افتراضيًا.
هل يمكن استخدام Virtual Shadow Maps من دون Nanite؟
صُممت VSM للاستخدام مع Nanite. وتشير Epic إلى أن هذه الطريقة قد لا تكون مناسبة للمنصات أو المشاريع التي لا تستخدم Nanite.
ما الإعداد الذي يتحكم في نعومة ظلال VSM في Unreal Engine؟
يؤثر Source Radius في الأضواء الموضعية، وSource Angle في Directional Light، في نعومة الظلال. ويمكن أيضًا لإعدادات أخذ العينات في Shadow Map Ray Tracing أن تؤثر في الجودة وتكلفة الأداء.



