آخر الأخبار
دليل استيراد محتوى Datasmith وتحديثه في Unreal EngineGround of Descent: مقترح لمركز فني ينزل إلى باطن الأرض في بورغاسإنشاء تأثير Fresnel قابل لإعادة الاستخدام باستخدام Material Function في Unreal Engineتحويل Mesh وVolume في Blender: إعدادات voxel والدقةإعداد الرسومات المعمارية وتصديرها إلى PDF باستخدام Make2D في Rhino 8صدور Substance 3D Painter 12.2: تجديد الطلاء على القفص وأدوات التحديدإنشاء منحنيات المقاطع باستخدام أمري Contour وSection في Rhino 8توسعة متحف باس: Johnston Marklee تصمم صالات عرض مرتفعةدليل نمذجة التضاريس في Vectorworks 2025: خطوط الكنتور والمواد والنباتاتMistral وNVIDIA تربطان الذكاء الاصطناعي الفيزيائي بمحاكاة الهندسة
دروس تعليميةUnreal Engine

إنشاء تأثير Fresnel قابل لإعادة الاستخدام باستخدام Material Function في Unreal Engine

في هذا الدليل، ننشئ تأثير Fresnel قابلًا للضبط باستخدام بنية Material Function في Unreal Engine، ونتعلم استخدامه في عدة مواد ونشره في المكتبة.

إضاءات ناعمة تبرز حواف الأسطح في مساحة داخلية معاصرةصورة بالذكاء الاصطناعي
صورة تعبيرية مولّدة بالذكاء الاصطناعي.الصورة: 3dsınıfı / FCA AI

باختصار

  1. تتيح Material Function إعادة استخدام شبكة من عقد المواد باعتبارها أصلًا مستقلًا.
  2. تتحكم وظيفة Fresnel في المثال بالتأثير المعتمد على زاوية الرؤية عبر مدخلَي الأس والتحكم في الشدة.
  3. تسمح عقدتا Function Input وFunction Output للوظيفة باستقبال البيانات من الخارج وإخراج النتيجة.
  4. قد تؤثر التعديلات على Material Function موجودة في المواد التي تستخدمها.

ما الذي ستتعلمه في هذا الدليل؟

بدلًا من إنشاء شبكة العقد نفسها مرارًا في مواد مختلفة في Unreal Engine، يمكنك جمعها داخل Material Function. وبذلك يمكن استخدام جزء معقد من الشبكة على شكل استدعاء وظيفة واحد يُضاف إلى مواد أخرى. سنتبع مثال Fresnel من Epic Games لإنشاء تأثير يبرز عند الحواف، ويمكن ضبط شدته وطريقة تلاشيه.

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

المتطلبات

أُعد شرح Fresnel خطوة بخطوة في المصادر لـ Unreal Engine 4، وهو وارد في صفحة توثيق الإصدار 4.27. لذلك، عُرضت أسماء القوائم وواجهة المثال وفقًا لهذا الدليل. ولا تذكر المصادر أي متطلبات لإنشاء حساب أو شروطًا للأجهزة أو سعرًا للمنتج.

يتطلب سير العمل استخدام Content Browser وMaterial Editor، وإنشاء Material Function وMaterial. والعقد المستخدمة في المثال هي: Constant 3 Vector وTransform وCamera Vector WS وDot Product وClamp وOneMinus وPower وMultiply. ولجعل الوظيفة قابلة للضبط، سنستخدم عقدتَي Function Input، كما سنستخدم Function Output لإخراج النتيجة.

