|
Titel: Terrain Heighmaps Beitrag von: Tinos am 16. März 2008, 17:27:26 Bei meinem Tutorial lade ich die Datei terrain.raw als Heighmap rein.
Jedoch wenn ich bei google solche raw editoren suche find ich nix. Kennt jemand einen Mapeditor, der ein Terrain im raw format erzeugt? Titel: Re: Terrain Heighmaps Beitrag von: SuperMario am 16. März 2008, 20:17:39 Ich hab Terragen mal genutzt. Es erzeugte schon damals faszinierende Ergebnisse und man kann Raw Heightmaps importieren und exportieren:
http://www.planetside.co.uk/terragen/cando.shtml Adobe Photoshop kann auch 8Bit/16Bit Raw Bilder abspeichern. D.h. du pinselst einfach dein Heightmap in Graustufen im Photoshop und speicherst es als .raw. Hier habe ich auch noch was kostenloses gefunden. Ist aber ziemlich rudimentär: http://hme.sourceforge.net/ Ich hab in Google so gesucht: http://www.google.de/search?hl=de&q=directx++raw+heightmap+editor&btnG=Suche&meta= Titel: Re: Terrain Heighmaps Beitrag von: Tinos am 17. März 2008, 07:12:21 danke.
Mit Photoshop kann man auch in *.raw bilder erstellen. mit dem gratistool hme kann man zwar eine schöne heightmap erstellen, aber hab nix gefunden, das man im raw format speichern kann. Noch eine Frage: Kann mir jemand erklären, wie man eine heightmap macht und dazu gleich die texture? Das muss ja zusammenstimmen. Vielleicht gibts ja bei photoshop eine mehode um eine heighmap mit texturen zu machen. Titel: Re: Terrain Heighmaps Beitrag von: SuperMario am 17. März 2008, 13:47:55 Ich glaube, du denkst, das .raw ein spezielles Format für Heightmaps ist. .raw ist ein ganz normales Bild-Format, bei dem die Daten Pixel für Pixel abgelegt sind, ohne jegliche Kompression, wie z.b auch bei BMP (Bitmap).
Ich glaub nicht, das ein raw Bild mehrere Layer oder Bilder enthalten kann, wie z.b. bei tiff, deswegen brauchst du schon 2 getrennte Bilder. Einmal die Heightmap, besteht aus grautönen, wobei je dunker das grau tiefer bedeutet und je heller das Grau, höheres Gelände bedeuet. Un dann brauchst du ein zweites Bild mit der eigentlich Textur. Die 2 Bilder sollte die gleichen Ma??e haben, sonst passt es nicht zusammen. Im Photoshop könntest du z.b. einfach ein 2.Ebene anlegen und über die Heightmap legen, Dann stellst du die Transparenz/Opacity dieser neuen Texture-Ebene auf 70%-80% und pinselst einfach deine Textur passend zur darunterliegenden Height map. Wenn du z.b einen einfach Berg als Heightmap hast, dann malst du an der höchsten Stelle (weiss in der Heightmap) einfach eine weisse Stelle in der Texture, die dann den Schnee darstellt. An den Stellen wo das Weiss ein wenig dunkler wird, kannst du dann eine schöne grass-Textur in die Textur-Ebene malen und weiter unten kann du dann vielleicht ein paar Gesteins-texturen hinzufügen. und so weiter. Oder du schaust dir mal Terragen (http://www.planetside.co.uk/terragen/). Damit kannst echt super Gelände generieren lassen und dann auch noch im 3D Modus das graue Gelände mit einem Textur-Pinsel bemalen. Ich glaub das ging damals auch schon. Ist auf alle Fälle ein Blick wert die Software. Und sie ist für private Zwecke kostenlos. Titel: Re: Terrain Heighmaps Beitrag von: Tinos am 20. März 2008, 15:59:06 Danke für die vielen Tips.
Hätte da noch eine Frage punkto heigtmaps. Hab da ein Beispiel aus dem Buch Inside Microsoft DirectX 9 Spieleprogrammierung, wo es eine Funktion gibt, mit der man einfach die Heightmap Datei laden kann und es in eine Matrize umwandelt. Ich versuche schon seit einiger Zeit, das ich die Kamera an dem Terrain ausrichtet. Damit meine ich das die kamera immer auf der Höhe von dem Y-Wert des Terrains ist, egal wohin ich die Kamera bewege (x- und z-Achse). Aber hab da irgendwelche Fehler. Ist es möglich das man zwischen den Dreiecken runterfallen kann? Meine Vermutung der Matrize ist, dass sie so aufgebaut sein muss das wenn man die matrize mit x und z anspricht die y variable erhält. Ich gehe mal davon aus, dass ihr ohne Quellcode nichts dazu sagen könnt, aber ich zeig euch wie das Terrain geladen wird: Code: D3DXMATRIX matWorld; matWorld=m_GameData.Terrain.MyProperties.GetMatrix(); Wenn ihr noch mehr braucht schreib ich auch die gesamte terrain.cpp und terrain.h rein. jedoch braucht man da wieder die GEObjectPropertis.ccp und .h und weiters die GameMainRoutines.h Aber ich hoffe ihr könnt mir auch so helfen. |