استخدام مواد OpenGL أكبر من حجم النافذة/العرض
سؤال
أواجه مشكلات في استخدام مواد أكبر من نافذة OpenGL أو حجم العرض كأهداف عرض غير معروضة.
ما هو الحل لهذه المشكلة؟
المحلول
هناك حل بسيط.
بافتراض أن القوام (غير المعروض) الخاص بك موجود 1024x1024 وأنت مقيد ب 256x256 نافذة العرض.
unsigned int WIN_WIDTH = 256;
unsigned int WIN_HEIGHT = WIN_WIDTH;
unsigned int TEX_WIDTH = 1024;
unsigned int TEX_HEIGHT = TEX_WIDTH;
استخدم ال بحجم النافذه لإنشاء نافذة OpenGL الخاصة بك:
glutInitWindowSize(WIN_WIDTH, WIN_HEIGHT);
ولكن، استخدم حجم الملمس لكل شيء آخر:
glViewport(0, 0, TEX_WIDTH, TEX_HEIGHT);
gluOrtho2D(0.0, TEX_WIDTH, 0.0, TEX_HEIGHT);
glTexCoord2i(TEX_WIDTH, TEX_HEIGHT);
لا تنتمي إلى StackOverflow