Epic Master Material

  • Hallo liebe Community,


    ich arbeite jetzt schon seit ein paar Tagen an einem Master Material.
    Mit diesem Material soll jeder in der lage sein gut aussehende Assets in der Engine wieder zu geben, zumindest vom Material her ;)


    Das ganze werde ich eventuell gegen eine Bezahlung oder Frei hergeben, je nachdem für welchen gebrauch man das ganze möchte, aber jetzt zum Material.


    Warum mach ich eigentlich sowas? Jeder kann doch Materials machen? Ja das Stimmt.
    Ich bringe jedoch sehr viel Erfahrung mit und denke das es nervig sein kann ein gutes Master Material zu machen, vor allem wenn man sich kaum damit auskennt.
    Das Prinzip ist ganz einfach, der user muss eine Instance erstellen und hat danach einfluss auf:
    -UV Tilling
    -Macros
    -Base Color
    -Metallic
    -Specular
    -Roughness
    -Emessive Color
    -Normal
    -World Position Offset
    -Displacement
    -Tessellation
    -Ambient Occlusion


    Ihr könnt also fast alles benutzen was ein Material bieten kann, für etwas erfahrene Leute gibt es noch eine Function Lib die nützliche funktionen bereitstellt.
    http://www.bilder-upload.eu/sh…ile=e50647-1461096661.png

  • Willkommen bei uns und viel Spass hier.


    Master Material ansich ist eine gute Sache, aber. Bedenke das immer alles berechnet werden muss, wie bei dir z.B. Tesselation. Das wird am Ende auch dann
    berechnet, wenn auf dem Mesh gar kein Tesselation drauf ist.
    Ich würde mehrere Master Materials machen und nicht versuchen alles in einem unter zu bekommen.


    Master Material


    Hier ist ein kleines Tutorial für ein simples Master Material, vielleicht findest ja noch das ein oder andere was du nutzen möchtest.


    Ansonsten viel Spass beim umsetzen ;)

  • Das mit den Berechnungen ist kein problem...das ganze wird einmal berechnet, danach kann man wild experimentieren, so ist es bei mir zumindest.
    Aber auch hier werde ich noch einige dinge Probieren und schauen was alles möglich ist. :)


    Außerdem lässt sich jeder bereich ein und aus schalten, wodurch zeit gespart wird.

  • Ja es wird auch nur einmal berechnet, der Rest ist ja dann Instanziert. Aber warum sollte etwas berechnet werden, was man an manchen Teilen gar nicht braucht ;)
    Auch wenn du das im Instanzierten ausschaltest, wird es durchs Master Material trotzdem berechnet
    Es kommt aber auch stark auf´s Projekt an. Ich Arbeite mit 3 Master Materials und überlege gerade noch ein 4tes zu erstellen, dass dann ohne Texturen auskommt.
    Also für Metall, Plastik usw.

  • Naja du lässt es einmal Berechnen und gut ist...ob ich nun 4 berechnen lasse oder ob 1 ist doch das selbe ;)


    Teile die du in der Instance aus machst werden auch in keinerlei weise noch mitberechnet. Ich kann also alles aus machen und hab dann z.b nur noch etwas um Plastik zu machen.. Das Ende vom Lied ist das es genau auf dasselbe wie deine Variante hinausläuft. ^^


    Es ist ja auch kein muss mein Master zu benutzen. :D

  • Ich glaub wir haben auch etwas aneinander vorbeigeredet ;)
    Dein jetziges Material macht natürlich schon sinn, keine Frage. Es ist auf jeden Fall Performance schonender als einzelne Materialien zu erstellen.
    Es würde aber bei mehreren Szenen keinen Sinn machen.
    Als Beispiel Szene 1 nutzt du Tesellation.
    Szene 2 nutzt du keins, aber dein Master Material berechnet es hier trotzdem einmal.


    Bin aber auf die Umsetzung gespannt wie du das ganze aufbaust ;)

  • Anregungen zum Materialien bauen:


    1) Der Typ hier hat ein cleveres Schichten-Modell für sein Material, mit dem er verschiedene Oberflächen übereinander darstellen kann:


    https://www.youtube.com/playli…x56NL0tFbnM8GtLL8UC1mi5xH


    2) Und was mal für alle wichtig wäre, ist ein Landscape Material, dass nicht mit komplexen Auto-Texturierungen Steigungsabhängig daherkommt, sondern stattdessen mit den 10-15 häufigst benötigten Surfaces für Landschaften zum klassische bemalen im Landscape Editor. Die Texturen sollten per Parameter gedreht und skaliert werden können, um Wiederholungspattern zu verhinden. Seamless tileable, Tex-sets für Normal usw. ist selbstverständlich.

  • Hallo Vollgaser,


    an solchen Sachen wie du in Nummer 1. beschreibst arbeiten wir. Sowas ist auch mit Macros z.b möglich, welche ein Material aussehen lassen können als wäre es dreckig. Aber am besten wird sowas in Substance gemacht, wobei es auch in der ü4 möglich ist.


    In Punkt 2 meinst du ein Master mit dem man z.b verschiedene Layer selbst auf das Terrain malen kann ohne automatischer Erkennung?

  • zu 1), das Konzept, ist auf jede unterste Schicht dann weitere optional aufzutragen, wie bspw.:


    0 Unterste Schicht, bspw. Holz (hier nur einige generische vorgeben, wie Metall, Holz, Stein usw.)
    1 Kratzer (Decal mit Parameter für Tiling usw.)
    2 Lackfarbe (0% bis 100%)
    3) Darauf Schichten wie Glosslack, Firnis, Rost, Tropfen/Wasser
    usw. bis ganz oben drauf:
    4) Dreck, Schnee dann schon als Tesselation oder so.


    Und das explizit in Ued (und nicht in substance/factories) damit man in den Details zum Material von jedem static mesh diese Parameter indiv setzen / anpassen kann damit es wie gewünscht aussieht.


    zu 2) ja, kein Auto-Material steigungsabhängig. sondern Slots für die unterschiedlichen Texture-sets, da wir ja keine Landscape Funktionalität mit slots für Materials haben (früher gabs das in Ued 3 für Texturen als layer für die landscape).
    Wenn du dann was automatisieren willst, dann doch für jeden Slot ein paar einfügbare foliage static meshes zum dynamisch generieren. also bspw. als Texturset Waldboden und für die dynamische foliage nur AUF DIESEM material kann man dann Zweige und Schwammerln als static meshes eintackern. Ich rede hier nicht vom Foliage painting tool, sondern von den einzelnen material slots zuweiswaren dynamisch generierbaren static meshes. Im Blueprint Sample level ist so eine foliage spawning volume (unter dem Baum für die Blümchen)


    Falls du das hinkriegst und für eine Demo/release Beispiel static meshes brauchst, frage mich, ich habe dazu Vieles:
    https://forums.unrealengine.co…ct-quot-tree-nursery-quot