Processing:Справочник языка Processing/PShader/set(): различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки |
Myagkij (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
{{Processing панель перехода}} | {{Processing панель перехода}} | ||
{{Перевод от Сubewriter}} | {{Перевод от Сubewriter}} | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
= set() <ref>[https://processing.org/reference/PShader_set_.html processing.org - set()]</ref>= | = set() <ref>[https://processing.org/reference/PShader_set_.html processing.org - set()]</ref>= | ||
Строка 86: | Строка 83: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Портал/Processing}} | {{Навигационная таблица/Портал/Processing}} |
Текущая версия от 18:46, 19 сентября 2023
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
set() [1]
Класс
PShader
Обозначение
set()
Описание
Меняет значения в стандартных переменных шейдера, чтобы модифицировать его эффект во время работы программы.
Синтаксис
.set(name, x)
.set(name, x, y)
.set(name, x, y, z)
.set(name, x, y, z, w)
.set(name, vec)
.set(name, vec, ncoords)
.set(name, boolvec, ncoords)
.set(name, mat)
.set(name, mat, use3x3)
.set(name, tex)
Параметры
name – название стандартной переменной, которую нужно поменять. Тип данных – String
x – первый компонент переменной, который нужно модифицировать. Тип данных – boolean, float или int
y – второй компонент переменной, который нужно модифицировать; эта переменная должна быть объявлена внутри шейдера как элемент массива или вектор (например: int[2], vec2). Тип данных – boolean, float или int
z – третий компонент переменной, который нужно модифицировать; эта переменная должна быть объявлена внутри шейдера как элемент массива или вектор (например: int[3], vec3). Тип данных – boolean, float или int
w – четвертый компонент переменной, который нужно модифицировать; эта переменная должна быть объявлена внутри шейдера как элемент массива или вектор (например: int[4], vec4). Тип данных – boolean, float или int
vec – модифицирует все компоненты в стандартной переменной, имеющей вид массива или вектора. Если тип переменной – это vec3, можно использовать только PVector. Тип данных – boolean[], float[], int[] или объект PVector
ncoords – количество координат на элемент (максимум – 4). Тип данных – int
mat – матрица значений. Тип данных – объект PMatrix3D или PMatrix2D
use3x3 – принудительно выставляет матрицу на 3 x 3. Тип данных – boolean
tex – задает стандартную переменную для изображения-текстуры. Тип данных – PImage
Возвращаемое значение
void
Пример
PImage tex;
PShader deform;
void setup() {
size(640, 360, P2D);
tex = loadImage("tex1.jpg");
deform = loadShader("deform.glsl");
deform.set("resolution", float(width), float(height));
}
void draw() {
deform.set("time", millis() / 1000.0);
deform.set("mouse", float(mouseX), float(mouseY));
shader(deform);
image(tex, 0, 0, width, height);
}
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |