Eine Kettenaufgabe

26 Aug.

Am Anfang war eine Tür

Weil sich der Spieler auf einem Raumschiff aufhält werden auch Türen und Fahrstühle benötigt. Also habe ich in Blender fix einen Fahrstuhl gezimmert, nach UE importiert und mit Nudelcode versehen, so dass der Fahrstuhl hochfährt, verweilt und wieder nach unten fährt. Also nichts besonderes.
Da ich dieses Mal meinem Motto treu bleibe, mich nicht beim Modeln in Details zu verlieren, mache ich einfache Platzhaltergrafik.

Bei der Tür dachte ich mir, komm, die machst’e etwas hübscher. Also über Pinterest Ideen gesammelt und mich zügig für eine Tür entschieden. In Blender nachgebaut, UVs gemacht und ab nach UE. Cool, läuft wie geschmiert. Die Türblätter sind einfache Rechtecke, haben aber zumindest einen Bevel bekommen. Daraus wieder einen Actor gebastelt und nun geht die Tür auf, wartet 3 Sekunden und geht wieder zu. Bis dahin lief alles super und ich war im Flow.

Dann kamen … ID-Cards

Dann kam ich auf die Idee ID-Karten einzubauen. Irgendwie gehören für mich ID-Karten zu einem Raumschiff. Außerdem macht es das Spiel wieder etwas interessanter, wenn man nicht sofort über all hin kann.
So ein System dürfte auch keine große Sache sein, dachte ich mir und legte los.

In Blender habe ich mir wieder eine Platzhaltergrafik erstellt. Obwohl ich mich nicht in Details verlieren wollte, gehören für mich auf so eine Karte auch das Gesicht vom Karteninhaber.
Fotografieren wollte ich nicht, zum Zeichnen habe ich kein Talent und so habe ich BlueWillow ausprobiert und mir ein paar Bilder von Spaceheroes machen lassen. Die Ergebnisse waren absolut brauchbar.

OK, Textur fertig, ab nach UE, ein Material erstellt und der Karte zugewiesen. Anschließend habe ich den Nudelcode angepasst. Und schon wieder ein Erfolgserlebnis. Tür bleibt verschlossen wenn man keine Karte hat und öffnet sich wenn man sie vorher aufgenommen hat.

jetzt kommt Farbe ins Spiel

Ich war begeistert wie gut alles bis zu diesem Punkt geklappt hat. Kurz darauf überlegte ich mir, dass es ein mehrfarbiges System sein müsse. Zudem wurde mir bewusst, dass die Textur der ID-Karte eine Auflösung von
1024 x 1024 hatte. Wenn ich 4 Farben umsetzen wollte, dann ist das die reinste Verschwendung für ein Handyspiel.

4 UV Maps nach UE

Also wieder zurück zu Blender, die UVs der ID-Karte um 0,5 verkleinert und links unten in die Ecke geschoben. Insgesamt habe ich mir 3 weitere Kopien der UV-.Map erzeugt links oben, rechts oben und rechts unten platziert. Das neue Modell mit den 4 UV-Maps nach UE exportiert und kontrolliert ob alle UV-Channels den Import „überlebt“ haben. Dem war auch so. Ich war guter Dinge, weil bislang alles wie am Schnürchen lief.

denkst’e

Doch hier endete meine Glückssträne.

Mein Ziel war es einen Actor zu machen, das Mesh der ID-Karte zuzuweisen und über eine Variable im Eigenschaftenfenster den Farbcode der Karte zu steuern. Ich dachte, wenn ich nur lange genug suche finde ich ein Tutorial, mit den Blueprints die ich brauche.
Um es abzukürzen, ich habe einige Abende lange gesucht und nichts gefunden, um per Blueprint im Material die UV-Channels zu verändert. Meine Recherche führte mich dann zu den „Material Instances“. Nach längeren hin und her und viel herumprobieren habe ich es geschafft.
Die Lösung setzt sich aus einem Material, dynamic Branch die man leicht über Scalar-Parameter steuern kann zusammen. Hier ein paar Bilder, die die Lösung skizzieren.

