سؤال

بالنسبة لمشروع أريد تنفيذ Z-Buffer الخاص بي. أنا أعرف الخوارزمية وكيفية تنفيذ هذا. لأنني لا أرغب في كتابة محرك رسومات كامل كنت أخطط لاستخدام OpenGL ، فإن المشكلة هي ، كيف يمكنني الجمع بين الخوارزمية الخاصة بي مع OpenGL؟

قرأت في مكان ما يمكن أن أحسب كل شيء بنفسي ثم تمرير البيانات لكل بكسل إلى gldrawpixels () ولكن هذا يبدو مبالاة بعض الشيء. النقطة المهمة هي أنني لا أريد تنفيذ خوارزميات التثليث وما إلى ذلك ..

هدفي هو استخدام OpenGL حتى حتى الإطار السلكي ، ثم استخدم خوارزمية Z-Buffer الخاصة بي ثم استخدم OpenGL مرة أخرى لرسم الصورة النهائية. (بالنسبة لمشروعي ، فإن Z-Buffer هو الشيء الوحيد الذي يهم ، بما في ذلك الضوء والظلال). هل هناك طريقة يمكن القيام بها أو هل يجب علي تنفيذ كل شيء بنفسي والسماح لـ OpenGL فقط برسم EndResult؟

بإخلاص

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

المحلول

يمكنك ضبط لون الرؤوس التي ترسمها على قيمها z عن طريق حساب المسافة "يدويًا". لكنني أعتقد أنه من الممكن ربط Z-buffer كملمس ثم رسم رباعيًا كبيرًا يغطيه الشاشة باستخدام نسيج Z-buffer عليه.

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