Ich entwerfe gerade eine Stadt und möchte, dass der Wohnungsbau einem iterativen Design folgt. Häuser bestehen aus miteinander verbundenen sechseckigen Räumen.
Familien werden in meiner Stadt aufgrund einiger sozialer Dinge, die nichts damit zu tun haben, sehr groß, und Bauarbeiten werden oft von Einwohnern durchgeführt. Die Regeln müssen also einfach genug sein, um von der allgemeinen Bevölkerung verstanden und in angemessener Zeit nur mit Lineal und Kompass ausgeführt zu werden (keine riesigen Algorithmen, für deren Ausführung ein Computer erforderlich ist). Dieser Regelsatz muss mindestens 2 Meter Platz zwischen den Häusern lassen (zum Gehen und Radfahren). Es darf keine Kollisionen, Überlappungen oder Einschlüsse geben (eine langsam wachsende Familie sollte nicht von ihren schneller wachsenden Nachbarn eingefangen werden).
Die einzigen Lösungen, die mir eingefallen sind, führen zu einer unglaublich regelmäßigen und langweiligen Stadt, die mit Unregelmäßigkeiten jeglicher Form nicht umgehen kann. Ich möchte, dass meine Stadt eine organische/fraktale Qualität hat.
Der Grund, warum Ihr Design langweilig wirkt, sind die Regeln, die Sie aufgestellt haben. Eine Stadt ist organisch, die meisten der alten „interessanten“ Städte hatten die seltsamsten Regeln. Amsterdamer Häuser wurden nach Breite besteuert. In Paris mussten die Balkone ausgerichtet werden. In alten ummauerten Städten gab es einen Anreiz, innerhalb der Sicherheit der Stadtmauern zu bleiben, also tauschen Sie Platz gegen Sicherheit und bauen klein.
Wenn Sie anstelle von logischen einige willkürliche ästhetische Regeln einführen, erhalten Sie ein organischeres System. Verlieren Sie beispielsweise die erzwungene Lücke zwischen allen Grundstücken zugunsten eines sechseckigen Straßennetzes. Das bedeutet, dass Menschen, die ihr Grundstück aufgrund der Familiengröße überdehnen, auf ein neues Grundstück mit mehr Platz zum Erweitern umziehen müssen.
Land ist in Stadtzentren teurer, die Menschen bauen eher auf kleinerem Grund als außerhalb. Es ist billiger, außerhalb der Stadt zu bauen, aber wenn die Stadt sich ausdehnt, werden Sie jetzt im Zentrum große alte Häuser außerhalb der Stadt bekommen, die von kleinen Wohnungen mit hoher Dichte umgeben sind.
Dies ermöglicht den Aufbau kleiner Immobilien im Stadtzentrum und größerer in den Vororten, jedoch mit gelegentlichen Reststücken wie alten Landvillen in der Nähe eines Stadtzentrums (siehe Lauderdale House oder Buckingham Palace als Beispiele für diesen Effekt).
Neue Grundstücke werden entlang bestehender Straßen gebaut, bevor neue Straßen gebaut werden, so dass auf Hauptstraßen längere Blöcke mit größeren Häusern auf mehr Land gebaut werden, während Nebenstraßen mit kleineren Blöcken mit kleineren Häusern gebaut werden, wenn der Bodenwert steigt.
Dinge zu tun:
Stellen Sie Bereiche vor, in denen die Menschen sein möchten: Dies führt zu einer höheren Dichte und teureren Wohnungen.
Stellen Sie Bereiche vor, in denen die Menschen nicht sein möchten: Dies gibt eine höhere Dichte an Wohnungen mit geringem Wert (Slums), machen Sie diese vielleicht sogar quadratisch, damit sie sich als billige Wohnungen abheben. Dann wird die Regeneration sechseckige Wohnungen in quadratischen Parzellen haben.
Die Vororte: Etwas langweilig, Immobilienwert abhängig von der Grundstücksgröße.
Rauschen hinzufügen: Flüsse, Parks, Seen und Stauseen sowie Topographie.
Zusammengefasst: Strenge Regeln machen langweilige Städte .
Rauschen hinzufügen. Wenn Ihr Terrain einheitlich ist, wird die Stadt es auch sein. Führen Sie zuerst einen Perlin- oder Simplex -Rauschgenerator über die Karte aus und erstellen Sie Orte, die nicht verwendet werden können, weil sie zu hoch oder zu niedrig sind. Sie könnten auch „Freiraum“-Verordnungen erlassen, die verlangen, dass für jeweils 3 gebaute Hexfelder 1 Hexfeld offen gelassen wird. Sie könnten Aberglauben haben, dass einige Prozent folgen und sich niemals mit einer bestimmten Hex-Randnummer verbinden werden. Sie müssen nur eine gewisse Zufälligkeit zulassen.
Sehen Sie sich zum Thema organisches Design L-Systeme an . Legen Sie zuerst Ihre Straßen fest, laufen Sie zufällige Entfernungen und platzieren Sie dann entweder eine Gabelung (Y) oder schießen Sie von einer kleineren Seitenstraße oder einem Baugrundstück ab. Bei jeder Iteration bauen Sie entweder die Straßen an Endpunkten weiter aus oder bauen Häuser an Grundstückspunkten.
Eine Suche auf der Seite „Procedural Road generation“ wird Ihnen viele Recherchen liefern, die von Leuten durchgeführt wurden, Sie müssen sie nur auf Ihr System anwenden.
Es gibt viele Softwareprogramme, die auf die prozedurale Generierung von Städten spezialisiert sind; wie dieses hier: https://youtu.be/yI5YOFR1Wus Ich würde einen Haufen von ihnen befragen, entweder um einen zu finden, den man verwenden kann, oder um herauszufinden, was sie tun, was Ihnen gefällt. Ansonsten, wie die Person oben sagte, versuchen Sie es mit der Mathetafel.
Wende einfach die Regeln an, die du hast, aber wende sie organisch an.
Teilen Sie die Karte in Hexfelder, jedes so groß wie ein Raum. Legen Sie auch die "Straßen" um die Sechsecke herum.
Streuen Sie "Saatpunkte" um die Sechsecke herum, um Ihr Ausgangspunkt zu sein.
Verwenden Sie einen Zufallszahlengenerator von 1->X+1, wobei X die Anzahl der besetzten Felder ist, um eine Zahl zu generieren.
Wenn die Nummer einer Familie entspricht, wird sie erweitert. Sie wählen ein leeres benachbartes Sechseck aus und erweitern es (malen Sie es in ihrer Farbe aus) und füllen die Straße zwischen diesen beiden Sechsecken aus. Beachten Sie, dass sie ihr Gebäude von überall aus bauen können, wenn ein Hexfeld ausgewählt wird, das sie besetzen, nicht nur von diesem Hexfeld aus. Wenn es keine leeren angrenzenden Sechsecke gibt, wachsen sie nach oben – eines der Sechsecke wird zweistöckig (oder dreistöckig oder was auch immer).
Wenn x+1 gewürfelt wird, hat sich eine Familie geteilt, wählen Sie einen neuen Punkt und füllen Sie ihn mit einer neuen Farbe aus.
Im Allgemeinen sollten sich Gebäude von ihren nächsten Nachbarn weg ausdehnen und nicht auf sie zu und eine Einkreisung vermeiden.
Stoppen Sie, wenn Sie denken, dass Ihre Siedlung genug bevölkert ist.
Dadurch entsteht ein organisches Stadtgefühl mit Gebäuden unterschiedlicher Größe, dichter besiedelten Gebieten, die nach oben wachsen usw.
Der beschriebene Algorithmus wird tendenziell größere Familien bevorzugen, die größer werden, sodass Sie mehr Variationen in den Größen erhalten, und er wird tendenziell weitläufige einstöckige Gebäude bevorzugen.
Wenn Sie einheitlichere Größen bevorzugen, können Sie eine zufällige Familie zum Wachsen auswählen, um allen die gleiche Möglichkeit zu geben.
Wenn Sie mehr Höhe bevorzugen, können Sie beim ersten Algorithmus bleiben, aber verlangen, dass das Wachstum von der ausgewählten Zelle aus erfolgt. Die Mitte von Häusern steigt dann tendenziell an, auch wenn die Ränder noch Raum zum Ausdehnen haben.
Machen Sie, um es kurz zu machen, eine Bienenstockkonfiguration .
Was ich meine ist, dass jede Familie eine zugewiesene Losgröße hat. Dieses Grundstück ist ein großes Sechseck mit Platz für eine bestimmte Anzahl von Zimmern.
Umgeben Sie nun jedes Grundstück mit einer 2-Meter-"Straße" für den Handel.
Auf diese Weise kann jede Familie nach Bedarf expandieren, es gibt immer Platz für Reisen zwischen den Häusern, und alle Häuser bestehen aus ineinandergreifenden sechseckigen Räumen.
Marion
Bob Hopeldorf
InstantMuffin
Babika Babaka
James
James
Der Nate
Der Nate
Bob Hopeldorf
Der Nate