Elegant ist anders

Die Umsetzung ist in meinen Augen nicht elegant. In meinen Augen hätte es etwas geben müssen das ich die UVs direkt beeinflussen kann. Von einem Experten der Unreal Engine bin ich noch extrem weit entfernt, aber ich glaube, dass es keine andere Lösung gibt und es sicherlich technische Gründe gibt warum es nicht direkt geht.

Mein Ziel habe ich am Ende erreicht und es macht mir Spaß Türen im Editor zu setzen, ID-Karten zu verteilen, die Farben zu setzen und alles Funktioniert wie gewünscht.

Meine Meinung zu AI-Tools in meinem Projekt

21 Aug.

Ich sage Nein

Ausgelöst durch Chatgpt vor einigen Monaten, schießen diese Tools wie Pilze aus dem Boden. Ich frage mich immer, wie es auf einmal zu dieser Flut an Tools gekommen ist. Zuerst hat es sie nie gegeben und als ob es einen Startschuss gegeben hätte, sind sie so zahlreich geworden als wäre es jetzt ein leichtes so etwas zu programmieren.
Auch wenn diese Materie für mich äußerst interessant ist, habe ich mich nicht näher damit beschäftigt. Ich kann mir nur vorstellen, dass viele dieser Tools auf anderen Aufsetzen, quasi nur ihren Namen drauf „beppen“.

In den vergangenen Monaten habe ich mich ein wenig, mit den gebräuchlichsten Tools befasst. Von Midjourney war ich natürlich sehr beeindruckt, was damit an Bildern erzeugt werden kann. Ganz kostenfrei ist die Nutzung leider nicht, und so habe ich mich nicht weiter damit beschäftigt.

Ich habe an mich den Anspruch alles in meinem Spiel selber zu erstellen. Geht auch nicht anders, weil es in meinem Freundes- und Bekanntenkreis an Verrückten wie mich mangelt.

Ich sage Ja …

Es ist tatsächlich so, dass die Ideen aus mir nur so heraussprudeln. In OneNote erfasse ich alle Ideen. Auf diese Weise vergesse ich nichts und kann auch Ideen ausfiltern, die nicht so gut sind. Inzwischen hatte ich die Idee, dass einige der Türen sich nur durch eine ID-Karte öffnen lassen. Daher habe ich mir fix wieder eine Platzhaltergrafik erstellt, nach UE exportiert und die Logik verdrahtet.
In Blender kam mir in den Sinn es doch noch etwas aufzuhübschen. Zu jeder ID-Karte gehört auch ein Bild des Besitzers der Karte. Allerdings bin ich In Sachen Zeichnen unterirdisch und so kam ich auf die Idee ein AI-Tool mit der Erstellung von Raumschiffhelden zu bemühen.

… ja, aber

Schlussendlich habe ich mir von dem Tool Bluewillow einen Satz an Weltraumhelden erschaffen lassen. Diese nutze ich im Augenblick auf meinen ID-Karten.
Also, ich habe eingesehen, dass diese Tools, gerade für Einzelkämpfer, sehr hilfreich sein können, aber ich werde alle Bilder und Grafiken kennzeichnen, die von einem AI-Tool erstellt worden sind.

Im Abspann eines Filmes tauchen schließlich auch alle beteiligten auf, die an dem Film gearbeitet haben und ich möchte mich nicht mit fremden Federn schmücken. Am Ende des Spiels bleibt noch genug Platz für mein Ego.

Gamepad Steuerung | XBOX-Controller

19 Aug.

Umsetzung der Steuerung

Jedes Spiel benötigt, dann und wann die Eingabe des menschlichen Spielers, der in die Welt eingreift. Am PC kann es die Maus in Kombination mit der Tastatur sein oder man schließt sich sein Gamepad an. Am Handy wird das Gamepad simuliert in dem links und rechts kleine „Steuerungssticks“ eingeblendet. Wenn man Rennspiele oder einfach mal Brawlstars ausprobiert hat, der merkt, dass diese Art der Steuerung unvorteilhaft ist. Auf die „Sticks“ werde ich nicht verzichten, wollte aber mal ausprobieren ob ich einen Gamepad in das Spiel integrieren kann.

