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

خبير  Hisham Kayali مشاركة 1

لقد قمت بتحميل بعض الادوات المجانية من موقع amd  ومنها برنامج RenderMonkey متخصص ببرمجة الshaders  و جاهز للتعامل مع
open gl و directx  
حملت ايضا مقبس للمايا اسمهASHLI shader مهمته استيراد الملفات بلاحقة *.fx بعد برمجتها بRenderMonkey
و لكني لم افهم مهمة هذا ال ASHLI shader بالضبط بالنسبة للمايا؟؟
و مالذي يميزه عن HLSL shader الذي يقوم بنفس المهمة بالضبط ؟ 

ها هي بعض المحاولات..
بعد استيراد ملف *.fx خاص بهذا المظلل اسم الملف 
PhongBumpHLSL.fx
و لكني لم أرى اين ال Bump بالضبط في هذا الشكل؟؟؟
هذه الصورة تظهر خصائص هذه المظلل و هو لا يتأثر بالاضاءة العادية 
يتم تغيير اتجاه استقباله للضوء من Light dir
باقي الارقام مفهومة....



عند تغير اتجاه الكاميرا تتحرك الالوان بطريقة غير منطقية على فرض اللون الازرق هو لون الضوء الذي يستقبله الجسم..





رندر للمشهد باستخدام المايا هاردوير حصراً.......... لم يتم التعرف عليه من قبل المصيرات الاخرى
و هذا  مماثل ل HLSL shader  الذي هو الآخر لا يظهر الا على مصير الهارد وير اعتقد هذا له علاقة بطبيعة برمجة ملفات ال*.fx 





بالضبط ما فائدة هذا المظلل؟؟؟؟؟؟

من المزعج أن تعرف إن دساتير البعد بين نقطتين التي طالما كرهتها هي أساسية في شيء تحبه جدا و هو تحريك الألعاب

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

أما في 25 فبراير 2010 05:24 م، فقد تنهد Hisham Kayali بارتياح وهو يرد:

لقد قمت بتحميل بعض الادوات المجانية من موقع amd  ومنها برنامج RenderMonkey متخصص ببرمجة الshaders  و جاهز للتعامل مع
open gl و directx  
حملت ايضا مقبس للمايا اسمهASHLI shader مهمته استيراد الملفات بلاحقة *.fx بعد برمجتها بRenderMonkey
و لكني لم افهم مهمة هذا ال ASHLI shader بالضبط بالنسبة للمايا؟؟
و مالذي يميزه عن HLSL shader الذي يقوم بنفس المهمة بالضبط ؟
 
ها هي بعض المحاولات..

لتوضيح الأمور، الـ ASHLI Shader هو اسم المقبس الخاص في المايا والمسؤول عن التعامل وإظهار المظللات الفورية (Real-Time Shaders) ضمن المايا. هذه المظللات قد تكون خاصة بالـ DirectX عندها تكون مكتوبة بلغة متخصصة للمظللات تدعى HLSL أو في حالة الـ OpenGL تكون مكتوبة بلغة تدعى GLSL.

لذلك لا يوجد ما يميز الـ HLSL عن الـ ASHLI فالأولى كما ذكرت لغة برمجة متخصصة لمظللات الـ DirectX بينما الأخرى هي اسم مقبس في المايا.



في 25 فبراير 2010 05:24 م، غمغم Hisham Kayali باستغراب قائلاً:

ها هي بعض المحاولات..
بعد استيراد ملف *.fx خاص بهذا المظلل اسم الملف 
PhongBumpHLSL.fx
و لكني لم أرى اين ال Bump بالضبط في هذا الشكل؟؟؟
هذه الصورة تظهر خصائص هذه المظلل و هو لا يتأثر بالاضاءة العادية 
يتم تغيير اتجاه استقباله للضوء من Light dir
باقي الارقام مفهومة....


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


بتاريخ 25 فبراير 2010 05:24 م، قطب Hisham Kayali حاجبيه بشدة وهو يقول:

عند تغير اتجاه الكاميرا تتحرك الالوان بطريقة غير منطقية على فرض اللون الازرق هو لون الضوء الذي يستقبله الجسم..

رندر للمشهد باستخدام المايا هاردوير حصراً.......... لم يتم التعرف عليه من قبل المصيرات الاخرى
و هذا  مماثل ل HLSL shader  الذي هو الآخر لا يظهر الا على مصير الهارد وير اعتقد هذا له علاقة بطبيعة برمجة ملفات ال*.fx
 
نظراً لكون المظللات المستخدمة هي مظللات فورية من الطبيعي أن تتم معالجتها من خلال الـ Hardware Renderer لأنه هو المصير الخاص بمعالجة المشهد ورسمه بالاعتماد على المظللات الفورية وبطاقة الإظهار مباشرة في المايا، بقية الأنظمة تعتمد على مظللات مختلفة قد لا تكون مصممة للتعامل مع المظللات الفورية وبالتالي لا تظهر أية نتيجة عند استخدامها.



وفي 25 فبراير 2010 05:24 م، أعرب Hisham Kayali عن رأيه بالموقف كالآتي:

بالضبط ما فائدة هذا المظلل؟؟؟؟؟؟

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

خبير  Hisham Kayali مشاركة 3

في 16/ربيع الأول/1431 06:24 م، غمغم همام البهنسي باستغراب قائلاً:

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

