Minimapa y Puntos Interactuables
El minimapa es un componente opcional de la interfaz que permite visualizar la ubicación de elementos importantes en la escena. También permite interactuar con ellos, como por ejemplo teletransportar al usuario a puntos de interés.

Requiere una configuración mínima para comenzar a funcionar y mostrar los elementos.
Agregar minimapa en el nivel
En la nivel es necesario tener 2 elementos necesarios para que el minimapa en el widget obtenga la configuración y las referencias.
MinimapLevelController en el nivel
Este Actor se encarga de capturar la escena y sirve como referencia central desde donde todos los elementos van a ser referenciados respecto a la distancia de este.
Para instanciar el actor en el nivel se puede hacer desde el panel de PlaceActors.

Por defecto la captura del minimapa solo se ejecuta una vez y no se refresca hasta que activamente se llame al refresco en el caso que se quiera actualizar con nueva informacion.
En el MinimapLevelController también puede ser configurado con MinimapConfigAsset y definir los iconos y elemetos que va a tener el nivel. Esta configuración sobrescribirá la que este predefinida por el proyecto pudiendo usar la global de los settings o individual por nivel.

MinimapElementComponent en los actores
Cualquier actor puede ser definido como un elemento dentro del minimapa solo con agregar un MinimapElementComponent como un ActorComponent. Este componente es el que se encargara de guardar las referencias de configuracion que seran usadas en la creacion de los elementos en el widget con las referencias a la configuracion.

Para definir cual va a ser el elemento del minimapa estos estaran relacionados con el sistema GameplayTags. Se puede usar cualquier GameplayTag mientras este definido en el MinimapConfigAsset por lo que se puede utilizar Tags de otros sistemas o agregar nuevos dependiendo de lo que se necesite.

Propiedades del MinimapElementComponent
MinimapIconType: Define el tipo de elemento por
GameplayTagdefinidas en el proyecto para encontrar la configuración en elMinimapConfigAsset.Dynamic Minimap Icon: Define si el elemento es dinámico. Por defecto todos son estáticos hasta que se active el dinámico ya que estos se tratan diferentes a la hora de posicionaros en el widget.
Use Actor Look Direction: Define si el icono estará orientado a la dirección donde mira el actor.
Icon Element Data: Definición de la información a través de una
FInstancedStructpara poder definir la estructuras con los datos si se necesita.

Agregar minimapa en el widget
El minimapa es un widget independiente y con la capacidad de autoinicializarse siempre y cuando en el nivel este el MinimapLevelController y haya elementos con MinimapElementComponent. Este puede ser agregardo en cualquier panel que se quiera.
Un ejemplo desde 0 seria:
Crea un Widget para ser creado en la escena
Agrega el componente
W_Minimapen el widget

Para que se aplique correctamente las medidas del widget hay que usar el
bSizeToContent=Truechequeado y para el tamaño usar la variableMinimapSize. De lo contrario se aplicaran mal las distancias de los iconos.

Iconos y Configuration
MinimapConfigAsset
Este es el archivo de configuración donde se encuentra al definición de los iconos para la construcción de estos en el minimapa. Esta definición estará gestionada con los FGameplayTags pudiendo ser del sistema del minimapa o de otros sistemas ya que en la practica serian como Catergorias de Iconos.

Nombre de propiedad | Descripción |
|---|---|
| Definición de la imagen que va a tener el icono como |
| Metadato para nombrar la categoría de icono. |
| Metadato de descripción de la categoría del icono. |
| Define si el icono tiene que ser refrescado porque cambia su localización en el mapa. |
| Metadato para poder definir colores que puede usar el icono. |
| Definición de la clase para que se utilice en la generación del icono. Si está en None se usará la definición por default del |
Crear un MinimapConfigAsset
Para crear esta configuración se puede hacer desde el panel de creación de assets en la categoría de IdealTwin:

Icon Widget Personalizados
Los UserWidgets que son utilizados por el minimapa pueden ser configurados para utilizar clases personalizadas y que a la hora de construir los iconos estos utilicen las clases definidas.
Por defecto todos los widgets estarán generados con la clase que esté en el DefaultIconWidgetClass. Esta clase será aplicada por cada icono definido en la lista al menos que los iconos tengan una clase definida.

Se pueden definir clases especificas por icono dentro de sus settings en IconWidgetClassOverride. Si el valor está vacio usará la clase default y si no será sobreescrita.
Esto nos permite tener un control mas preciso de los iconos y de su apartado visual.
