Blender для начинающих/Введение в GLSL: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 20:
 
==Типы в GLSL==
#'''void''' функция, не возвращая никакого значения.
#'''bool''' логические значения.
#'''int''' целочисленные значения.
#'''float''' числовые знаения с плавающей точкой.
#'''vec2''' двухмерный вектор, содержащий объект типа float.
#'''vec3''' трехмерный вектор, содержащий объект типа float.
#'''vec4''' четырехмерный вектор, содержащий объект типа float.
#'''ivec2''', '''ivec3''', '''ivec4''' векторы, содержащие объекты типа int.
#'''mat2''', '''mat3''', '''mat4''' матрицы размера 2х2 3х3 и 4х4 соответственно, содержащие объекты типа float.
Объявление любой переменной должно быть таким:
<source lang="C">тип name;</source>
Тип - тип переменной с именем name. При нужде инициализации переменной сразу при объявлении можно писать:
<source lang="C">тип name = тип(значениязначение)</source>
Например, создание переменной типа vec2:
<source lang="C">vec2 a = vec2(1.0,2.0);</source>
* Для доступа к значениям векторов можно использовать конструкции вида:
<source lang="C">vector[i]</source>
[[File:GLSL 1.jpg|frameless]]
 
Где i лежит от 0 до 3 (i € [0;3]).
 
* Или к их координатам можно обращаться так:
<source lang="C">vector.x
vector.y