سؤال

إم تقديم ينغ على المربعات البسيطة في برنامج أوبنغل إس 2.0 ، ولكن عندما أحاول ورسم شيء وراء مربع لقد رسمت بالفعل منطقة شفافة في بلدي أعلى مربع يتم تقديم نفس لون الخلفية.

أنا أدعو هذه في بداية كل مكالمة تقديم.

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glEnable(GL_DEPTH_TEST);
glEnable (GL_BLEND); 
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
هل كانت مفيدة؟

المحلول

عنوانك هو في الأساس الإجابة على سؤالك!

تتم

نصائح أخرى

أحسب

بها.يمكنك تجاهل في شظي جزء giveacodicetagpre.

أعطى درو قاعة لك إجابة جيدة ولكن خيار آخر هو تعيين glEnable(GL_ALPHA_TEST) مع glAlphaFunc(GL_GREATER, 0.1f).سيمنع هذا وحدات البكسل الشفافة (في هذه الحالة ، تلك التي تحتوي على ألفا < 0.1 و) من تقديمها على الإطلاق.وبهذه الطريقة لا يكتبون في المخزن المؤقت ض وأشياء أخرى يمكن أن "تظهر من خلال".ومع ذلك ، هذا يعمل فقط على كائنات شفافة تماما.كما أن لديها حواف خشنة أينما حافة 0.1 ألفا وهذا يمكن أن تبدو سيئة للميزات البعيدة حيث بكسل كبيرة مقارنة مع الكائن.

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