En el renderizado de mapas, las formas complejas como edificios, parques y carreteras se almacenan como polígonos, que son contornos cerrados de vértices. Sin embargo, las Unidades de Procesamiento Gráfico (GPUs) están diseñadas para rellenar triángulos, no polígonos arbitrarios. Para cerrar esta brecha, cada polígono debe ser 'triangulado' o dividido en una serie de triángulos. Aunque existen varios algoritmos para esta tarea, los desarrolladores del motor de mapas de GLOBUS descubrieron que su método anterior, un triangulador Delaunay restringido, era ineficiente para datos a gran escala. Específicamente, procesar 3.7 millones de polígonos de una región de Varsovia tomaba casi tres segundos en un solo núcleo, un cuello de botella que buscaban eliminar cambiando a un método de 'ear-clipping'.
El 'ear-clipping' funciona identificando una 'oreja' (ear), que es una esquina convexa de un polígono donde la línea entre sus dos vecinos no intersecta ninguna otra parte de la forma. Al 'cortar' repetidamente estas orejas, un polígono finalmente colapsa en un conjunto de triángulos. El equipo de GLOBUS desarrolló 'earstrip' para perfeccionar este proceso. Implementaron varias optimizaciones para reducir el costo computacional de la prueba 'is-ear', que es la operación más frecuente en el algoritmo. Las mejoras clave incluyeron la identificación de 'muescas' (vértices reflexivos) para reducir el área de búsqueda, omitir pruebas para polígonos ya convexos y utilizar un sistema de 'cubetas' para ordenar las muescas espacialmente. Estos refinamientos les permitieron procesar los mismos 3.7 millones de polígonos en solo 489 milisegundos, una aceleración significativa sobre el método Delaunay.
Más allá de la velocidad bruta, el equipo optimizó la forma en que se almacenan los triángulos resultantes para mejorar la eficiencia de la GPU. Al identificar anillos convexos dentro de los polígonos, pudieron generar 'triangle strips', un método donde la GPU reutiliza dos vértices del triángulo anterior para formar el siguiente. Esto redujo el número total de índices requeridos para los 21.5 millones de triángulos producidos por su conjunto de prueba. Si bien el método de 'ear-clipping' es más rápido para la mayoría de los polígonos de mapas, el equipo señaló una compensación: para polígonos muy grandes y complejos (más de 257 vértices), el método Delaunay sigue siendo ligeramente más rápido porque la complejidad del 'ear-clipping' crece con el cuadrado del tamaño del polígono. A pesar de esto, 'earstrip' proporciona una alternativa de alto rendimiento y con licencia amigable para tareas generales de renderizado de mapas.