Dafür habe ich erst einmal einen Wireless Adapter bestellt, den ich bei Amazon abends um 19:00 Uhr geordert und am kommenden Tag geliefert bekommen habe. Der PC hat ihn stillschweigend erkannt und ich habe meinen Controller problemlos pairen können.

Unreal Engine Gamepad auf PC

Mit wenigen Tests hatte ich raus, wie ich den linken und den rechten analogen Stick ausgelesen bekomme und habe, weil´s Spaß macht auch gleich zwei Button eingebaut. Ein prima Erfolgserlebnis. Innerhalb eines abends hatte ich alles hinbekommen.

Allerdings…

Die Sticks geben analoge Float-Werte zwischen -1.0 bis 1.0 aus, die in die Bewegung des Charakters übersetzt werden. Wenn der Stick jedoch in der neutralen Stellung verbleibt liefert der Input immer noch Werte ungleich 0.0 was dazu führt, dass man immer leicht „slidet“. Im Augenblick behelfe ich mir damit, erst dann die Werte an den Charakter zu geben, wenn der Wert außerhalb von -0.025 und 0.025 liegt.
Mal gucken ob mir noch etwas besseres einfällt.

Neuanfang | was ist passiert | Startschuss

17 Aug.

Neuanfang

Warum Neuanfang wenn noch nicht einmal das erste Projekt fertiggestellt ist? Wenn man als Einzelgänger ein Spiel umsetzen möchte, dann ist das ein großer Schritt. Das Vorhaben darf man nicht unterschätzen. Mir war damals schon bewusst, dass es eine Menge Zeit braucht, so etwas umzusetzen. Trotzdem überwog in der Vergangenheit der Alltag den man nicht einfach ignorieren kann.
Meiner Ansicht nach kann ich nun einen Neuanfang machen. Warum?

was ist passiert

Privat ist natürlich eine menge Passiert. Auch wenn es nicht viel ruhiger geworden ist, ist es jetzt besser handelbar.
Zugegebener Maßen habe ich mein Projekt tatsächlich abgeschrieben und geistig an den Nagel gehängt. Später jedoch merkte ich, dass der Wunsch in mir, ein Spiel zu machen wieder lauter wurde.

Wieder etwas späte entwickelte ich eine neue Idee für das Spiel, was noch einmal stimmiger anfühlte.

Startschuss | Google Entwicklerkonto

Für mich war der endgültige Startschuss für die Entwicklung des Spiels, dass ich mir nun endlich ein Entwicklerkonto bei Google erstellt habe. Prinzipiell ist das nichts schwieriges, jedoch habe ich keinen anderen Weg gefunden die Entwicklergebühr zu bezahlen als über eine Kreditkarte. Ich habe immer versucht, das Geld über PayPal zu überweisen, aber das klappte nicht. Auch über den Google-Support kam ich nicht weiter.
Irgendwann habe ich die Gebühr über eine Kreditkarte bezahlt und musste mich im Anschluss Ausweisen (Mein Ausweis war zu dem Zeitpunkt nur noch wenige Wochen gültig). Zum Glück war ich bereits am nächsten von Google freigegeben.

Fleißarbeit Dokumentation

Von nun an bin ich wieder fleißig dabei meine Notizen für das neue Spiel zu überarbeiten und anzupassen. Vor allem halte ich mich an meine Vorgaben. Die Hauptvorgabe ist, egal welche 3D Objekte ich erstelle, sie sollen Stellvertretercharakter haben und auch erst einmal behalten. Bislang habe ich, teils unbemerkt, immer wieder sehr viel Detailarbeit in die Objekte einfließen lassen und das hielt auf.

Jetzt mache ich eine Tür mit zwei Rechtecken und fertig. Dann ab in UE. In eine Blueprint wird das schnell zu einem Objekt, das ich im Level platzieren kann und inzwischen geht die Tür auf und nach einer kurzen Wartezeit auch wieder zu. Ab zum nächsten Teilstück.

