Задание точности precision precision-qualifier type; может быть использовано, чтобы установить классификатор точности по умолчанию. Поле Type может быть или int, или float, другие значение приведут к ошибкам; precision-qualifier может быть lowp, mediump, or highp. Директива precision распространяется на неточно квалифицированные (non-precision-qualified) данные с плавающей точкой (скаляры, вектора и матрицы). Если тип int, то действие директивы распространяется на все неточно квалифицированные int данные (скаляры, вектора, signed и unsigned). Это распространяется на глобальные переменные, возвращаемые функциями значения, парамеры функций и на локальные переменные. Неточно квалифицированные объявления будут использовать ту точность (precision), которая была задана последний заразервированным словом precision. The precision statement (задание точности) has the same scoping rules as variable declarations. Если оно объявлено внутри составного объявления, оно останавливает эффект внутренней структуры, которая была объявлена рядом. Precision statements in nested scopes override precision statements in outer scopes. Multiple precision statements for the same basic type can appear inside the same scope, с сообщением statements overriding earlier statements within that scope. Вершинный и геометрический языки имеют следущие predeclared глобальные области действия default precision объявлений (т.е. если программист не указал точность сам, машина за него сделает это следующим образом: - прим переводчика): precision highp float; precision highp int; Фрагмнтный язык имеею следующую predeclared глобальную область default precision: precision mediump int; precision highp float;
Источник: http://www.opengl.org/registry/doc/GLSLangSpec.4.00.7.pdf |