Antworten auf deine Fragen:
Neues Thema erstellen

Export/Highmaps

blumenzocker

Noch nicht viel geschrieben

Hi,
ich arbeite mit C4d und Unity zusammen.
In der Unity Engin gibt es ja die Möglichkeit Terrains zu erstellen.
Nun habe ich ein Terrain in C4d erstellt und möchte dieses in Unity als Terrain importieren. Soweit ich mich erkundigt habe geht das mit Hilfe des .Raw Formates.
Allerdings ist jetzt die erste Frage ob es eine Möglichkeit gibt und wen ja welche, dies umzusetzen?

Das eigentliche Hauptproblem ist eigentlich das Unity nur max. 4096X4096 Texturen/Uv unterstützt was aber nicht für ein Terrain ausreicht (Von der Bemalung/Qualität). Des Weiteren muss man oft noch, mehr oder weniger, winzige höhen Korrekturen vornehmen dies man mit dem Terraintool dann super machen könnte.


Wen mir Jemand weiter helfen könte währe wirklich super :)

Mit freundlichen Grüßen

blumenzocker
 

KBB

Mod 3D | Blaubaer

Teammitglied
AW: Export/Highmaps

Das eigentliche Hauptproblem ist eigentlich das Unity nur max. 4096X4096 Texturen/Uv unterstützt was aber nicht für ein Terrain ausreicht (Von der Bemalung/Qualität).
Kann das sein dass Du da einen Denkfehler machst oder etwas verwechselst? Die Heightmap hat ja nichts mit der Bemalung zu tun, sondern stellt nur die Höheninformation zur Verfügung. Die 16 Bit reichen idR. auch völlig aus, um feinste Abstufungen zu ermöglichen, zudem glättet Unity m.W. intern noch.

Was die Bemalung betrifft, so nutzen Terrains pro Ebene intern 2 Maps: eine gröbere Alphatextur, die besagt, *wo* gemalt wird. Und eine Colormap, die gekachelt und nur dort angezeigt wird, wo die Alphamap es zulässt. Was Du siehst, ist, dass die "Bemalung" mit der Textur nur an der Stelle des Pinsels erfolgt, dabei werden beide Maps in realtime verrechnet und angezeigt. Die Kachelung kannst Du sehr hoch oder klein einstellen, so dass sich bei Nahansicht sehr feine Strukturen ergeben. Um einen schönen Untergrund hinzubekommen, empfiehlt es sich schon, mehrere solcher Texturebenen übereinander zu legen, also z.B. Dreck/Weg/Wiese+Moos/Wiese+Blumen/Moos/Steine/groberStein/ usw.

Wenn Du dann noch "scharfe Ecken" brauchst, importiere die als 3D Sets oder painte sie - siehe auch "paint Details" im Terrain. Überhänge et al kann man eh nicht mit einem Terrain lösen.
Edit: die "reale" Größe des Terrains stellst Du ja über separate Parameter (Menü "Terrain => Set Resolution..") ein. Sollte das trotz RAW Maps immer noch nicht reichen, packst Du mehrere Terrains nebeneinander.
Ab einer gewissen Größe empfiehlt es sich aber eher, nachladen zu lassen.

Das sollte allerdings alles aus der Hilfe heraus klar werden. Vielleicht helfen Dir die Tuts hier auch besser weiter:

http://vimeo.com/album/150503
 
Zuletzt bearbeitet:

kraid

reMember

AW: Export/Highmaps

So wie ich das verstehe hast du das Gelände in C4D modelliert und willst es als editierbares Terrain nach Unity kriegen.

Dafür müsstest du eine heightmap aus C4D rendern und in Unity auf das Terrain anwenden.

Falls du in Unity auch etwas wie per vertex collission auf modelle anwenden kannst, importiere doch einfach direkt das 3D Modell der Landschaft.
Ist dann natürlich nicht mehr mit Unity's Terrain tool editierbar, aber Dinge wie überhänge und Höhlen sind möglich.

Andernfalls wirst du wohl die Landschaft in parallellperspektive von oben rendern müssen um ein Graustufenbild der Topologie zu erhalten.

Probier evtl. mal einen 3D linearen Farbverlauf und ändere die Vektoren auf die Y-Achse um so die Höhenwerte sichtbar zu machen.
Die Werte für Start und Ende sollten dabei natürlich dem tiefsten bzw. höchsten Punkt deines Landschafts Meshes entsprechen und den Raum hier am besten auf Objekt stellen, da der Pivot des Meshes evtl. nicht auf 0,0,0 liegt.

Falls dir eine 4096er map nicht reicht, kannst du ja doppelter oder dreifacher Auflösung rendern und die Map dann im Bildbearbeitungsprogramm in 4096x4096 Stücke schneiden und in Unity mehrere Terrains aneinander setzen.
 