إنشاء Material Function لتأثير Fresnel خطوة بخطوة

  1. أنشئ أصل الوظيفة. انقر بزر الفأرة الأيمن في Content Browser، ثم اختر New > Materials & Textures > Material Function. امنح الوظيفة اسمًا يوضح ما تفعله. والاسم Custom_Fresnel المستخدم في المثال يوضح وظيفة العنصر.

  2. أنشئ الجزء الأول من حساب الزاوية. افتح Material Function وأضف عقد Constant 3 Vector وTransform وCamera Vector WS وDot Product إلى المخطط. اضبط القناة الزرقاء في عقدة Constant 3 Vector على 1,0. صِل مخرج هذه العقدة بمدخل Transform، واضبط عقدة Transform لتحويل Tangent Space إلى World Space. صِل مخرج التحويل بمدخل A في عقدة Dot Product، ومخرج Camera Vector WS بمدخل B. يستخدم هذا الحساب العلاقة بين اتجاه السطح واتجاه الكاميرا.

  3. قيّد النتيجة واستخرج تأثير الحواف. صِل مخرج Dot Product بعقدة Clamp، وأبقِ القيمة ضمن النطاق من 0 إلى 1. بعد ذلك، صِل مخرج Clamp بعقدة OneMinus. تعكس هذه العملية القيمة التي ستُمرر إلى المرحلة التالية، وتساعد على إبراز التأثير عند الحواف كما في المثال.

  4. عرّف مدخلات ضبط الوظيفة. أضف عقدتَي Function Input. سمِّ إحداهما Fresnel Exponent والأخرى Fresnel Intensity؛ ويمكن لحقول الوصف أن توضح للمستخدم ما الذي يتحكم فيه كل مدخل. اضبط نوع كلتا العقدتين على Scalar. تتيح عقد Function Input للوظيفة استقبال قيم من الخارج، ويمكن توصيل هذه القيم لاحقًا في المادة التي تستخدم الوظيفة.

  5. صِل التحكم الأسي والشدة. أضف عقدتَي Power وMultiply. صِل مخرج OneMinus بمدخل Base في عقدة Power، ومدخل Fresnel Exponent بمدخل Exp. صِل مخرج Power بمدخل A في عقدة Multiply، ومدخل Fresnel Intensity بمدخل B. وبذلك تتحكم قيمة الأس في توزيع تأثير الحواف، بينما تتحكم قيمة الشدة في مستوى التأثير.

  6. عرّف المخرج ثم قم بالترجمة البرمجية. صِل مخرج Multiply بعقدة Function Output. ثم اضغط Apply في شريط الأدوات لترجمة Material Function برمجيًا. يذكر الدليل المصدر أن زر Apply يصبح غير نشط عند نجاح الترجمة. إذا ظهر خطأ، فتحقق أولًا من التوصيلات وأنواع المدخلات.

  7. اختبر الوظيفة في مادة. أنشئ Material جديدة وافتحها من Content Browser، ثم أضف وظيفة Custom_Fresnel إلى المخطط. يمكنك توصيل عقدة Constant 3 Vector، كما في المثال، بمدخل Base Color واستخدام اللون الأحمر: R 1,0؛ G 0؛ B 0. استخدم أربع عقد Scalar Parameter للإعدادات الأخرى، إلى جانب اللون الأساسي في المثال. اضبط Metallic على 1,0 وRoughness على 0,5؛ وFresnel Intensity على 1,0 وFresnel Exponent على 5,0. صِل مخرج الوظيفة بمدخل Emissive Color في المادة، ثم قم بترجمتها برمجيًا. هذه القيم إعدادات بدء للمثال، ويمكن تغييرها للحصول على نتائج مرئية مختلفة.

  8. انشر الوظيفة في المكتبة اختياريًا. انقر في مساحة فارغة في مخطط Material Function لإلغاء تحديد العقد؛ وستظهر الخصائص الأساسية للوظيفة في لوحة Details. فعّل خيار Expose to Library، وأضف وصفًا وحدد الفئات المناسبة. وهكذا يمكن إدراج الوظيفة في Material Function Library داخل Material Editor. وقد يلزم إعادة تشغيل المحرر حتى تظهر الوظيفة الجديدة.

أخطاء شائعة

