هل يمكنني استخدام الأوليات المفهرسة عند استخدام أجسام عازلة قمة في OpenGL ES 1.X؟

StackOverflow https://stackoverflow.com/questions/268035

  •  06-07-2019
  •  | 
  •  

سؤال

ولدي مجموعة الذي يحتوي على قائمة من القمم التي يمكنني نسخ إلى GPU باستخدام كائن عازلة قمة الرأس. ومع ذلك بتنسيق قمة بمفردها لا معنى لها كما أود أيضا أن يكون مجموعة عددية الذي يحتوي على قائمة من المؤشرات في مجموعة قمة الرأس.

في هذا السيناريو هو ممكن لإنشاء كائن عازلة آخر لتخزين الأرقام القياسية ثم في تقديم وظيفة ربط كل من مجموعة قمة الرأس ومؤشرات مجموعة الرسم:

//vertex coordinates
glBindBuffer(GL_ARRAY_BUFFER, bufferId1);         
//index coordinates
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, bufferId2); 

glVertexPointer(3, GL_FLOAT, 0, 0);
//Not sure if this should be Unsigned BYTE or Unsigned SHORT
glDrawElements(GL_POINTS, 6, GL_UNSIGNED_BYTE, 0);  

ولقد قرأت المعهد ويلي الخلط لي:
"في حين لا بد صفر غير وجوه عازلة للهدف GL_ELEMENT_ARRAY_BUFFER، بدلا من ذلك تفسير المعلمة مؤشرات glDrawElements أن يتم تفسير تقليديا كمؤشر إلى الذاكرة العميل كما إزاحة ضمن الكائن المخزن في وحدات قياس آلة الأساسية ".

أنا جميلة جديدة لرسومات برمجة لذلك أعتذر إذا كان أي من هذه لا معنى له.

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

المحلول

نعم، هذا ممكن. البرنامج التعليمي الرسمي ينبغي أن تساعدك على طول. ويوصون بعدم استخدام بايت غير موقعة، والعصا مع 16 أو 32 بت مؤشرات للسرعة.

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