# Entidades básicas

The World Explorer [reserva un rango](https://github.com/decentraland/docs/blob/main/contributor/runtime/modules/engine_api/README.md#identifying) de IDs de entidades para su propio uso. De este rango, los identificadores `0`, `1` y `2` están preasignados a un conjunto de entidades básicas garantizadas que existen.

Estas son:

* `0`: `RootEntity`
* `1`: `PlayerEntity`
* `2`: `CameraEntity`

Estas entidades tienen un conjunto conocido de componentes adjuntos que son gestionados por el runtime, es decir, su estado es de solo lectura para la escena. Obtener el estado inicial de estos componentes es parte de la [inicialización de la escena](https://github.com/decentraland/docs/blob/main/contributor/runtime/execution/README.md#onStart).

{% hint style="info" %}
Componentes adicionales para estas entidades están en desarrollo. El [mecanismo de sincronización CRDT](https://github.com/decentraland/docs/blob/main/contributor/runtime/modules/engine_api/README.md#synchronization) se está expandiendo para proporcionar parte de la funcionalidad ofrecida por diferentes módulos.

Por ejemplo, las escenas podrán detectar el estado de la ventana del Explorer para optimizar su uso de red y CPU, o acceder a información más completa sobre el jugador, el sistema de comunicaciones y la cámara del juego.
{% endhint %}

**`RootEntity` (`0`)**

Contiene información general sobre el contexto de la escena.

* [`Transform`](https://github.com/decentraland/docs/blob/main/contributor/runtime/components/README.md#Transform): información posicional del punto de origen de la escena, respecto al cual se relacionan todos los demás Transform que no tienen un padre explícito.

El `Transform` componente del `RootEntity` se inicializa con los siguientes valores:

```yml
scale: [1, 1, 1] # XYZ
position: [0, 0, 0] # XYZ
rotation: [0, 0, 0, 1] # XYZW
```

**`PlayerEntity` (`1`)**

Contiene datos sobre el jugador, su identidad, su avatar y ubicación.

* [`Transform`](https://github.com/decentraland/docs/blob/main/contributor/runtime/components/README.md#Transform): la información posicional del avatar del jugador.

**`CameraEntity` (`2`)**

Contiene información sobre la cámara del juego. Todos los componentes son gestionados por el renderer.

* [`Transform`](https://github.com/decentraland/docs/blob/main/contributor/runtime/components/README.md#Transform): la información posicional de la propia cámara.
* [`PointerLocked`](https://github.com/decentraland/docs/blob/main/contributor/runtime/components/README.md#PointerLocked): si el puntero sigue la dirección de la cámara o se mueve de forma independiente.
