- Dans les jeux de construction de villes, une implémentation réaliste du système routier est un élément central, qui dépasse le simple aspect visuel pour déterminer la solidité structurelle de l’ensemble
- Les jeux existants utilisent des splines de Bézier pour représenter les routes, mais cette approche montre ses limites lorsqu’il s’agit de préserver la courbure et le parallélisme réels des routes
- Dans le monde réel, les routes doivent refléter la distance entre les essieux des véhicules et les contraintes liées aux courbes, alors qu’avec Bézier, la forme se déforme lors des offsets et produit des courbes irréalistes
- Pour résoudre ce problème, l’application de courbes d’ingénierie comme les arcs de cercle (Circle Arc) et les clothoïdes (Clothoid) permet d’obtenir des variations de courbure fluides et des offsets parallèles préservés
- L’auteur a ainsi construit son propre système routier pour dépasser ces limites et prévoit de dévoiler plus tard son processus d’implémentation technique
Le charme des routes et des motifs
- L’auteur retrouve dans les routes la satisfaction procurée par les motifs désordonnés au sein d’un ordre naturel
- Il compare cela aux fourmilières, aux ruches ou aux nervures des feuilles, où des règles simples s’accumulent pour former des structures complexes
- Les réseaux routiers sont eux aussi décrits comme l’un des motifs les plus fascinants créés par l’être humain
- En imaginant les traces laissées par les réseaux routiers même après la disparition des villes, il met en avant leur beauté structurelle
Les jeux de construction de villes et l’évolution des routes
- De SimCity 2000 à Cities: Skylines 2, les systèmes routiers n’ont cessé d’évoluer
- SimCity 4 a introduit les altitudes et routes diagonales, SimCity 2013 les routes courbes, et Cities: Skylines la pose libre et la composition d’intersections
- Pourtant, des problèmes persistent, comme le caractère artificiel des courbes, les rayons de braquage trop brusques ou les bretelles d’autoroute peu réalistes
- Les mods ont permis de mettre en place des voies, des marquages et des courbes plus réalistes, sans pour autant dépasser les limitations fondamentales du moteur
Les limites des splines de Bézier
- Les courbes de Bézier sont un outil mathématique puissant pour relier deux points de manière fluide, et elles sont utilisées dans la plupart des moteurs de jeu
- Mais ces courbes ne conservent ni leur forme ni leur courbure lorsqu’on leur applique un offset ; autrement dit, « l’offset d’une courbe de Bézier n’est pas une courbe de Bézier »
- Cela entraîne des écarts entre courbe intérieure et extérieure, des auto-intersections et des phénomènes de pincement (pinch)
- En conséquence, il est difficile d’implémenter des courbes parallèles reflétant la trajectoire réelle des véhicules, comme sur les routes du monde réel
Application des arcs de cercle (Circle Arc) et des clothoïdes (Clothoid)
- Les arcs de cercle offrent un parallélisme parfait, en conservant exactement la même forme après offset
- Le calcul des intersections entre deux arcs est bien plus simple qu’avec Bézier et reste efficace avec une complexité en O(1)
- En reliant des arcs de rayons différents, on peut construire des formes de routes techniquement cohérentes
- En revanche, les arcs ont une courbure constante, ce qui provoque une variation brutale de l’accélération latérale lors du passage d’une ligne droite à une courbe
- Pour compenser cela, on utilise les clothoïdes (Clothoid)
- Leur courbure augmente progressivement, ce qui procure une direction plus naturelle et un meilleur confort de conduite
- Elles sont mathématiquement plus complexes, mais indispensables à la conception des routes rapides
- Pour des zones lentes comme les intersections urbaines, une conception basée sur les arcs de cercle suffit à obtenir un réalisme convaincant
Pourquoi créer soi-même un système routier
- La plupart des joueurs accordent peu d’importance à la précision de la courbure des intersections, mais le développeur s’y intéresse par curiosité et défi technique
- Le niveau d’implémentation des jeux commerciaux existants est élevé, mais les ressources ou assets accessibles aux développeurs indés restent rares
- Au lieu de simples routes en grille, il a choisi de développer son propre système pour créer un ensemble plus sophistiqué et partageable
- Dans un prochain article, il dévoilera les détails techniques de l’implémentation, et il est possible de recevoir les mises à jour en s’abonnant
Aucun commentaire pour le moment.