PointLight - Руководство по Вердж3Д - Софт Эйт Софт
Description: Узнайте как использовать PointLight в интерактивных 3Д-веб-приложениях сделанных на Вердж3Д

Object3D → Light →

# PointLight

Свет, который излучается из одной точки во всех направлениях. Чаще всего его используют для воспроизведения света, излучаемого голой лампочкой.

Этот свет может отбрасывать тени - подробности смотрите на странице PointLightShadow.

## Пример

`const light = new v3d.PointLight(0xff0000, 1, 100); light.position.set(50, 50, 50); app.scene.add(light);`

## Конструктор

### PointLight(color : Integer, intensity : Float, distance : Float, decay : Float)

- color — (необ.) шестнадцатеричный цвет света. По умолчанию `0xffffff` (белый).
- intensity — (необ.) числовое значение силы/интенсивности света. По умолчанию 1.
- distance — максимальная дальность действия света. По умолчанию `0` (без ограничения).
- decay — величина затемнения света по расстоянию до него. По умолчанию `2`.

Создает новый PointLight.

## Свойства

Общие свойства смотрите в базовом классе Light.

### # .castShadow : Boolean

Если установлено в `true`, свет будет отбрасывать динамические тени. Возможно вам также потребуется настроить внешний вид этих теней. Смотрите подробности в PointLightShadow. По умолчанию `false`.

### # .decay : Float

Величина ослабления света в зависимости от расстояния до него. По умолчанию `2`. Для физически корректного освещения вам не следует менять этот параметр.

### # .distance : Float

Когда расстояние равно нулю, свет будет ослабевать по закону обратного квадрата до бесконечного расстояния. Когда расстояние ненулевое, свет будет ослабевать по обратно-квадратичному закону до тех пор, пока не приблизится к отсечке расстояния, где он будет быстро и плавно ослабевать до `0`. Подобная отсечка не является физически корректной.

По умолчанию `0.0`.

### # .intensity : Float

Интенсивность источника освещения. По умолчанию `1`. Интенсивность это сила света, измеряемая в канделах (кд).

Изменение этого параметра также изменяет мощность.

### # .isPointLight : Boolean

Указывает, что данный объект является экземпляром класса PointLight. Только для чтения.

### # .power : Float

Мощность источника. Мощность это световой поток источника освещения, измеряемый в люменах (лм).

Изменение этого параметра также изменяет интенсивность.

### # .shadow : PointLightShadow

PointLightShadow, используемый для расчета теней для этого света.

Теневая камера является перспективной с fov равным 90, aspect равным 1, near плоскостью сечения 0.5 и far плоскостью сечения 500.

## Методы

Общие методы смотрите в базовом классе Light.

### # .dispose()

Освобождает все связанные с GPU ресурсы, используемые экземпляром PointLight. Этот метод следует вызвать, если PointLight больше не используется в приложении.

### # .copy(source : PointLight) → PointLight

Копирует значения всех свойств из source в данный PointLight.

## Пазлы

Следующие пазлы могут работать с точечными источниками:

- create object — выберите light, затем point.
- set light param — для установки различных параметров источника.
- get light param — для получения параметров источника.

## Исходный файл

О том как получить исходный код этого модуля читайте тут.