GlframeBufferTexture2d أداء
-
27-09-2019 - |
سؤال
أقوم بحساب ثقيل باستخدام وحدة معالجة الرسومات ، والتي تتضمن الكثير من عمليات تقديم النص. إنه حساب تكراري ، لذلك هناك الكثير من التقديم إلى نسيج ، ثم تقديم هذا الملمس إلى نسيج آخر ، ثم يعيد الملمس الثاني إلى الملمس الأول وما إلى ذلك ، ويمر الملمس عبر تظليل في كل مرة.
سؤالي هو: هل من الأفضل أن يكون لديك FBO منفصل لكل نسيج أريد تقديمه إليه ، أو يجب أن يكون لديّ FBO وربط الملمس الهدف باستخدامه باستخدام glFramebufferTexture2D
في كل مرة أرغب في تغيير الهدف؟
منصتي OpenGL ES 2.0 على iPhone.
المحلول
في تطبيق iPhone ، من غير المكلف تغيير المرفق ، على افتراض أن القوام القديمة والجديدة هي نفس الأبعاد/التنسيق/إلخ. خلاف ذلك ، يتعين على السائق القيام ببعض الأعمال الإضافية لإعادة تكوين FrameBuffer.
نصائح أخرى
AFAIK ، يتم تحقيق أداء أفضل باستخدام FBO واحد فقط ، وتغيير مرفقات الملمس حسب الضرورة.
أفضل طريقة هي القيام القياسية.