So geht es weiter.

Lange Zeit Abwesend

02 Feb.

… aber mit zwei großartige neue Quellen zurück

Eines vorab. Ich gebe hier meine eigene, persönliche und vor allem unbezahlte Meinung wieder!

Ein sehr lange Zeit ist aus verschiedensten Gründen auf der Seit nichts passiert. Das Projekt selber ist jedoch nicht Gefahr. In der Zwischenzeit habe ich, wie es meine Art ist, mich weiter nach nützlichem umgesehen. Dabei bin ich auf zwei extrem gute Dinge gestoßen, die ich Euch nun vorstellen möchte.

Erstens:
Auf YouTube folge ich schon seit langem Josh Gambrell. Er stellt sehr regelmäßig neue Videos auf seinem Kanal bereit. Sein Schwerpunkt liegt auf Hard Surface Modeling und er zeigt sehr bereitwillig seinen Workflow. Abgesehen von seinen bevorzugten Tools (Hardops und Boxcutter) hat er auch genügend Tutorials, die sich auf das reine Blender-Toolset beschränken (Vanilla Blender). Wie sein Name vermuten lässt sind seine Tutorials auf Englisch aber er ist, meiner Meinung nach, sehr gut zu verstehen. Wenn ich das aus einem seiner Videos noch richtig in Erinnerung habe, dann lebt er in Orlando und studiert Mathe. Darüber hinaus macht er noch so viele nützliche Tutorials für die Blendercommunity und das konstant über so einen langen Zeitraum, das verdient einfach meinen Respekt und Anerkennung.

Erst vor Kurzem bin ich auf seine Webseite BlenderBros aufmerksam geworden, die er und sein Kumpel Ponte Ryuurui betreiben. Auch dort gibt es freies Material jedoch liegt der Schwerpunkt der Seite auf große umfangreiche und detaillierte Tutorials, die man kaufen kann.
Für gewöhnlich meide ich alles Kostenpflichtige, weil 3D, Blender, Unreal meine Hobbies sind und ich damit kein Geld verdiene, jedoch habe ich hier einmal eine Ausnahme gemacht.

Warum?

Weil:
Es dort extrem detaillierte Tutorials gibt, die auf den Workflow für Games ausgerichtet sind. Also genau das Thema mit dem ich mich gerade befasse. Die Techniken um die es geht, schienen mir für meinen Weg extrem hilfreich zu sein. Darüber hinaus, und was mich letztens auch zum Kauf einiger der Videos überzeugt hat, war dass auch auf die Aspekte des Designs eingegangen wird. Im Prinzip ein rundum sorglos Paket für mich.

Ich habe mich für die Pakete The Hard Surface Game Asset Course, Hard Surface UV Unwrapping und The Blender Bros Design Course entschieden. Der Rabatt, der einem für 3 Tage nach der Registrierung zugestanden wird plus der für mich gute Umrechnungskurs Euro – Dollar machten mir die Entscheidung für den Kauf einfacher.

In den Tutorials werden einige grundlegende und hilfreiche Settings in Blender gezeigt, es wird, na klar, gemodelt und alles außerordentlich gut erklärt. Auf das beheben von „shading“-Problemen, wird sehr genau eingegangen. Was mir nie bewusst war, ist, dass man die Models besser vorher in Blender trianguliert, bevor man sie in Game-Engines importiert.
UV-Mapping, ein Lieblingsthema noch zu Maya-Zeiten von mir, wird ebenso ausführlich behandelt. Seinen Ansatz fand ich äußerst bemerkenswert.
Einen ebenso großen Schwerpunkt hat das none-destructive modeling. Anders als in Photoshop, wo mir diese Arbeitsweise klar ist, fehlte mir in Blender immer der Ansatz, wie ich das beim Modeln umsetze.

Zweitens:
Unter Anderem wird auch das Tool Quixel Mixer in dem Workflow verwendet. Das hatte ich erstaunlicherweise bislang noch gar nicht auf dem Schirm gehabt. Glücklicherweise ist es kostenlos und gehört inzwischen ebenso zum „Unreal-Kosmos“. Von nun an werde ich mich auch damit beschäftigen, da es massiv beim Texturieren der Modells unterstützt.

