Ajout de l'algo "champs de force" que j'avais oublié de commit.
This commit is contained in:
parent
c963a9ed96
commit
b04126a208
23
roads.md
23
roads.md
|
@ -154,3 +154,26 @@ coordonnées dessus, plus une fonction de densité de points (taille des
|
|||
bâtiments). Dé-transformer la fonction de densité de points,
|
||||
l'utiliser pour générer la grille parfaite avec des densités
|
||||
différentes, puis transformer cette grille.
|
||||
|
||||
Algo champs de force
|
||||
====================
|
||||
|
||||
* On choisit un certain nombre de champs de force
|
||||
sur le quartier à subdiviser (centre, rayon,
|
||||
type = fonction(x,y,vecteur en cours)).
|
||||
* On a un champ de force par défaut qui s'applique
|
||||
sur toute la zone.
|
||||
* On part d'un point avec un vecteur aléatoire.
|
||||
* On demande à fonction(x,y,vecteur) la direction
|
||||
à prendre et la longueur à suivre. La fonction
|
||||
peut renvoyer plusieurs directions/longueurs à
|
||||
prendre pour faire un split.
|
||||
* Quand le segment donné par fonction s'intersecte
|
||||
avec un autre segment, on s'arrête là, et quand
|
||||
il y a un point suffisemment proche, on peut s'y
|
||||
raccrocher avec une certaine probabilité.
|
||||
* Quand on a plusieurs routes en cours de
|
||||
construction en parallèle (split), on les met
|
||||
dans une file d'attente round-robin, et on sort
|
||||
à chaque fois la tête de liste pour la faire
|
||||
avancer, puis on la remet à la fin.
|
||||
|
|
Loading…
Reference in New Issue
Block a user