KBB

Mod 3D | Blaubaer

Teammitglied
AW: Export/Highmaps

Falls du in Unity auch etwas wie per vertex collission auf modelle anwenden kannst, importiere doch einfach direkt das 3D Modell der Landschaft.
Ist dann natürlich nicht mehr mit Unity's Terrain tool editierbar, aber Dinge wie überhänge und Höhlen sind möglich.
...
Falls dir eine 4096er map nicht reicht, kannst du ja doppelter oder dreifacher Auflösung rendern und die Map dann im Bildbearbeitungsprogramm in 4096x4096 Stücke schneiden und in Unity mehrere Terrains aneinander setzen.
1. Heightmaps müssen in Unity die Größe 2^x+1 haben. Das wäre also 4097²px. Es gehen aber nur 4096px, die größte von Unity akzeptierte Map ist also nur 2049²px groß.
2. ist Deine Idee zwar gut kraid, vor allem mehrere Terrains zu nutzen. Ich möchte aufgrund der eh schon suboptimalen Speicherverwaltung von Unity aber davon abraten, 4096²px große, eigene Maps auf ein Terrain zu packen (das mag sogar noch gehen),
3. noch mehr davon, 3D Meshes als Terrain zu importieren und mit Kollision zu versehen - das könnte mächtig nach hinten los gehen, wenn dem TE die Terrains schon zu grob sind (die kann man schon sehr fein bearbeiten).

Wenn ich mich recht erinnere, gibt es auch maximal Mesh-Kollision, und das ist echt rechenintensiv. Abgesehen davon, dass man wie Du schon sagtest keine Terraintools mehr anwenden kann. Technisch bedeutet das: kein Massenbewuchs und andere, speicherhungrige Verteilung von "Dingen" (Bäume, Büsche, Gras, Steine..), die zumindest eine Außenwelt prägt. Die Details müssten nämlich jetzt nicht nur mühsam einzeln per Hand aufgebracht werden, die sprengen dann auch garantiert den Speicher, da die Speicherverwaltung eines Terrain wie schon erwähnt eine ganz eigene Geschichte in den meisten 3D Engines ist und völlig anders abläuft. Vor allem Ressourcen schonend :)
Überhänge und Höhlen werden idR. eh als eigene Meshes in Unity eingebracht. Da ist etwas Umdenken erforderlich, aber auch da kann man sich dran gewöhnen.

Probier evtl. mal einen 3D linearen Farbverlauf und ändere die Vektoren auf die Y-Achse um so die Höhenwerte sichtbar zu machen.
Die Werte für Start und Ende sollten dabei natürlich dem tiefsten bzw. höchsten Punkt deines Landschafts Meshes entsprechen..
Ja das ist der normale Weg für s/w-Heightmaps oder auch selbst erstellte Tiefenmaps (anderes Thema). In Cinema nimmst Du dazu einen normalen s/w-Verlauf-Shader und projizierst ihn als Fläche von der Seite. Material Tag auf Objektgröße anpassen, dann sind auch die s/w-Werte auf "unten" und "oben" abgestimmt.
 

kraid

reMember

AW: Export/Highmaps

KBB schrieb:
Ja das ist der normale Weg für s/w-Heightmaps oder auch selbst erstellte Tiefenmaps (anderes Thema). In Cinema nimmst Du dazu einen normalen s/w-Verlauf-Shader und projizierst ihn als Fläche von der Seite. Material Tag auf Objektgröße anpassen, dann sind auch die s/w-Werte auf "unten" und "oben" abgestimmt.
Stimmt, 2D geht auch. Hab in letzter Zeit nur viel mit den 3D Verläufen gearbeitet, da ist das noch so drin.

Das 2^x als Maßeinheit für Texturen in Spiele Engines ist klar, aber das mit dem +1 ist mir neu. Müsste es da nicht eher +2 sein, also 1+2048+1?
Hab in Unity bisher nur mal schnell reingeschnuppert, primär nutze ich Source und neuerdings auch UDK.
 

KBB

Mod 3D | Blaubaer

Teammitglied
AW: Export/Highmaps

Das 2^x als Maßeinheit für Texturen in Spiele Engines ist klar, aber das mit dem +1 ist mir neu.
Das ist komplett Unity-Terrain spezifisch, frag mich bitte nicht wo das her kommt :D
Alle anderen Unity Texturen sind idealer Weise auch nur 2^x, wobei ich grad meine dass es sogar beliebig ist, jedenfalls zum Zeitpunkt des Imports. Soll sagen, optimaler ist es sicherlich mit reinen 2er Potenzen, soweit ich weiß sind ja die meisten Grakas darauf ausgelegt.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.615
Beiträge
1.538.352
Mitglieder
67.528
Neuestes Mitglied
Links Stream es
Oben