Nach meinen bisherigen Recherchen bietet Quixel Mixer keine Baking-Möglichkeiten. Dabei bin ich jedoch auf dieses Tutorial gestoßen, in dem extrem detailliert der Baking-Prozess (Normals, Ambient Occlusion, Curverture und Ids) erklärt wird. All das sind Vorarbeiten für die Verwendung in Quixel Mixer.

Das hier gezeigte Vorgehen, werde ich mir ebenso aneignen. Gemäß dem Motto meiner Webseite „warum sollt ihr nach etwas Suchen, das ich schon gefunden habe“ hier das Video.

Was tun wenn Deine Daten weg sind

25 Sep.

Meine persönliche Lösung

Jetzt habe ich mir so ein ambitioniertes Ziel gesetzt und arbeite über sehr viele Stunden, Tage… an meiner Idee, an den 3D-Objekten… Und auf einmal passiert etwas dummes und deine Arbeit ist plötzlich für immer weg. Zum gegenwärtigen Stand wäre das zwar noch nicht sehr viel, aber die ganze Energie und Freude mit ich die Sachen erstellt habe, .. verpufft.
Wie ein „Schlag in die Magengrube“.

Zum Glück ist mir das nicht passiert. Aufgrund der Vorbereitungen, die ich getroffen habe, sollte es auch nicht so schnell passieren. Denn ich hasse nichts so sehr wie, das, was ich einmal geschaffen habe noch einmal zu machen.

Also, warum bin ich mir so sicher, dass mir dieses Schicksal erspart bleibt.

  1. Wir haben uns schon vor einigen Jahren ein NAS von Synology geholt, aber lange Zeit unangeschlossen in der Ecke stehen gehabt. Diese habe ich wieder an den Start gebracht. Von Synoloy gibt es ein Tool (Drive Client), mit dem man seine zuvor konfigurierten Ordner auf den Rechner Synchron zu der Sicherung auf dem NAS hält.
    Also, jedes Mal, wenn ich ein Blend-File, oder eine Textur speichere wird es gleich im Anschluss auf mein Hausinternes NAS gesichert.
  2. Man kann von den Großen Tech-Firmen halten was man will, aber die kostenfreien Angebote sind doch schon ok. Von den diversen Anbietern habe ich mich mit Google angefreundet. Ein Account angelegt und die ersten 15 GB stehen einem kostenfrei zu Verfügung. Den Account habe ich schon seit Jahren und es ist noch jede Menge Platz. Auch von Google gibt es ein kleines Tool mit dem die Ordner bestimmt werden können, die automatisch in der Cloud synchronisiert werden.

Also, wann immer ich eine neue Fassung von meinen 3D-Modellen speichere, geht gleiche eine Kopie aufs hausinterne NAS und eine zweite Sicherung geht irgendwo auf der Welt in die Wolke.
Aus diesem Grund bin ich vor Datenverlust gesichert.

Ok, zwei Sachen zum Schluss:
Sicherlich ist eine der beiden Methoden völlig ausreichend vor Datenverlust zu schützen. Ich habe es gemacht weil wir die Sachen bereits hatten und wir sie so wieder nutzen können. Unsere Kinder haben jetzt auch einen Bereich auf der Synology und können ebenfalls dort Ihre Sachen ablegen.

Weil es hier gerade bei uns in Deutschland Thema bei Gericht gewesen ist. In diesem Artikel habe ich lediglich meine Lösung für die Datensicherung beschrieben. Dieser Artikel ist nicht als Werbung zu für eine bestimmte Firma zu verstehen. Weder für Synology noch für Google. Auch habe ich von keiner der beiden Firmen für diese private Meinung Geld erhalten..

Es führt kein Weg daran vorbei

14 Sep.

Blender und Normal-Maps

