Representación en la nube de puntos
Nota:
La característica de representación en la nube de puntos de ARR se encuentra actualmente en versión preliminar pública.
Esta característica se está desarrollando activamente y es posible que no esté completa. Está disponible como "versión preliminar". Puede probar y usar esta característica en sus escenarios y enviar comentarios.
Para más información, consulte Términos de uso complementarios de las Versiones Preliminares de Microsoft Azure.
ARR admite la representación de nubes de punto como una alternativa a las mallas triangulares. La representación en la nube de puntos habilita nuevos casos de uso en los que convertir nubes de punto en mallas triangulares como un paso previo de procesamiento es poco práctico (tiempos de respuesta, complejidad) o si el proceso de conversión anula detalles importantes.
De forma similar a la conversión de malla triangular, la conversión de nube de punto no descifra los datos de entrada.
Conversión de nube de punto
La conversión de recursos de nube de punto funciona de forma totalmente análoga a la conversión de mallas triangulares: un único archivo de entrada de nube de punto se convierte en un archivo .arrAsset
, que a su vez la API de tiempo de ejecución puede consumir para la carga.
La lista de formatos de archivo en la nube de puntos admitidos se puede encontrar en la sección de conversión de modelos.
La configuración de conversión específica para los archivos de nube de punto se explica en el párrafo de configuración de conversión.
Limitaciones de tamaño
La conversión de recursos de nube de punto tiene un límite máximo de 12,5 mil millones de puntos por recurso convertido. Si es necesario representar conjuntos de datos más grandes, el archivo de origen debe dividirse en varios recursos que obedezcan a la restricción de 12,5 mil millones de puntos cada uno. El representador no limita el número de recursos únicos que se cargan y la técnica de datos de streaming garantiza que la priorización funcione sin problemas en todas las instancias cargadas.
Para el número máximo total de puntos permitidos cargados y representados por ARR, se aplica el mismo tipo de distinciones entre una standard
y premium
sesión de representación, como se describe en el párrafo sobre los límites de tamaño del servidor.
Propiedades de representación globales
Existe una única API para acceder a la configuración de representación global para nubes de punto. El sufijo _Experimental
se ha agregado para indicar que la API está actualmente en vista preliminar pública y podría estar sujeta a cambios.
void ChangeGlobalPointCloudSettings(RenderingSession session)
{
PointCloudSettings settings = session.Connection.PointCloudSettings_Experimental;
// Make all points bigger (default = 1.0)
settings.PointSizeScale = 1.25f;
}
void ChangeGlobalPointCloudSettings(ApiHandle<RenderingSession> session)
{
ApiHandle<PointCloudSettings> settings = session->Connection()->PointCloudSettings_Experimental();
// Make all points bigger (default = 1.0)
settings->SetPointSizeScale(1.25f);
}
Streaming de datos de la nube de puntos
Los archivos de recursos de la nube de punto se configuran automáticamente para el streaming dinámico de datos durante la conversión. Esto significa que, a diferencia de los recursos de malla triangular, los recursos de nube puntuales de tamaño significativo no se descargan completamente en la máquina virtual de representación, sino que se cargan parcialmente desde el almacenamiento según sea necesario.
Independientemente del tamaño del archivo en la nube de punto, la gran ventaja del enfoque de streaming de datos es que el representador puede empezar temprano con la presentación de los datos. La decisión del representador que deben priorizar los datos se basa en la vista de cámara y la proximidad en todos los modelos de nube de punto cargados. No es necesaria ninguna interacción personalizada a través de la API. Además, el streaming de datos administra automáticamente el presupuesto y las prioridades en función de la cantidad de datos concretos relevantes para la vista actual. En caso de que se cree una instancia de varios recursos de nube de punto en la escena, el sistema de streaming se asegura de priorizar los datos sin problemas en todas las nubes de punto, como sería un único recurso. En consecuencia, dividir el archivo de origen es una manera cómoda de solucionar la limitación de tamaño por archivo.
Documentación de la API
- Propiedad RenderingConnection.PointCloudSettings_Experimental C#
- C++ RenderingConnection::PointCloudSettings()