DirectX11: تمرير البيانات من Computeshader إلى Vertexshader؟
-
27-09-2019 - |
سؤال
هل من الممكن تطبيق مرشح على بيانات الهندسة التي سيتم تقديمها باستخدام تظليل الحساب ومن ثم استخدام النتيجة كحساب مخزن مؤقت في تظليل الرأس؟ هذا من شأنه أن يوفر لي مشكلة (والوقت) لقراءة البيانات.
أي مساعدة هي محل تقدير كبير.
المحلول
نعم بالتاكيد. أولاً تقوم بإنشاء اثنين من المتطابقة ID3D11Buffer
من الهياكل باستخدام BIND_VERTEX_BUFFER
, BIND_SHADER_RESOURCE
و BIND_UNORDERED_ACCESS
أعلام الاستخدام ، والطائرات بدون طيار المرتبطة و SRVs.
الخطوة الأولى هي تطبيق المرشح الخاص بك على إدخال المخزن المؤقت للمصدر والكتابة إلى المخزن المؤقت الوجهة أثناء مرور حسابك.
ثم أثناء مرور السحب ، عليك فقط ربط المخزن المؤقت للوجهة بـ IA
المسرح. يمكنك القيام ببعض ping-pong إذا كنت بحاجة إلى تجميع الحسابات على القمم (أفترض أنه من خلال المرشح تقصد أ الخريطة الوظيفية, ، للإشارة إلى مصطلح البرمجة الوظيفية).