Este artículo explora la geometría subyacente a la creación de carreteras procedurales, un proceso común en el desarrollo de videojuegos y simulación. El autor, frustrado por el uso incorrecto de Bezier splines para modelar carreteras, presenta un sistema basado en 'perfiles', que son esencialmente instantáneas de la forma de la carretera en puntos específicos a lo largo de su longitud. Estos perfiles actúan como puntos de control, similar a como los puntos de anclaje y los manejadores definen una curva Bezier.
La clave del sistema reside en la interpolación entre estos perfiles para generar la geometría real de la carretera. El artículo se centra en el problema de conectar dos perfiles con caminos suaves y paralelos. La solución implica un truco geométrico: en lugar de intentar conectar los puntos finales con una sola curva circular (lo cual no siempre es posible), se extiende una línea desde cada punto final en la dirección deseada de la carretera. La intersección de estas líneas de continuación define un punto clave. Luego, se construye una línea perpendicular a la continuación desde cada punto final, y su intersección determina el centro de un arco. Si los puntos finales no están en el mismo círculo, se completa el camino con una línea recta, creando un 'fillet' o esquina redondeada.
Este método se extiende para conectar múltiples perfiles, generando segmentos de carretera paralelos. Sin embargo, el artículo también aborda casos donde las líneas de continuación no se intersectan, lo que requiere la introducción de un 'perfil intermedio'. Este perfil actúa como un punto de transición, permitiendo dividir el problema en dos segmentos más pequeños que pueden resolverse con el método de los fillets. Para encontrar la posición y orientación óptimas de este perfil intermedio, se utiliza una curva Hermite cúbica, que proporciona una interpolación suave entre los perfiles de inicio y destino.
En esencia, el artículo desmitifica la creación de carreteras procedurales, mostrando cómo una combinación de geometría simple, interpolación y un poco de ingenio matemático puede producir resultados visualmente atractivos y eficientes. El sistema es adaptable y puede manejar diferentes tipos de carreteras, desde caminos rectos hasta curvas complejas, y es una alternativa más eficiente y precisa al uso de Bezier splines para modelar carreteras.