أول ما ينبغي التحقق منه هو توصيلات المدخلات والمخرجات: يجب أن تستقبل الوظيفة القيم عبر عقد Function Input، وأن تُخرج النتيجة المحسوبة عبر Function Output. ويجب أن تكون البيانات المتصلة باستدعاء الوظيفة متوافقة مع النوع المتوقع؛ فمثلًا، قد يؤدي توصيل نوع غير مناسب بمدخل يتوقع Scalar إلى خطأ في الترجمة البرمجية. لمعاينة نتيجة وسيطة للوظيفة، انقر بزر الفأرة الأيمن على عقدة واختر Start Previewing Node لمعاينة الشبكة حتى تلك النقطة.

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

ما الفائدة في سير عمل العمارة والتصور المعماري؟

إذا تكررت تأثيرات متشابهة على الأسطح في مواد مختلفة ضمن التصور المعماري، فإن نقل شبكة العقد المشتركة إلى Material Function قد يسهل تنظيمها وصيانتها. وعند تعديل الحساب المشترك داخل الوظيفة، تقل الحاجة إلى تحديث عدد كبير من المخططات المنسوخة واحدًا تلو الآخر. ويمكن تجربة إبراز الحواف بصريًا، ولا سيما عند الرغبة في جعل الصورة الظلية لنموذج أكثر وضوحًا. لكن المصادر لا تقدم معلومات عن أداء الوظيفة في التصيير المعماري أو متطلبات الأجهزة أو التوافق مع إصدارات Unreal Engine المختلفة. لذا ينبغي للمكاتب اختبارها أولًا باستخدام الإصدار الحالي وبنية المواد لديها، ثم اعتماد الوظائف المشتركة بطريقة منضبطة.

الخطوات التالية

في تجربتك الأولى، غيّر قيمتي Intensity وExponent ولاحظ كيف تتغير النتيجة على السطح؛ ثم أضف الوظيفة نفسها إلى عدة مواد لترى كيف يعمل استخدامها المشترك من ناحية الصيانة. وإضافة اسم توضيحي ووصف للمدخلات ووصف موجز للمكتبة إلى الوظائف التي ستُشارك داخل الفريق تسهل العثور على الوظيفة المناسبة. وعند تحويل شبكات مواد أخرى إلى وظائف، اجعل المدخلات والمخرجات واضحة أيضًا؛ إذ ينبغي أن تكون شبكة العقد المخفية داخل الوظيفة قابلة للاستخدام عبر واجهة مفهومة من الخارج.

المصدر والترخيص

أُعد هذا الدليل بتكييف تركي استنادًا إلى المعلومات الواردة في وثائق Epic Games بعنوان Material Functions Overview وMaking Material Functions وCreating Material Functions. وتُتاح صفحات المصادر بموجب ترخيص حر؛ ويستند سير عمل Fresnel الوارد في المثال إلى وثائق Unreal Engine 4.27.

المصادر

3 مصادر
D
dev.epicgames.comdev.epicgames.com/documentation/unreal-engine/unreal-engine-material-functions-overview
ملخص
D
dev.epicgames.comdev.epicgames.com/documentation/unreal-engine/making-material-functions
ملخص
D
dev.epicgames.comdev.epicgames.com/documentation/unreal-engine/creating-material-functions
ملخص

لا نعيد نشر نصوص المصادر؛ الاقتباسات القصيرة مشار إليها، وما تبقى ملخص وتعليق من إعدادنا.

رأي 3dsınıfı
3dتقييم المحرر

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

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

الأسئلة الشائعة

ما وظيفة Material Function في Unreal Engine؟

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

ما القيم التي يمكن ضبطها في Material Function لتأثير Fresnel؟

في هذا المثال، يتحكم Fresnel Exponent في توزيع التأثير، بينما يتحكم Fresnel Intensity في شدته. وقيمتا البدء المذكورتان في المادة هما 5,0 و1,0 على التوالي.

كيف تظهر Material Function في المكتبة؟

يجب تفعيل خيار Expose to Library ضمن الخصائص الأساسية للوظيفة وتحديد فئاتها. وقد يلزم إعادة تشغيل المحرر حتى تظهر الوظيفة الجديدة في القائمة.

التعليقات والمنتدى باللغة التركية.شارك في النقاش
+

أخبار ذات صلة