Ответ 1
Он описывает возвращаемые параметры, в этом случае вектор ints. Одна и та же номенклатура используется, например, для glTexParameteriv
и glTexParameterfv
, которая обновляет вектор ints или float соответственно.
Что означает iv
в конце glGetShaderiv()
?
Он описывает возвращаемые параметры, в этом случае вектор ints. Одна и та же номенклатура используется, например, для glTexParameteriv
и glTexParameterfv
, которая обновляет вектор ints или float соответственно.
OpenGL
имеет некоторые организованные соглашения об именах в отношении подпрограмм, которые они имеют в библиотеках.
Приставки
У всех подпрограмм есть gl
перед ними. Подобное, что вы, должно быть, наблюдали с помощью glu
и glut
. В некоторых библиотеках vender также есть префиксы, такие как NVidia
ребята установили префикс NV_
в флагах аппаратных функций.
Суффиксы
Суффиксы обычно являются индикатором того, какие аргументы принимает метод.
Некоторые, определяющие контекст функции. например 1D
, 2D
или 3D
например glTexCoord2D
Вид типов значений - это выбор аргумента функции. например glTranslatef
принимает аргументы GLfloat
(обратите внимание, что даже типы данных следуют одному и тому же соглашению об именах) и glTranslated
принимают GLdouble
.
Источник вершин (обычно, когда имеется слишком много вершин, и вы храните их в одном массиве), используя упомянутый метод:
glGetShaderiv
является функцией, принимает параметры для shaders
, где тип данных GLint
, а источником данных является vector
(v
).
Вы можете принять такие соглашения, чтобы легко определить, какой метод принимает какие аргументы.
Указывает, что вы хотите получить значение, представляющее собой массив целых чисел. Ссылка на функцию можно найти здесь, и, как вы можете видеть, возвращаемый параметр является GLint *
. Это контрастирует с такими функциями, как glGetInternalFormati64v
, который имеет параметр возврата GLint64 *
. Я считаю, но не могу найти в данный момент, что существуют функции, использующие суффикс fv
для обозначения плавающих и, возможно, других.