سؤال

أنا أضغط برنامج رسومات صغير باستخدام DirectX9 الذي يستورد بعض الملفات النموذجية التي تم إنشاؤها باستخدام Blender من ملفات .x. حتى الان جيدة جدا.

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

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

أشعر أنني يجب أن أفتقد طريقة أسهل للقيام بذلك، أي اقتراحات؟

هل كانت مفيدة؟

المحلول

على عكس ملفات الصور الملمس، يمكن تحديد برنامج Shader معقدا للغاية. أنت بحاجة إلى نص شادر بالإضافة إلى مواصفات المعلمات التي يحتاجها وسيلة لمن يقرأ الملف لمعرفة القيم التي يجب تعيينها لمعلمات المعلمات وكيف. يتطلب بعض التظليل بدوره من القوام معلمات وأحيانا يحتاج إلى إنشاء هذه texutres بواسطة التطبيق (على سبيل المثال في حالة الملمس 3D Perlin 3D).
باختصار، لا توجد طريقة للتوصل إلى طريقة قياسية لتحديد التظليل بشكل عام والتي يمكن تكليفها بالكامل بتنسيق ملف مثل .x. وبعد خيارك الوحيد هو الخروج بشيء مخصص للتطبيق الخاص بك. الطريقة التي تقترحها في السؤال هي جيدة مثل أي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top