Serve come classe base per le altri classi shadow (ombra).
[page:Camera camera] - la visione del mondo da parte della luce.
Crea una nuova [name]. Questa classe non deve essere chiamata direttamente - viene usata come classe base
da altre ombre di luce.
Abilita gli aggiornamenti automatici dell'ombra della luce. Il valore predefinito è `true`. Se non hai bisogno di luci/ombre, puoi impostarlo su `false`.
La visione del mondo da parte della luce. Viene utilizzata per generare un mappa di profondità della scena; gli oggetti dietro ad altri oggetti dalla prospettiva della luce saranno in ombra.
Bias della mappa delle ombre, quanto aggiungere o sottrarre dalla profondità normalizzata quando si decide se una superficie è in ombra.
Il valore predefinito è 0. Piccole regolazioni qui (nell'ordine di 0,0001) possono aiutare a ridurre gli artefatti nelle ombre.
La quantità di campioni da utilizzare durante la sfocatura di una mappa ombra VSM.
La mappa di profondità generata usando la telecamera interna; una posizione oltre la profondità di un pixel è in ombra. Calcolato internamente durante il rendering.
La mappa di distribuzione generata usando la telecamera interna; un'occlusione viene calcolata in base alla distribuzione della profondità. Calcolato internamente durante il rendering.
Un [Page:Vector2] che definisce la larghezza e l'altezza della mappa dell'ombra.
Valori più alti danno una maggior qualità alle ombre a scapito del tempo di calcolo. I valori
devono essere potenze di 2, fino a [page:WebGLRenderer.capabilities].maxTextureSize per un determinato
dispositivo, sebbene la larghezza e l'altezza non debbano essere le stesse (quindi, per esempio (512, 1024)
è valido). Il valore predefinito è *( 512, 512 )*.
Modello per lo spazio delle ombre della telecamera, per calcolare la posizione e la profondità nella mappa delle ombre. Memorizzato in una [page:Matrix4 Matrix4]. Questa viene calcolata internamente durante il rendering.
Quando viene impostato a `true`, le mappe d'ombra saranno aggiornate nella successiva chiamata del `render`. L'impostazione predefinita è `false`. Se si è impostato [page:.autoUpdate] a `false`, sarà necessario impostare questa proprietà su `true` e quindi eseguire una chiamata di rendering per aggiornare l'ombra della luce.
Definisce di quanto la posizione utilizzata per interrogare la mappa delle ombre è sfalsata rispetto alla normale dell'oggetto. Il valore predefinito è 0. Aumentando questo valore si può ridurre l'acne dell'ombra, soprattutto nelle scene di grandi dimensioni in cui la luce illumina la geometria con un angolo poco profondo. Il costo è che le ombre possono apparire distorte.
Impostando questo valore maggiore di 1 si sfocheranno i bordi dell'ombra.
Valori alti causeranno degli effetti di banding indesiderati nelle ombre - un [page:.mapSize mapSize]
maggiore consentirà di utilizzare un valore più elevato qui prima che questi effetti diventino visibili.
Se [page:WebGLRenderer.shadowMap.type] è impostato a [page:Renderer PCFSoftShadowMap], il raggio non ha effetto e
si consiglia di aumentare la morbidezza diminuendo invece [page:.mapSize mapSize].
Si noti che questo non ha effetto se [page:WebGLRenderer.shadowMap.type] è impostato a [page:Renderer BasicShadowMap].
Utilizzato internamente dal renderer per estendere la mappa d'ombra in modo da contenere tutti i viewport.
Aggiorna le matrici per la telecamera e l'ombra, utilizzato internamente dal renderer.
light -- la luce per la quale viene renderizzata l'ombra.
Ottiene il frustum delle telecamere ombra. Utilizzato internamente dal renderer per tagliare gli oggetti.
Utilizzato internamente dal renderer per ottenere il numero di viewport che devono essere renderizzate per questa ombra.
Elimina le texture di questa ombra ([page:LightShadow.map map] e [page:LightShadow.mapPass mapPass]).
Copia il valore di tutte le proprietà dalla [page:LightShadow sorgente] della Light.
Crea una nuova LightShadow con le stesse proprietà di questa.
Serializza questa LightShadow.
[link:https://github.com/mrdoob/three.js/blob/master/src/lights/[name].js src/lights/[name].js]