An sich halte ich Normal-Maps für eine spannende Sache. Als ich damals noch als 3D-Grafiker gearbeitet habe, kam der zweite von Half-Life raus. Ich kann mich daran noch erinnern, dass man eine Wand gezeigt hat, die aus vielen schiefen und verschobenen Platten bestanden hat und es hieß, sie besteht aus 20.000 Polygonen. Für damalige Verhältnisse ist das schon eine Menge.

Etwas später, als wir uns mit dem Thema weiter beschäftigt haben, fanden wir heraus, dass es sich um Normal-Maps gehandelt hat. Kurz gesagt ist es eine Methode die den Detailreichtum eines komplexen Meshes in eine besondere Textur abspeichert. Daraufhin kann man die Texture mit den Details nehmen und auf ein Mesh legen, dass nur noch über einen Bruchteil der komplexen Geometry verfügt als das Original.

Bislang habe ich schon eine Menge über Normal-Maps gelesen und auch tutorials gesehen, ich hatte jedoch nie etwas gehabt um es auch anzuwenden.

OK, das hat sich nun geändert. In Mobile Games machen Normal-Maps Sinn und ich werde mich damit nun verstärkt auseinandersetzen und Euch an meinen Fortschritten teilhaben lassen. Auch wenn das Thema schon lange kein Geheimnis mehr ist und es tonnenweise darüber im Internet zu lesen gibt, letztlich muss man seine Erfahrungen damit selber machen.

Auf einmal nur noch schwarz

12 Sep.

Nachdem ich die Zeitersparnis beim „Kanten abwetzen“ beim ersten Testen des Nodesetups aus meinem letzten Beitrag feierte, möchte ich es für meine Texturen des Containers einsetzen. Allerdings… Aufeinmal zerstöre ich mir beim Baken alle meine Texturen. Alle werden mit schwarz überschrieben. Zugegebener Maßen war es auch schon wieder recht spät. Ich näherte mich der Geisterstunde, versuchte aber trotzdem dahinter zu kommen warum dies geschieht.

Was habe ich vorher gemacht.

Abgewetzte Kanten sind das eine, aber ich wollte ihn noch weiter verbessern. Ich wollte auf dem Container Beschriftungen anbringen, und überlegte wie ich es mit Blender umsetze. Zuerst dachte ich, ich könnte anstelle eines Brushes, ähnlich wie in Photoshop, direkt auf ein Text-Werkzeug umschalten den Cursor positionieren und loslegen…. Leider nicht.
Ich bin bei meiner Recherche auf den Stencil gestoßen. Also habe ich mir auf einer großen Vorlage in verschiedenen Schrifttypen jeweils die Ziffern 0 – 9 geschrieben, flugs in Blender wieder eine separate Textur für die Schrift angelegt und die Labels auf den Container angebracht.
Dadurch wirkte es wieder ein klein wenig authentischer.
Danach wollte ich mir alles zusammen auf eine Textur (Grundfarbe, abgewetzte Kanten und die Schrift ) baken und plötzlich wurde die Textur mit Schwarz übermalt.
Also lag die Vermutung nahe, dass ich mit den Einstellungen für den Stencil irgendetwas verstellt habe, und setzte alles wieder zurück … ohne Erfolg.

Die simple Lösung

Ok, um es abzukürzen. Es hat etwas gebraucht bis ich den Tatsächlichen Grund gefunden habe. Tagsüber bin ich ja ein normaler arbeitender Mensch und erst in den Abendstunden verwandele ich mich in den Game-Dev….

Im Principled BSDF – Shader habe ich mit den Metallic- und Roughnesswerten herumgespielt. Dabei habe ich das Material auf spiegelnd gestellt. Nun ja, was sieht man auf einer spiegelnden Oberfläche wenn um einen herum alles schwarz ist — ??? genau.

Also Rätsel gelöst Warnstufe wieder runter und die Texturen wieder in Ruhe aufbauen.

UV unwrapping, Texturen für mobile

06 Sep.

und wie es sich auf mobiles verhält.