اذن يمكن القول ان هذا المظلل يستخدم لمعاينة شكل شخصيات اللعاب كما ستظهر... 
هذا يعني انه غير مفي بالتخريج للمشاهد النهائية العاديو و لكنه مفيد بالتصميم للالعاب...

من المزعج أن تعرف إن دساتير البعد بين نقطتين التي طالما كرهتها هي أساسية في شيء تحبه جدا و هو تحريك الألعاب

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

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


الرابط التالي هو لمقالة تشرح بعض الحالات الشائعة لاستخدام المظللات الفورية في تخريج المشاهد النهائية. جميع المظللات المذكورة في المقالة مكتوبة بلغة HLSL ويمكن استخدامها في المايا مباشرة من خلال مقبس الـ ASHLI Shader.
http://www.inframez.com/papers/xsi_rtpipe.htm

 
ولكن قد يخطر لنا سؤال هام، لماذا نقوم باستخدام هذه المظللات المعقدة والتعامل مع مصير بدائي مثل الـ Hardware Renderer ولا نكتفي بالمظللات العادية المتوفرة في المنتل راي مثلاً؟

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

خبير  Hisham Kayali مشاركة 5

وفي 17/ربيع الأول/1431 03:51 م، أعرب همام البهنسي عن رأيه بالموقف كالآتي:

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

فعلا الوقت عامل مغري جدا للتعامل مع هذا المصير....
خصوصا بعد بعض التجارب ورؤية نتائج مذهلة..
مثل هذه الخامة مثلاً
carPaintHLSL.fx





امامي الآن خياران..
اما ان اتعلم لغة الOPEN GL او   DirectX
لاحصل على مااريد بالاخراج...
او اتعلم كيف اتعامل مع ال Renderman بشكل كامل...
رغم انني وصلت لمرحلة جيدة بال Mental ray و لكنني لسبب ما اكره هذا المصير...

من المزعج أن تعرف إن دساتير البعد بين نقطتين التي طالما كرهتها هي أساسية في شيء تحبه جدا و هو تحريك الألعاب

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

وفي 02 مارس 2010 11:49 ص، أعرب Hisham Kayali عن رأيه بالموقف كالآتي:

امامي الآن خياران..
اما ان اتعلم لغة الOPEN GL او   DirectX
لاحصل على مااريد بالاخراج...
او اتعلم كيف اتعامل مع ال Renderman بشكل كامل...
 
في الحقيقة أمامك عدد كبير من الخيارات للتعلم، فعدد المصيرات لا ينتهي. طبعاً من المفيد تعلم عدد أكبر المصيرات ولكن قد يكون من الأفضل التركيز على مصير معين لاتقانه والحصول على نتائج مرضية.
 



في 02 مارس 2010 11:49 ص، قال Hisham Kayali بهدوء وتؤدة:

رغم انني وصلت لمرحلة جيدة بال Mental ray و لكنني لسبب ما اكره هذا المصير...

هل يمكنك المشاركة بالأسباب التي تجعل هذا المصير مكروهاً؟ هل مثلاً بسبب تعقيده؟ بطئه؟ ... الخ؟

خبير  Hisham Kayali مشاركة 7

وفي 02/ربيع الثاني/1431 11:30 م، قال همام البهنسي متحمساً:

هل يمكنك المشاركة بالأسباب التي تجعل هذا المصير مكروهاً؟ هل مثلاً بسبب تعقيده؟ بطئه؟ ... الخ؟

في الواقع سبب كرهي له هو سببان
السبب الاول و هو تقني.. نعومة الحواف (Anti aliasing)..بهذا المصير عقدتني... بينما بالرندرمان الحواف ناعمة افتراضيا بشكل رائع.. من دون تغيير اي اعدادات اضافية..
و السبب الثاني. هممممم لا أدري ما نوع هذا السبب
و لكن  الخامات الجاهزة الخاصة للمنتال راي..تعطي نتائج مذهلة حقاً و لكنني فعليا   لم أتعلم شيئاً 
يعني مثلا خامة mia_car_paint تعطي نتيجة ممتازة لمجسم السيارة.. و لكني فعليا لم افهم كيف تم الوصول لهذه النتيجة..
بينما اذا اردت صناعة خامة من الblinn فعلي تعديل كل شيء بدءا من اللون و الانعكاس و ما إلى هنالك.. و هذا يجعلني قادر على التعامل مع جميع
الخامات و فهم جميع خصائصها و هذا ينعكس على جميع البرامج المصيرة  بينما الاعتماد على خامات المنتال راي الجاهزة سيجعلني أشبه بالببغاء..

من المزعج أن تعرف إن دساتير البعد بين نقطتين التي طالما كرهتها هي أساسية في شيء تحبه جدا و هو تحريك الألعاب

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

وفي 17 مارس 2010 08:53 م، أعرب Hisham Kayali عن رأيه بالموقف كالآتي:

السبب الاول و هو تقني.. نعومة الحواف (Anti aliasing)..بهذا المصير عقدتني... بينما بالرندرمان الحواف ناعمة افتراضيا بشكل رائع.. من دون تغيير اي اعدادات اضافية..
 
أوافقك الرأي في أن تحديد القيم المثلى للـ Anti-aliasing ليست بهذه البساطة ولكنك إذا كنت تستخدم المنتال راي من خلال المايا يمكنك الهرب من هذه المسألة من خلال تحديد أنماط الرندر الجاهزة (Render Presets) التي يوفرها المايا.
 



في 17 مارس 2010 08:53 م، قال Hisham Kayali بهدوء وتؤدة:

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