Wie Bump-Map auf 2D-Bildern erstellen?
Übersicht

![]() |
hecticSieger des IS Talentwettbewerb 2006Betreff: Wie Bump-Map auf 2D-Bildern erstellen? |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hat vielleicht jemand eine Idee, wie man 2D-Bildern ein vernünftiges Bumpmap verpassen kann?
Die Belichtung im folgendem Bild ist noch statisch, soll aber immer individuell über Dot3 berechnet werden. Die Bump-Zeichenroutinen funktionieren über Draw3D V.3.3 schon recht gut, nur habe ich kein Plan über Möglichkeiten zur Erstellung solcher Bilder. |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
ZaP |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du die nicht zur Laufzeit erstellen willst, gibt es für Gimp ein Plugin was das kann und recht brauchbare Ergebnisse liefert. Zu finden ist das ganze hier: http://nifelheim.dyndns.org/~cocidius/normalmap/ | ||
Starfare: Worklog, Website (download) |
![]() |
aMulSieger des Minimalist Compo 01/13 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der einzig wirklich vernünftige Weg ist es ein Model zu erstellen und das ganze dann entsprechend der Normalen eingefärbt zu rendern.
Das dauert natürlich länger als es durch ein Tool laufen zu lassen, aber es sieht danach in der Regel wesentlich besser aus. Gerade bei solchen 2D-Objekten kann man irgendwelche Tools oder Filter in der Regel vergessen, wenn man eine vernünftige Beleuchtung möchte. Hier muss man schließlich in der Normalmap die gesamten 3D-Informationen speichern, wenn man 3D-Objekte hat bieten die das ja selbst schon und Normalmaps werden hier häufig nur dazu benutzt, der Oberfläche mehr Struktur und Plastizität zu geben. |
||
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans! Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver |
- Zuletzt bearbeitet von aMul am Fr, Feb 06, 2009 16:43, insgesamt einmal bearbeitet
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich habe hier ein TOol um aus einer heightmap eine normalmap errechnen zu alssen(natürlich auch als bild abspeichern):
https://www.blitzforum.de/upload/file.php?id=4616 falls du die zur laufzeit errstellen willst: an dem problem hing ich auch mal und habs aufgegeben. |
||
Warbseite |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hmmm, also, ich will das ganze nicht automatisch erstellen lassen, sondern wirklich selbst bestimmen welche Fläche in welchem Winkel zu ''Z'' steht. Am besten gefällt mir der Vorschlag von aMul, also den Weg eines 3D-Models. Das Problem bei der Sache ist aber, dass ich kein Programm gefunden habe in dem man mal so eben Quads zeichnen kann, welche dann nachträglich in die Z-Koordinate bearbeitet werden können.
Wings3D zum Beispiel ist leicht zu bediehnen. Aber Triangles und Quads damit erstellen schein wohl nicht so einfach zu gehen. Selbst bei unzähligen Blender-Tutorials habe ich kein Video diesbezüglich auf YouTube gefunden. Am besten würde ich es finden, wenn man in einer nicht perspektivischen Ansicht über eine gescante Zeichnung die Quads mit der Maus einfach so frei erstellen, und im nachhinein dann die Z-Tiefen bearbeiten und glätten kann. Ich würde mir auch selbst so ein Programm schreiben, nur ein Dateiexporter zu schreiben um die selbst erstellten Models dann z.B. mit Wings weiter zu bearbeiten, scheint dann doch etwas zu kompliziert. Aus diesem Model müste sich dann recht leicht eine Bumpmap erstellen lassen. |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
Chrizz |
![]() Antworten mit Zitat ![]() |
---|---|---|
Was brauchst du denn jetzt genau? Eine Bumpmap, also eine Hightmap oder eine Normalmap? Denn wenn du nur eine Hightmap brauchst kannst du die auch selber zeichnen, das geht schneller als das ganze zu modellieren und dann daraus die Map zu ziehen. | ||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich brauche eine Bumpmap. Also die Dinger mit komischen Farben wo Rot für X, Grün für Y und Blau Licht aus der Z-Richtung steht. Um diese aber erstellen zu können, bräuchte man ja nun im idealfall ein einfaches 3D-Model um aus diesem dann eine Bumpmap erstellen zu können.
Wie man so präzise eine Highmap erstellen soll, ist mir zur Zeit noch ein Rätzel. Wenn ich nun mit der Maus so etwas zeichnen wolle, dann wäre das alles sehr hügelig und das Auto hätte kaum noch klare Linien als viel mehr eine zerbeulte Blechbüchse. Aber wenn du da eine vernünftige Rangehensweise hast, dann bin ich natürlich ganz Ohr. ![]() |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
naja, die grafikkarte interpoliert ja die werte zwischen zwei pixeln, wenn du also mit weichzeichner oder farbverläufen arbeitst sollte das doch gehn?
und sollte man nich prinzipiell aus einer hightmap gut eine normalmap berechnen können? |
||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
ZaP |
![]() Antworten mit Zitat ![]() |
---|---|---|
Am einfachsten würde sich wohl aus der Grafik eine Heightmap erstellen (manuell versteht sich) und diese dann in eine Normalmap umwandeln lassen. | ||
Starfare: Worklog, Website (download) |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aus einer Highmap kann man ganz gut eine Bumpmap erstellen lassen. Das Problem ist aber folgendes: Wie soll man denn zum Beispiel aus dem oberem Beispielbild eine vernünftige Highmap erstellen? Im oberen Fahrzeug ist das ganze Fahrzeug gewölbt und die obere Hälfte hat eine Zierkante die ebenfalls geschwungen ist. Mit Airbrushwerkzeugen kann ich es sicherlich nicht erstellen. Außerdem bietet mir eine Bumpmap auch die Möglichkeit von weiteren Details. In diesem Beispiel mal die Spalten zwischen Einzelteilen wie die Türkanten. Die auch einzelnd mit Schattierungen versehen werden könnten. Ein Weichzeichner scheidet also grundsätzlich aus. Ewiges maskieren um grobverläufe auf Einzelebenen anzuwenden scheint mir auch etwas suspekt. So würden harte Kanten entstehen, wo keine sein sollten etc... Also, wer eine Möglichkeit hat immer her damit. Aber mir scheint das ganze nicht so mal eben schnell zu erledigen sein, mit einfach mal eine Highmap zu erstellen.
Die Frage als. Welches 3D-Programm erlaubt es schnell und einfach Quads in einer Ebene zu erstellen, die man dann nachträglich noch verändern kann. Meine Idealvorstellung wäre: Man zeichnet auf der Z-Ebene 0 über ein gescantes Image die Konturen und Kanten des Bildes mit Quads nach, und manipuliert dann im nachhinein die Tiefe einzelner Teile um aus dessen die Wölbungen zu generieren. Aus dieser ''Höheninformation'' kann man dann die Highmap erstellen, aus welcher dann die Bumpmap ensteht. Aber ich kenne kein Programm, welches erlaubt so einfach Quads zu erstellen. Ich hab mal ein Beispiel erstellt: Gelb = Konturlinien Rot = Detail-Konturlinien Weiße Pfeile = Vektor wohin es nach hinten weg geht Schwarze Pfeile = Vektor wohin es nach hinten weg geht, aber nur ganz leicht - Untere Zeichnung zeigt eine Seitenansicht in der Mitte vom Fahrzeug. Auch hier meiner Meinung nach kaum mit manuellen Mitteln als Highmap zu schaffen. Ich glaube nicht, dass man eine Highmap manuell annähern richtig zeichnen kann. Man würde über das gesamte Fahrzeug zu viele unebenheiten rein bringen, die man so als Highmap nicht erkennen würde, aber als Bumpmap deutlich werden. Edit1: Ich hab mir grad das *.obj -Format angesehen, welches vom Aufbau recht einfach ist. Ich werden versuchen ein eigenes Programm zu schreiben, mit welcher Hilfe ich solche Quads zeichnen kann um die gespeicherte Datei dann mit Wings3D zu öffnen um ggf. weitere smooth-Effekte und anderes zu bearbeiten. Dieses Modell müßte dann noch mit einem Programm als Vorlage für eine Bumpmap diehnen. |
||
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
vllt könntest du auch einfach ein grid in blender erstellen und dann die textur drauf und ein bisschen mit dem sculpwerkzeug darauf losgehen
könnte nur vllt ein wenig ungenau an den kanten werden, aber die werden ja später nich verwendet |
||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
Chrizz |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mhm, also wie ihr so einfach aus einem 3d Modell eine Highmap ziehen wollt ist mir allerdings auch ein Rätsel. Der einzige mir bekannte Weg ist ein z depth Rendering (Beispiel siehe hier). Keine Ahnung welche Renderer außer VRay diese Technik beherrschen. VRay denke ich dürfte für dich wohl entfallen, da es zu teuer ist.
Bleibt also nur die Variante mit dem Selberzeichnen. Ich werde mal versuchen, dir eine Hightmap von dem Auto zu erstellen. |
||
![]() |
mahe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Müsste mit Blender auch mittels "bake rendering" gehen, oder? | ||
ʇɹǝıdɯnɹɹoʞ ɹnʇɐuƃıs - ǝpoɥʇǝɯ-ɹoɹɹıɯ ɹǝp uı ,ɹoɹɹǝ, |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Chrizz, würde mich freuen, wenn das Ergebnis gut aussieht und sich auch einfach erstellen lässt. Auf jeden Fall bin ich mal gespannt.
Zu dem *.obj-Dateiformat habe ich es bis auf folgendes reduzieren können: Code: [AUSKLAPPEN] o BumpVorlage
v -2 +1 0.0000 v +1 +1 0 v +1 -1 0 v -1 -1 0 f 4 3 2 1 - Erste Zeile ''o'' bestimmt den Objektnamen - Die nächsten Zeilen ''v'' geben die X Y Z -Vertexkoordinaten vor. Das sind Floats, müssen aber keine Nachkommstelle haben. - Die letzt Zeile ''f'' bestimmt die Verbindungsreihenfolge (gegen den Uhrzeigersinn) Diese Datei lässt sich mit Wings3D fehlerfrei importieren und weiter bearbeiten. |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Chrizz hat Folgendes geschrieben: Mhm, also wie ihr so einfach aus einem 3d Modell eine Highmap ziehen wollt ist mir allerdings auch ein Rätsel.
Mit einem Code in Blitz ginge das relativ schnell, vor allem, weil man ja nur eine Frontansicht braucht. Entweder Quick'n'Dirty mit CameraPick oder für grosse Modelle die Z-Daten aus der Position der Vertices interpolieren. Eine Normalmap ginge auch entsprechend schnell, Blitz bietet ja so tolle Befehle wie PickedNX ![]() Das einzige Problem bleibt weiterhin das 3D-Modell, was ja auch hectics ursprüngliches Problem ist. Mir fiele dazu nur die Möglichkeit ein, sich halt einen Editor zu schreiben, der das beherrscht, was man braucht - aber das ist natürlich wieder Zeitaufwändig. |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
NightPhoenix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Soweit ich weiß sind hectics "Bumpmaps" mit dem blau, lila, grün "Normalmaps"
Und "Heightmap" = "Bumpmap" Nur um mal die Verwechslungen zu klären ![]() @Chrizz Doch man kann dieses z-depth rendering eigentlich recht easy machen. Man muss in dem Modellierprogramm (was auch rendern können muss) einfach auf das Modell planar ein Farbverlauf schwarz-weiß (glaube das heißt Radient) ziehen, sodass die weißen Stellen zu der Renderkamera hin zeigen. Dadurch erhält man eine super Heightmap/Bumpmap ![]() |
||
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
so, ich hab das mit dem sculp versucht, und ich hatte ienfach zu wenig skills um nich nur eine buckelige fläche zu kriegen ![]() |
||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
Chrizz |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Noobody: Stimmt, an die Möglichkeit, dass man das mit Blitz realisieren kann hab ich überhaupt nicht gedacht. Das wäre allerdings eine sehr gute Alternative.
@mahe: Das man mit texture-baking sich auch Normalmaps baken kann ist mir neu, man lernt halt nie aus. ![]() @Nightphoenix: Das is dann aber ein "faking z depth". Solange es seinen Zweck erfüllt ist es legitim. Ich brauchte diesen z depth kram bisher auch nicht. Hab meine Bumpmaps bisher immer selber gemacht. MfG Chrizz |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich hab es nun zumindest zufriedenstellend geschafft. Dazu habe ich ein Editor geschrieben, mit welchen man dann Quads einzeichnen kann. Beim speichern wird eine 3D- *.obj -Datei erstellt, die ich dann mit Wings3D geladen habe, um diese weiter zu bearbeiten. Das ganze habe ich dann als *.3ds abgespeichert, und mit einem anderem BB-Programm daraus eine Highmap erstellt. Die Bumpmap habe ich dann letztendlich nun noch mit CrazyBump (Trial-Version) erstellt.
Wer sich ein Bild davon machen möchte, habe ich ein Archiv hochgeladen. Es zeigt das obige Fahrzeug mit Bumpmap. Dieses wird soweit von der Draw3D V.3.3 unterstützt. Allerdings gefällt mir der ganze Lade- und Organisierungsaufwand nicht. Vor allem, wenn man mehrere Teilbilder aus einem Image mit Bumpmapping anzeigen will, muß man alles immer wieder neu laden und grabben. Vielleicht fällt mir noch was dazu ein. Der Code (ohne der Draw3D V.3.3) ist zur Besichtigung beigelegt. https://www.blitzforum.de/upload/file.php?id=4621 Denoch vielen Dank an die Hilfe... |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
ke^kx |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Sieht schonmal verdammt nice aus ![]() Nur an der oberen Kante des Bildes gibt es noch ne etwas störende Linie, sieht man besonders gut bei Vim 1, aber auch bei 0.5 ist es noch sichtbar. Auf alle Fälle trotzdem top ![]() |
||
http://i3u8.blogspot.com
Asus Striker II Intel Core2Quad Q9300 @ 2,5 GHz (aber nur zwei Kerne aktiv aufgrund der Instabilität -.-) Geforce 9800 GTX 2GB RAM |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group