es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Mostrar grandes colecciones de vectores en WebGL

Estaba investigando three.js como reemplazo de deck.gl en nuestro software existente de WebGL, por razones que no son relevantes para esta pregunta. Una de las fuentes de datos de entrada son grandes datos vectoriales exportados de sistemas CAD. Una escena integra alrededor de 5 colecciones de características lineales y áreas en la escena. Cada una de estas colecciones es de 10-50MB en formato SVG. En deck.gl, hicimos un hack loco pero muy efectivo: convertimos los vectores a coordenadas geográficas y utilizamos la carga perezosa a través de la capa de teselas de deck.gl tile layer. Mejoró enormemente el rendimiento de renderizado, pero requirió ajustes adicionales, ya que la mayoría de los datos todavía están en coordenadas cartesianas.

No he encontrado una carga perezosa comparable de datos vectoriales tan grandes en three.js. Hay muchos cargadores específicos de formato, pero aún es solo una forma diferente de carga inicial. Si bien las teselas vectoriales se crearon en un contexto geográfico, ¿no se debería poder aplicar universalmente el principio de pre-renderización y pre-teselación de datos para la carga perezosa? Pero no pude encontrar ninguna implementación no geográfica, y mucho menos con soporte en three.js. Nuestro hackeo geográfico fue efectivo, pero nunca se sintió correcto porque el modelo es naturalmente cartesiano. En internet sugieren que Cesium podría ser más flexible que deck.gl para nuestros nuevos requisitos, pero preferiríamos evitar el hackeo geográfico, en lugar de adentrarnos más en él.

¿Qué me he perdido?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en three.js, webgl, cad, deck.gl y vector-tiles, el usuario no ha encontrado una carga diferida comparable de datos vectoriales tan grandes en three.js. Aunque existen muchos cargadores específicos de formato, todavía se trata simplemente de diferentes formas de carga anticipada. Aunque los vectores tiles fueron creados en un contexto geográfico, el principio de pre-renderizar y pre-tilizar datos para carga diferida debería ser aplicable universalmente. Sin embargo, actualmente no hay una implementación no geográfica con soporte en three.js. Internet sugiere que Cesium podría ser más flexible que deck.gl para los requisitos del usuario, pero prefieren evitar el geohacking.

Comments are closed.