Seite 1 von 1

Landschaft in 3D

Verfasst: 12.06.2014 17:37
von Gerold1961
Ich habe für eine Fotorealistische Landschaft ein Höhenprofil erstellt.
Dann habe ich versucht über Create Terrain, DefineTerrainTile, usw. die 3D Landschaft umzusetzen.
DefineTerrainTile war einfach anzupassen, aber der Kachelaufbau bereitet mir Schwierigkeiten.

Mein Problem: Im Prinzip müsste ich ein Terrain mit nur einer Kachel (sehr groß) erschaffen.

Das ist nicht vorgesehen und widerspricht auch der Grundidee/-funktion von CreateTerrain, usw. .

Hat jemand eine Idee wie das umzusetzen ist ?

Re: Landschaft in 3D

Verfasst: 12.06.2014 17:54
von Chimorin
Dein Bild muss als Heightmap ja in 513x 513 gespeichert sein.
So, grob gesagt kannst du bei einem Terrain nur diese "Pixel" erhöhen oder absenken. Skalierst du nun dein Terrain größer, wird eben alles in die Länge gezogen, an der Definition von 512x512 veränderbaren Punkten ändert sich nichts.
Verschiedene Terraintiles werden dich nicht weiterbringen, da du ja beim Erstellen des Terrains an sich die Heightmap angibst.
Du brauchst verschiedene Heightmaps. Diese lädst du für jeweils ein Terrain und erstellst je Terrain ein Terraintile.
Die Terrain musst du gemäß deiner Skalierung eben so positionieren, dass sie nicht ineinanderliegen.

Re: Landschaft in 3D

Verfasst: 13.06.2014 00:58
von Gerold1961
Ich kann die Skalierung erhöhen, weil ich mit dem Präzisionsverlust gut leben kann.
Ich schaffe es aber nicht auf die skalierte Fläche die Landkarte.jpg zu legen.
Es entstehen immer viele Kacheln, was mir natürlich nicht weiter hilft.
Das Landkarten.jpg ist 4096 x 4096 groß.

Ich würde das nur sehr ungerne in 513er Felder aufteilen.

Re: Landschaft in 3D

Verfasst: 13.06.2014 08:55
von Chimorin
Oh, sorry, meine erste Antwort war nicht ganz richtig.
Ich habe nichts mit Heightmaps am Hut und dachte, dass diese in CreateTerrain() rein müssen. Das stimmt so aber nicht, die kommen erst in CreateTerrainTile() ins Spiel.

http://www.ogre3d.org/tikiwiki/tiki-ind ... ponent+FAQ
Hier stehen einige Fakten zum Terrain, falls du des Englischen mächtig bist.
Du kannst das schon so laden, wie du das vor hast. Ich meine mich zu erinnern, dass PB da aber Probleme hat und dir einfach nichts darstellt. Einen Versuch ist es wert, eventuell hat sich ja was geändert.

Code: Alles auswählen

 CreateTerrain(#Terrain, Größe, WeltGröße, Skalierung, AnzLayer, Dateiname$, Endung$)
Bei Größe gibst du dann die Größe deiner Heightmap an (Aber -1 Pixel). Ich glaube, da OGRE mit 16x16 Chunks arbeitet, muss es eine auf 16 aufbauende Zahl sein. Heißt: Füg einfach noch einen Rand von 1 deiner Heightmap hinzu, dann kommst du auf 4096².
Die Weltgröße ist einfach je nach Skalierung (1WU = 1meter, 1 km, 1dm,1cm).
Den Skalierungswert verstehe ich gar nicht, eventuell hat der was mit der Heightmap zu tun -> Ausprobieren.

Re: Landschaft in 3D

Verfasst: 16.06.2014 00:49
von Gerold1961
Danke für den Tipp.
Hab das Problem inzwischen gelöst.
Ich hab mich zu sehr an dem Beispiel-Prog aufgehalten.

Wenn man die selbst auferlegte Beschränkung erst einmal überwunden hat, ist alles viel einfacher.

Danke noch mal für den Link, war der richtige Anstoß.

Re: Landschaft in 3D

Verfasst: 16.06.2014 17:57
von Chimorin
Hast du es geschafft, eine größere Heighmap zu laden?