Processing:Справочник языка Processing/lightFalloff()

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску


Перевод: Максим Кузьмин (Cubewriter) Контакты:</br>* Skype: cubewriter</br>* E-mail: cubewriter@gmail.com</br>* Максим Кузьмин на freelance.ru
Проверка/Оформление/Редактирование: Мякишев Е.А.


Cat poo.png Черновик


lightFalloff() [1]

Обозначение

lightFalloff()

Описание

Задает затухание для точечного, прожекторного и окружающего освещения. Как и fill(), этот метод влияет только на те элементы, которые создаются в коде после него. По умолчанию параметры этого метода имеют следующие значения: lightFalloff(1.0, 0.0, 0.0). Эти параметры являются частью формулы, с помощью которой рассчитывается затухание:

falloff = 1 / (CONSTANT + d * LINEAR + (d*d) * QUADRATIC)

Здесь d – это расстояние между источником света и позицией вершины.

Вам, возможно, непросто представить, как окружающее освещение работает вместе с затуханием. Представьте, что вам нужно, чтобы один участок вашей сцены имел окружающее освещение одного цвета, а другой участок – окружающее освещение другого цвета. Чтобы реализовать это, можно воспользоваться ambientLight() с XYZ-координатами и методом lightFalloff(). Это похоже на точечное освещение, которому не важно, в каком направлении смотрит поверхность объекта.

Синтаксис

lightFalloff(constant, linear, quadratic)

Параметры

constant   константа для определения затухания. Тип данных  float
linear     линейное значение для определения затухания. Тип данных  float
quadratic  квадратичное значение для определения затухания. Тип данных  float

Возвращаемое значение

void

Пример

Processing lightFalloff 0.png


size(100, 100, P3D);
noStroke();
background(0);
lightFalloff(1.0, 0.001, 0.0);
pointLight(150, 250, 150, 50, 50, 50);
beginShape();
vertex(0, 0, 0);
vertex(100, 0, -100);
vertex(100, 100, -100);
vertex(0, 100, 0);
endShape(CLOSE);

См.также

Внешние ссылки