An den ersten 3D-Objekten arbeite ich inzwischen. Ein einfacheres Model, ein Container, in dem sich die Behälter mit den Rohstoffen befinden, ist fertig und gestern Abend habe ich mich mit dem UVs in Blender beschäftigt. Bei meinem Streifzug durch das Internet und den vielen YouTube-Videos habe ich aufgeschnappt, dass man aus Performancegründen einem Model nicht mehrere Materialien mitgeben soll. Dabei musste ich an ein Tutorial denken, das ich vor längerer Zeit von Grant Abbitt gesehen habe.

In dem Tutorial hat er ein altertümliches Haus gemodelt. Es bestand aus Wänden, Balken, Fenstern und dem Dach. Alle Objekte waren eigenständig und hatten eigene Materialien. Er zeigte wie er diese auf ein neues Material, einer UV-Map und nur einer Textur zusammengefasst hat. Auf diesem Blog werde ich meine Arbeitsschritte beschreiben, welche Lösungen ich zu meinen Problemen gefunden und vor Allem welche Tutorials mir dabei geholfen haben. Daraus wird sich eine Linkliste entwickeln, die ich Euch gebündelt zu Verfügung stelle.

Heute also die ersten Links für die Liste.

Der erste Link führt zu seinem ersten Video zu dem Thema, das er im Jahr 2018 gemacht hat.
Es wird wohl Blender 2.79 gewesen sein.

Das zweite Video ist ein Update. Hier ist er mit der aktuellen Version von Blender zu Gange.

Wie erscheinen 3D-Modelle lebendiger

06 Sep.

The hard way vs. the easy way

Wie schon einmal erwähnt habe ich ein paar Modelle erstellt. Unter anderem einen Container. UVs sind fertig und nun habe ich mich an die Texturen gemacht. Ich versuche meine Arbeitsschritte so zu gestalten, dass ich später auch noch Änderungen vornehmen kann. Demnach bringt es nichts alles auf eine Textur zu pinseln. Im Augenblick sieht meine Herangehensweise so aus, dass ich mir im Shading-Tab für die Grundfarbe einen RGB-Node nehme.

the hard way

Da es schon spät in der Nacht war, kurz vor 0:00 habe ich nur schnell etwas die Kanten des Models abgewetzter erscheinen lassen wollen. Also neue Textur erstellt, ausgewählt und auf der die Kanten des Models mit Weiß abgefahren. Schön unordentlich. Nachdem ich schon eine Weile die Kanten abgefahren bin, habe ich beide Texturen mit dem MIX-RGB zusammengeführt. Es wirkte schon richtig gut. Von dem kleinen Erfolg beflügelt habe ich als nächstes eine weitere Textur erstellt auf der ich die Bereiche abdunkele wo sich Kanten innen treffen. Ich kann es gerade nicht treffender beschreiben.

Die „Kanten abfahren“ hört sich so einfach an, aber ich habe schnell gemerkt, dass mich alleine der Prozess sehr viel Zeit kosten wird, Das muss doch auch prozedural zu machen sein.
Mein Wissen um die diversen Nodes im Shadingeditor ist noch stark eingeschränkt, habe jedoch schnell vom Geometry-Node gehört, dass mit dem Pointiness-Wert der „abgenutzte-Kanten-Effekt“ erreicht werden kann. Nach einer Weile des Probierens habe ich abgebrochen weil ich feststellen musste, dass ich es nicht hinbekomme.

the easy way

Heute in der Mittagspause habe ich nach „edge detection“ gesucht und ein Video gefunden in dem ein Nodesetup vorgestellt wird was meinen gesuchten Effekt erzeugt. hier ist der Link zu dem Video. In der Beschreibung des Videos gelangt man zum Download des Blendfiles mit dem Nodesetup.
Ich habe es heute gleich an meinem Container ausprobiert und es funktioniert ausgezeichnet.

Als letztes Schritt zu mehr Lebendigkeit wollte ich noch Verschmutzungen durch eine ambient occlusion map automatisiert hinzufügen. Nach einigem Experimentieren war ich jedoch mit dem Ergebnis nicht zufrieden und habe kurz entschlossen die Verschmutzungen per Hand auf eine eigene Image-Texture gemalt.

Hier nun das erste Ergebnis des Containers mit den abgewetzten Kanten, Labels und Verschmutzungen