Skip to main content
Skip table of contents

Unit Volume Actor

El Unit Volume Actor es uno de los componentes más importantes dentro del plugin. Representa visual y funcionalmente una unidad de propiedad, permitiendo mostrar datos, realizar selecciones y aplicar filtros según las propiedades de las unidades.


Identificadores únicos y por promoción

Para vincular los datos del actor con la información proveniente de una base de datos, se utilizan identificadores que pueden ser globales o locales a la promoción. Estos identificadores pueden asignarse manualmente o a través del panel de desarrollador, cargándolos directamente en el actor seleccionado.

Propiedad

Descripción

UnitVolumeID

Identificador local a la promoción, utilizado para acceder a la información de una unidad específica

UnitVolumeKeycode

Identificador global de IdealTwin, empleado para obtener información de las unidades en un contexto más amplio

Se puede tener un identificador u otro en el Unit ya que en la busqueda se compruba los dos valores. Si no se encuentra coincidencia con los datos, el volumen quedará inutilizable.


Visualización de los volúmenes

La representación visual de los volúmenes permite identificar la ubicación de las unidades en la estructura 3D, proporcionando además una referencia visual del estado de disponibilidad de las unidades. Para facilitar su reconocimiento, se utilizan cambios de color que reflejan el estado de cada unidad.

image-20241209-172017.png

Configuración visual

Es posible personalizar la representación visual de las unidades utilizando un asset de configuración. Este asset se emplea al asignar los materiales y determinar cómo se utilizará el material, como por ejemplo, cuando el UnitVolume es seleccionado desde el gestor o para cambiar su color según la disponibilidad.

Los materiales y colores pueden modificarse en los assets de configuración, siempre y cuando se haga referencia en el código a las variables especificadas.

  • Para crear un asset de configuración hay que crear un nuevo DataAsset usando la clase UnitVolumeConfig. Para poder setearlo individualmente en el UnitVolumeActor o ponerlo de manera global en la parte de los settings.


Selección de las unidades en el nivel

La representación visual incluye la capacidad de seleccionar unidades individualmente. A partir de esta selección, se pueden gestionar datos o realizar diferentes acciones con la información recopilada.

Esta funcionalidad está gestionada por el UnitVolumeManager, que centraliza la lógica de selección para que múltiples paneles o actores puedan acceder a esta información y ejecutar nuevas acciones.

Además se puede llamar directamente a la implementacion que hace un linetrace que busca colisiones con los UnitVolume o obtener lo usando el cursor.

image-20241209-175007.png

Configuración del TraceChannel

En el proyecto, debe configurarse un TraceChannel exclusivo para la detección de los volúmenes. Esto permite que los rayos (traces) interactúen únicamente con los elementos asociados a los UnitVolumes, evitando interferencias con otros objetos en la escena. En caso de necesitar una configuración diferente, el canal puede personalizarse para permitir interacciones específicas

image-20241209-173022.png

Filtrado de las unidades

Las unidades pueden ser visualizadas u ocultadas en el mapa según las reglas definidas en los filtros. El UnitVolumeManager incluye un FilterManager, que es responsable de registrar los filtros y actualizar la visibilidad de las unidades según los resultados del filtrado.

Estas funcionalidades por lo general se suelen usar para la parte de UI en lo panel y hacer cambios de los valores. Sin embargo los filtros puede ser tambien configurados de manera externa y dejarlos fijados.

image-20241209-191347.png

Aunque esta es una forma de agregar los filtros, es preferible hacerlo desde la interfaz de usuario utilizando la clase específica, para que estos valores sean administrados automáticamente por componentes dinámicos.


Asignación de mapas interiores

Como funcionalidad adicional, se ha integrado una opción para realizar transiciones entre niveles utilizando la variable LinkerMap. Esto permite pasar de un entorno exterior a un mapa interior, comúnmente utilizado para representar espacios como casas modelo. Esta transición se configura directamente en cada UnitVolume.

image-20241209-173433.png

Esta funcionalidad está integrada dentro de los paneles para hacer transiciones entre los mapas. Si se quiere usar para otras implementaciones con obtener la varible y cargar el mapa de manera tradicional.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.