2D-Durchschnitts-Terrain generieren

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

walski

Ehemaliger Admin

Betreff: 2D-Durchschnitts-Terrain generieren

BeitragDo, März 04, 2004 18:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Ersteinmal: Ich hoffe, ich habe nicht schonmal genau das gleiche gepostet!

Jetzt zum Problem:

Ich möchte ein Terrain generieren, ähnlich dem, wie man es aus der "Worms" Serie kennt.

Nungut, zu Anfang ist soetwas ja noch sehr leicht, man definiert ein paar Punkte nach Zufall und verbindet sie, sieht dann etwa so aus:

user posted image

Das is jetzt ja aber etwas langweilig und grenzt noch nichtmal an das Terrain von Worms.

Also wie macht man es geschickter?
Meine Idee: Anstatt einer Linie, die kontinuierlich von links nach rechts läuft, nehme ich einen Punkt, der einen Winkel vorgegeben hat und alle X Punkte eben diesen Winkel ändert.
TOLL.
Daraus kann sowas entstehen:

user posted image

Das ist schön! Aber eben auch sowas:

user posted image

Das ist dann schon nicht mehr so schön.

Was also tun? Die gleiche Methode mit unzähligen Restirktionen bei jeder Winkeländerung?

Irgendwie ist der Ansatz komplett scheiße!
Also bleibe ich auf der Suche nach neuen, tollen Ansätzen.
In Anbetracht der Inseln, die bei Worms Terrains meist dabei sind, kam ich schon auf folgende Idee:
Man generiere viele, verschieden große "Landklopse" und klatsche sie auf die Karte. Dabei kann es sein, dass ein "Klops" eben Land addiert oder es subtrahiert...

Beispiel:
Man nehme diese:

user posted image

Klopse und setze A und B additiv und C subtraktiv auf ein Terrain:

user posted image

Mal wieder: TOLL!

Problem: Das gleiche wie vorher, denn wie erstelle ich solche tollen "Klopse" denn nun ansprechend?

Ihr seht: Fragen über Fragen und keine richtige Lösung.

Wer mir auf die Sprünge helfen kann ist herzlichst eingeladen!

walski
buh!

TheShadow

Moderator

BeitragDo, März 04, 2004 19:08
Antworten mit Zitat
Benutzer-Profile anzeigen
du kannst prüfen ob sich 2 linien schneiden (siehe blitzbase-codes)

damit kannst du schon einige fehler verhindern...

ich glaube gleich kommt eine frage: wie fülle ich das ding aus:

das ist etwas verzwickter - am besten du unterteilst so eine fläche in Dreicke und füllst mit Dreieckfüllung von BlitzBase...

du kannst auch prüfen ob ein Dreieck links oder rechts"drehend" ist - das hilft beim beim finden von Dreiecken...
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2
 

walski

Ehemaliger Admin

BeitragDo, März 04, 2004 19:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Hm, das mit dem schneiden hab ich mir natürlich auch schon überlegt.
Allerdings:
1. War ich zu faul sone Routine selbst zu schneiden
2. Ist das auch nicht das gelbe vom Ei.

Aber ich werds mit deiner Funktion mal versuchen, vllt bringt das ja brauchbare Ergebnisse.

Das mit dem Füllen is wohl kaum ein Problem Smile
Ich ändere das Terrain nur selten, da könnte ich zur not sogar ne per-pixel Füllung vornehmen. Das mit den Dreicken is aber ne gute Idee.

walski
buh!

TheShadow

Moderator

BeitragDo, März 04, 2004 19:36
Antworten mit Zitat
Benutzer-Profile anzeigen
per pixel wollte ich dir damit auch abreden... aber an sich muss du so oder so einzel pixel malen - mach's dir dann einfacher...
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group