الشبكة العربية لمطوري الألعاب

خبير مدير همام البهنسي مشاركة 1

السلام عليكم...

الفكرة التالية تطبيق لمؤثر رسومي جذاب قرأته في مقالة علمية في موقع inframez حول طريقة بسيطة لرسم المجسمات وكأنها مصورة بأشعة اكس الطبية.



عنوان المقالة: X-tasy (ecstasy) with Real-Time Shaders
المؤلف: همام البهنسي
الرابط للمقالة: http://www.inframez.com/papers/xsi_rtshaders2.htm

سأقوم بتطبيق هذه المقالة ضمن مشهد مميز وشرح آلية العمل كاملة في المشاركات القادمة ان شاء الله... أتمنى أن تنال اعجابكم!
(طبعاً هذه من الحالات الاستثنائية المقبولة لأن المؤلف هو نفسه المتسابق والذي لن يدخل في المسابقة أصلاً)

خبير مدير همام البهنسي مشاركة 2

السلام عليكم...

فيما يلي بعض نتائج تطبيق المؤثر المقترح في المقالة مع بعض الإضافات الخاصة بي التي أستمتع بها!

لقطة بعد تطبيق المؤثر:




لقطة للمشهد الأصلي:




المجسم المستخدم في هذا المشهد هو مجسم جاهز قمت بتحميله منذ زمن طويل نسبياً من الانترنت. كل ماقمت بعمله هنا هو فقط معايرة وضعية جسم الـ Trex وإضافة الكاميرا بوضعية مثيرة في المشهد وبالطبع تطبيق المؤثر المطلوب!
في المشاركة التالية بإذن الله سأبدأ بشرح خطوات العمل المتبعة ضمن الـ XSI للوصول لهذه المؤثر.

خبير مدير همام البهنسي مشاركة 3

السلام عليكم...

الخطوات التالية تلخص المراحل اللازمة لتطبيق التأثير بالشكل الظاهر في اللقطات المعروضة ضمن برنامج الـ Softimage|XSI:

هذا الدرس يفترض معرفة عامة ومبسطة بأساسيات البرنامج.

1- الخطوة الأولى التي سنبدأ بها هي بالطبع إضافة مادة جديدة للمجسم المطلوب تطبيق التأثير عليه. يمكننا القيام بهذه الخطوة ببساطة باختيار المجسم ثم اختيار أي مادة لا على التعيين من قائمة الـ Materials.




2- الآن نحن بحاجة لاستعداء الـ RenderTree للبدء بإضافة العقد المناسبة لبناء شجرية التأثير المطلوب. لاستدعاء الـ RenderTree يمكننا استخدام الاختصار 7 على لوحة المفاتيح.




3- الآن علينا إضافة العقد المناسبة، سنبدأ أولاً بإضافة وشرح باختصار العقدة الأساسية المسؤولة عن الوصول لهذا التأثير والتي تسمى في الـ XSI بـ incidence. يمكننا الحصول على هذه العقدة من القائمة Nodes->Illumination في الـ RenderTree.



هذه العقدة في الحقيقة تمكننا من التحكم بطريقة تظليل السطوح من خلال عدد من الخيارات الموجودة في خصائصها (لعرض نافذة الخصائص يمكنك الضغط المزدوج على العقدة).



إذا استعرضنا قائمة الخيارات بشكل سريع نلاحظ كيف أنه يمكننا الاختيار مثلاً (Surface/Lights) لتظليل المجسمات بناء على إضاءة المشهد وتوضع السطوح المظللة أو بشكل علمي أكثر: بناءً على الزاوية المحصورة بين متجه الضوء (Light Vector) ومتجه العامد على السطح (Normal Vector)، والتي باختصار في النهاية تعطي نتيجة مماثلة للمظلل المعروف Lambert.
أو يمكن اختيار (Surface/Camera) الذي يقوم بالتظليل بناءً على توضع الكاميرا وسطح المجسم. هذا الخيار يجعل تظليل السطوح متدرج بشكل عام من اطراف المجسم باتجاه المركز كما تراه الكاميرا والذي يمكن بشيء من المعايرة الحصول على تأثير شبيه بما نراه في صور الـ x-ray الطبية.
 

4- لاختبار هذه العقدة قم بوصلها مباشرة في منفذ الـ surface في العقدة الرئيسية للـ Material ثم حدد نطاق لرندر ضمن أي منفذ عرض لديك لمعاينة نتيجة هذا المظلل. حاول أيضاً تغيير وضعية الكاميرا لتختبر آلية عمل هذا المظلل.



يتبع...

خبير مدير همام البهنسي مشاركة 4

5- الآن يمكنك معايرة القيم (Bias) و (Gain) أو نقلها من الصورة الموضحة للوصول للنتيجة التي تناسبك.



 
6- النقطة التالية التي يجب علينا العمل عليها الآن هو التحكم بالألوان الخاصة بهذا المظلل. لاحظنا كيف أن النتيجة النهائية للـ (incidence) هي فقط تدريجات الأبيض والأسود ولا يوجد للأسف ضمن خصائص المظلل أي خيارات لتعديل هذه الألوان. لمعالجة هذه النقطة الأمر بسيط، كل ما نحتاجه هنا هو عقدة إضافية (mix2colors) والتي نجدها ضمن قائمة (Nodes->Mixers) في (RenderTree). الآن علينا إعادة توصيل العقد كما هو ظاهر في الصورة.



بهذه الطريقة جعلنا مظلل الـ incidence يقوم بتحديد القيم اللونية المحددة في Mix 2 Colors كما هو مطلوب تماماً.
 

7- إلى هنا يعتبر الجزء الأساسي من التأثير منتهي، ولكن لإغناء المشهد من الممكن إضافة عقدة (Fractal) ومعايرتها بعد ربطها بالطبع على (mix 2 color) كما هو موضح في الصورة.




8- أخيراً، لابأس من إضافة تأثير (Glow) على المجسم من القائمة (Property->Glow) لاعطاء الأخ Trex احساس درامي جميل!




هذه هي باختصار الخطوات الرئيسية وراء النتائج تطبيق التأثير المقترح.
أتنمى أن يكون مفيد!