# dxDrawRectLight (Cliente)

> Ilumina desde un rectángulo durante un solo fotograma, sin crear un elemento.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Función Lua
- **Lado**: Cliente
- **Categoría**: Luces
- **URL**: https://wiki.mymp.gg/es/dxDrawRectLight

## Sintaxis

```lua
bool dxDrawRectLight(float x, y, z, float normalX, normalY, normalZ, float width, float height, float radius, color color [, float intensity = 1, float falloff = 4, float barnDoorAngle = 88, float barnDoorLength = 0.2, bool castShadow = false, float tangentX, tangentY, tangentZ = nil])
```

## Parámetros

| Nombre | Tipo | Descripción |
| --- | --- | --- |
| `x, y, z` | `float` | Posición de la luz en el mundo, tres números o un vec3. |
| `normalX, normalY, normalZ` | `float` | Hacia dónde apunta la cara del rectángulo. Tres números o un vec3, finito y no nulo; se normaliza. La luz solo ilumina por delante. |
| `width` | `float` | Ancho del rectángulo en metros, de 0.01 a 100. |
| `height` | `float` | Alto del rectángulo en metros, de 0.01 a 100. |
| `radius` | `float` | Alcance en metros, mayor que 0 y hasta 1000. |
| `color` | `color` | Tres números `r, g, b` (enteros de 0 a 255) o un valor de `tocolor`. El alfa se ignora. |
| `intensity` | `float` | Multiplicador de brillo, de 0 a 1000. En 1, una luz blanca brilla con una radiancia HDR de 12. *(por defecto: `1`)* |
| `falloff` | `float` | Exponente del desvanecimiento hacia el radio, de 0.1 a 32. Valores mayores mantienen la luz fuerte más cerca del borde. *(por defecto: `4`)* |
| `barnDoorAngle` | `float` | Ángulo de las aletas desde la normal, de 0 a 90 grados. De 88 en adelante no tapan nada. *(por defecto: `88`)* |
| `barnDoorLength` | `float` | Largo de las aletas en metros, 0 o más. *(por defecto: `0.2`)* |
| `castShadow` | `bool` | Si la luz proyecta sombras. *(por defecto: `false`)* |
| `tangentX, tangentY, tangentZ` | `float` | Dirección del ancho del rectángulo, tres números o un vec3. Si se omite, se hace a partir de la normal y del eje vertical del mundo. Un vector nulo o paralelo a la normal registra un aviso. *(por defecto: `nil`)* |

## Retorno

`true` si la luz entró en la cola del fotograma. `false` cuando ya hay 256 luces en la cola, o con un argumento incorrecto.

La luz dura un fotograma. Una llamada hecha antes de dibujar el mundo (por ejemplo en `onClientPreRender` u `onClientRender`) ilumina ese fotograma; una hecha después ilumina el siguiente. Las llamadas hechas mientras no corre ningún fotograma se descartan. Pasar de 256 luces en un fotograma registra un aviso una vez, hasta que un fotograma deja sitio en la cola.

## Ejemplo

```lua
addEventHandler("onClientPreRender", root, function()
    dxDrawRectLight(1481.0, -1771.0, 22.0, 0, -1, 0, 4, 0.5, 12, 255, 60, 200, 3)
end)
```

### Si vienes de MTA

MTA no tiene luces dinámicas.

## Ver también

- [createRectLight (Cliente)](https://wiki.mymp.gg/es/createRectLight.md): Crea una luz que sale de un rectángulo, como un panel o una ventana iluminada. La luz solo existe en este cliente.
- [dxDrawPointLight (Cliente)](https://wiki.mymp.gg/es/dxDrawPointLight.md): Ilumina en todas las direcciones desde un punto durante un solo fotograma, sin crear un elemento.
- [dxDrawSpotLight (Cliente)](https://wiki.mymp.gg/es/dxDrawSpotLight.md): Ilumina un cono durante un solo fotograma, sin crear un elemento.
- [onClientPreRender (Cliente)](https://wiki.mymp.gg/es/onClientPreRender.md): Se dispara en cada fotograma, después de simular el mundo y antes de dibujarlo.
