Autom. Farbsättigung nach Helligkeit

  • Hallo,


    wenn ich mir so einige Open-World-Spiele anschaue stelle ich fest, dass fast alle einen gewissen "Effekt" besitzen - und zwar, dass alle Farben in Dunkelheit entsättigt werden.
    Leider bekomme ich das in der Unreal Engine überhaupt nicht richtig hin.
    Es macht ja auch kein Sinn einfach alle Farben via Posteffekt zu entsättigen.
    Man stelle sich vor man läuft in der Dämmerung mit einer Taschenlampe rum.
    Dann soll alles entsättigt sein außer im Licht der Taschenlampe.
    Es ist quasi so, dass nur Licht Farbe ins Spiel bringen soll.
    Je weniger Licht desto weniger Farbsättigung.
    Wenn ich 22 Uhr abends rumlaufe sieht so ziemlich alles nur noch halb so stark aus - fast nur in Graustufen.
    Außer in Lichtquellen wie Strassenlaternen, oder Feuerstellen oder sogar das Mondlicht.
    Warum kann das die Unreal Engine nicht automatisch?
    Bzw. die Frage ist kann sie das überhaupt und wenn wie?


    Wer nicht weiß was ich meine kann sich mal DayZ anschauen - dort ist das quasi in Perfektion eingestellt.
    Und ich rede von der alten Mod von Arma2 - also selbst die konnte das schon vor 5 Jahren.
    Hier mal schnell gefundenes YT-Video, dass es gut zeigt, was ich meine.
    Alles ist so ziemlich s/w außer im Lichtkegel der Taschenlampe.
    Was kann ich tun damit ich das so in der UE erreiche?


    Bin auf jede Antwort gespannt. :)

    • Offizieller Beitrag

    Mit occlusion farbe kannst du auch was erreichen, aber ich komm da noch nicht so mit, was genau dein verlangen ist.
    Willst du die nacht blasser haben, oder einfach nur dunkler? Farbsättigung kenne ich, aber wenn du die intensität einstellst, dann bleibt alles satt, nur dunkler.

  • Je dunkler desto weniger satte Farben.
    Theoretisch wenn es dunkel genug ist soll man nur noch schwarz/weis bzw. Graustufen sehen.
    Überalle wo Licht ist soll im Bezug auf die Lichtstärke auch die Farbe wieder stärker werden.
    So ist es auch in der Realität.
    Wenn es draussen dämmert wirst du die Welt nicht nur dunkler sehen sondern auch weniger farbig.
    Wie schon geschrieben sieht man das sehr deutlich in dem YouTube-Video.
    Die ganze Welt dort ist quasi fast ohne Farbe, weil es NAcht ist - nur im Schein des Lichtes - indem Fall im Lichtkegel der Taschenlampe kommen die Farben wieder.

    • Offizieller Beitrag

    occlusion color und light color schon ausprobiert in der skylight?
    Jedenfals in der Realität kommt mir das nicht schwarz weis, oder blass vor, sondern wenn es dunkel ist, dann ist es auch dunkel, es sei denn, der mond strahlt, dann sieht alles etwas bläulich aus, das stellst du aber in der skylight die color ein.

  • Wenn du so einen speziellen Effekt haben möchtest würde ich dir vorschlagen das mit einem post processing material machen wo eine Maske die dein Licht und Dunkelheit darstellt über die Kamera legen.


    Also ein weißer Kreis welcher deine Taschenlampe Licht Umkreis hat. Diese Maske benutzt du als Sättigung im Material. So bisschen herumspielen und du kannst den Effekt erzielen.
    Dee Rest der Maske ist schwarz und somit Sättigung der Farben runter drehen. Und wo die Maske wirkt wieder voll auf den Wert 1 z. B.


    da muss man aufjedenfall bisschen herumprobieren und so kriegt man das hin.


    Diesen Post processing nicht verwenden wenn deine Taschenlampe aus ist xD

  • Ich vermute ihr habt das Problem nicht verstanden.
    Es geht nicht nur um eine Taschenlampe - das ist nur ein Beispiel von Vielen.
    Grundsätzlich und egal, wo in der Welt Licht ist, müssen die Farben genau nur dort wieder stark sein.
    Da helfen keine Masken, die nur 2D den ganzen Bildschirm ohne jede Tiefeninformationen maskieren.
    So kann ich evtl. die Taschenlampe faken, was mir leider nichts bringt und wahrscheinlich auch schrecklich aussehen würde.
    Wenn weiter weg Laternen stehen oder aus Häusern Licht austritt, dann werden dort die Farben wieder satter - und zwar im 3D Raum und nicht als 2D Posteffekt auf dem Screen.
    Dazu müsste man dann schon eine 3D-TiefenLichtMap als Maske generieren und zwar mit jedem Bild in Echtzeit.
    Zum einen weiß ich nicht, ob so etwas überhaupt umsetzbar wäre und zum anderen würde das aus Performancegründen wahrscheinlich schon nicht funktionieren.


    Ich schätze einfach, dass das ein Standard ist, den die Unreal Engine wahrscheinlich leider nicht beherrscht - eigentlich mehr als enttäuschend.
    Zumal es wirklich fast in jedem Open World Spiel zu beobachten ist.
    Trotzdem danke für eure Tipps.
    Evtl. muss ich auf eine andere Engine umsteigen.


    Mich irritiert jetzt etwas, dass ihr nicht versteht, was ich meine bzw. den Standard als Standard gar nicht erkennt.
    Fakt ist, dass das Auge lichtschwache Dinge IMMER! weniger Farbgesättigt sieht als Lichtstarke.
    Mit der Dunkelheit verschwindet die Sättigung.
    Das ist einfach mal so - siehe Wikipedia oder jedes andere Biologisches Buch über ddie Augen/Hirn des Menschen.
    Und was mich noch mehr irritiert ist, dass das auch alle Spieleentwickler wissen und auch so umsetzen, aber ihr nicht genau wisst, was ich meine, obwohl es total offensichtlich ist.
    Es sieht einfach unprofessionell aus wenn ich in der Halbdämmerung Abends rumlaufe und zb. Das Grasgrün zwar dunkler wird aber in der Sättigung so knallig ist wie am Tag.
    Und ich rede nicht vom Emission oder Licht - es geht ausschließlich um Farbsättigung.
    Jeder von uns kann gerne mal etwas in wenig Licht farblich beurteilen, dann wird er merken, dass man die Farbe mitunter gar nicht ermitteln kann - und zwar nicht nur aus Lichtmangel - man kann das Objekt ja noch deutlich sehen - sondern einfach, weil das Auge grundsätzlich Farbinformation mit der Dunkelheit verliert.
    Und genau das kommt in hunderten Spielen vor, in Millionen Fotos oder Kunstbildern.


    DayZ, Rust, GTA, The Forest, Long Dark usw... alle diese Spiele haben diese automatisch Licht-Farbsättigung an Board.
    Wie machen die das?


    Die Sättigung muss mit der Lichtintensität steigen oder fallen und zwar überall in der 3D Welt voll automatisch ohne Fake-Masken, die nur bestimmte Objekte in Bezug nehmen.
    Wenn am Horizont ein Lagerfeuer brennt und ich das aus 100m in der Nacht sehe - dann sind dort am Lagerfeuer voll Farben - jedoch um mich rum und der Rest in der Dunkelheit fast nur noch grau.
    In der Nacht sind alle Katzen grau! und nicht nur dunkeler! Den Spruch gibts nicht umsonst.
    Da kann die Katze eigentlich total rot sein, aber mit wenig Licht sieht man das rot als fast grau - das kann jeder bestätigen!
    Nur in der Unreal Engine würde selbst in der Nacht noch die Katze dunkelrot sein - das sieht nicht nur blöd aus sondern ist zudem auch geradezu grotesk unrealistisch.

    • Offizieller Beitrag

    Mich hat natürlich das mit dem Post Process Material interessiert und auch schnell umgesetzt.
    Wie Franz99 schon schrieb, werden auch die weitesten Objekte wieder satter, dass aber evtl komisch aussehen könnte. Ich habe das ohne Taschenlampe dargestellt und mit voller Sonne, um es zu verdeutlichen.


    @Franz99 , es haben noch nicht alle geantwortet ^^
    Außerdem erklärst du was, was eigentlich nicht so stimmt. Du kannst mich gerne wiederlegen, aber dann auch mit ordentliche Beweise.
    Wenn du eine Rote Wand anschaust und das weiße Licht immer dunkler machst, dann wird das Rot dunkler (weinrot). Wenn das Licht auf 0% ist, dann wird es Schwarz. Kannst du testen, indem du in ein dunklen Raum gehst und die Tür langsam zu machst. Dann wirst du sehen, dass die Farbe nicht verschluckt wird, sodass alles Grau wird. Ich bin schon als Hobby Fotograf lange unterwegs und das ist meine Erfahrung.
    Wenn ein Mond scheint, dann schimmerst es Blau. Das mischt sich mit den Farben und wirkt blasser. Aber die Farbsättigung hat meiner Meinung nach nichts mit Licht zu tun.
    Desswegen ist es in Unreal auch nicht so, dass sowas nötig ist. Es werden wie gewöhnlich in der Natur die farben mit Licht gemischt. Da spielt die Farbe und die Intensität eine Rolle.

    • Offizieller Beitrag

    Ach, jetzt hab ich endlich mal dein Video angeschaut. Das was du da siehst, ist keine Farbsättigung. Da wurde das Licht so weit runtergedreht, dass die Farbe nicht mehr zu erkennen ist und somit alles an Farbe schwarz wird. Das was weißlich noch ist, ist dann natürlich heller. Ein sehr unschöner Effekt. Siehe Realismus, so wie ich es beschrieben habe.

  • @'Dj EKI
    'Wo habe ich geschrieben, dass die Farben mit Entfernung satter werden?
    Und NEIN! in dem Video werden die Farbe defakto entsättigt!
    Nimm dir Photoshop und zieh die Helligkeit wieder hoch und du wirst sehen, dass die Farben fast weg sind.
    Nun mach das selbe mit einem Screenshot aus der UE und du wirst sehen alle Farbenn sind wieder normal gesättigt.
    Trotzdem Danke für deine Screenshots und Arbeit.
    Aber das ist nicht im Geringsten das was ich schrieb.
    Die Taschenlampe ist nur ein Lichbesispiel von allen Lichtern.


    Je dunkler desto weniger Farbsättigung kann das Auge/Hirn verarbeiten.
    DARUM SIND NACHTS ALLE KATZEN GRAU!
    Und zwar eben ALLE - darum der Spruch, weil mit der Dunkelheit, obwohl man die Katze sieht - die Farbinformation fast weg ist.
    Nachts sind alle farbigen Katzen grau wäre noch besser beschrieben.
    Und ja, wenn ich eine rote Tür habe und ich das Licht runterfahren wird das Rot dunkler aber auch entsättigt.
    Ab einem bestimmten Lichtlevel wirst du definitiv nur noch eine graue Tür sehen.
    Das ist ein Fakt und keine Vermutung.
    Und mit Fotografie hat das kaum zutun, denn dein Sensor kann volle Farbinformationen verarbeiten, obwohl es sehr dunkel ist.
    Das kann das Auge nicht!


    @Monsterlutz
    Ich habe breeits ein Videobeispiel geposte und ein paar Spiele genannt.


    Als Anhang nochmal ein Beispiel mit einer roten Tür.
    Links das Original am Tag. (Bild aus der einer Google Bildersuche)
    In der Mitte ist es so wie es Unreal rendern würde - also lediglich die Lichter fahren zurück und die Tür wirkt viel zu knallig.
    Rechts dann wie es in Realität aussehen würde - bei dieser Dunkelheit würde die rote Farbe ungefähr so aussehen, was in diesem Beispiel eine Entsättigung von 50% ist.

  • @Monsterlutz
    Danke - das ist eine gute Idee! :)


    Hier mal ein kleiner wissenschaftlicher Auszug über die Funktion des menschlichen Auges:
    "Aus den Messwerten der L-, M- und S-Zapfen erstellt das Gehirn ein Farbbild, wie wir es vom Alltag her kennen. Die Zapfen haben eine so geringe Empfindlichkeit, dass sie nur bei guten Lichtverhältnissen arbeiten, d.h. eine gewisse Mindestmenge an Photonen ist notwendig, um die Zapfen überhaupt zu erregen. Bei Dämmerung oder Dunkelheit nimmt deren Funktionalität stark ab, so dass die höchstempfindlichen Stäbchen einspringen müssen. Da die Stäbchen jedoch nur helligkeitssensibel sind, nimmt das Farbsehen mit aufkommender Dunkelheit ab. Deshalb können wir Menschen nachts keine Farben mehr erkennen, und alle Katzen sind bei Dunkelheit grau."


    Und genau das ist nachweislich optisch bei sehr vielen Spielen durch autom. Farbentsättigung nachempfunden.

    • Offizieller Beitrag

    Wenn ich mir die Videos über Ark anschaue, dann ist das auch nix anderes, als wenn die nur skylight und lightdirection die intensität runtergeregelt haben.


    Du nimmst dieses Sprichwort aber sehr ernst und ich muss da etwas schmunzeln, weil ich im Foto Kurs genau das Thema dazu hatte. Du möchtest es Grau, also regel das am besten über postprocess Material.


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Diese Scene finde ich sehr gut und dies wurde auch nur über skylight und DirectionLight in scene gestellt. Dafür wurde ein bläulicher Ton gewählt, dadurch wirken alle Gräser nicht mehr so Grün. Dann muss man auch bedenken, dass man keine zu satte Materials anwendet, das übertönt natürlich alles. In den meisten Survival, oder Horor spiele wurden meistens nur farblich schwache Materials angewendet.

  • Ich habe das Sprichwort genommen, weil es exakt und ausschließlich aus diesem Grunde genau so lautet.
    Allein das hätte dir bereits sagen müssen, dass an deine Aussage, dass alles nur dunkler und nicht Farbentsättigender wird, wenn Licht verschwindet, etwas was nicht stimmen kann.
    Deshalb habe ich das nochmal gebracht bevor ich mich nun noch extra aufmachen musste, um im Internet eines von Millionen wissenschaftlichen Zitaten zu diesem Farbsättigungsthema zu kopieren.
    Selbst wenn man kein Wort jemals zu diesem Thema gehört hätte würde man wissen, dass die Farbstärke abnimmt und nicht nur die Dunkelheit.
    Wenn das bei dir nicht so ist, dann solltest du dich mal bei Wissenschaftlern melden - zu vermuten ist dann nämlich, dass du der erste Mensch bist, dessen Auge die Farbsättigung unabhängig der Lichtstärke nahezu gleich abbilden kann.


    Einfach auch mal zugeben, dass man etwas missverstanden hat oder nicht wußte.... da bricht man sich auch kein Zacken aus der Krone. ;)
    Und nein - das geht eben nicht mit einem Postprocess.
    Wenn du das nach all der Erklärung und Theorie immer noch glaubst - hast du definitiv immer noch nicht verstanden, um was es geht.
    Warum nicht habe ich bereits mehrmals geschrieben, aber ich versuche es jetzt ein letztes Mal. ;)


    Ein Postproces würde alles entsättigen und nicht nur dunklere Stellen.
    Und mit einer Maske maskierst du nicht dynamisch sondern statisch.
    Das heißt die Maske ist "dumm" und maskiert natürlich nur nach einem statischen Graustufenverlauf aus einer Grafikdatei.
    Weil sie eben nur einen Posteffekt maskiert, der grundsätzlich das Bild als 2D definiert.
    Die Maske kann überhaupt nicht darauf reagieren, wenn irgendwo ein zusätzliches Licht angeht und in dessen Lichtkegel die Sättigung wieder hochfahren muss.
    Aber ok - solange ich in der Welt nicht rumlaufe und sich sonst Lichttechnisch nichts ändert und die Maske jede erdenkliche Lichtverhältnisse schon vorher kennt - ja, da würde eine Maske dann gehen. ^^
    Nein! Die Engine muss beim Rendern die Funktion bieten die Sättigung des gerenderten Bildes in Abhängigkeit der Lichtstärke via Tiefenmap 3-dimensional einzurechnen.
    Unreal kann das nicht und das "Tricksen" funktioniert eben mehr schlecht als recht.
    Und dann ist eben noch ein großer Unterschied, ob ich meine Licht/Schatten-Szenerie statisch oder dynamisch baue.
    Die meisten YouTube Videos bei denen im Zeitraffer schöne Welten erstellt werden stellen das ganze Licht komplett auf statisch.
    Somit kann man Licht und Schattenmaps generieren, die natürlich auch eine getrennte und dem Lich abhängige Sättigung zu lassen.
    Hier geht es aber um komplett dynamische Welten bei denen Licht und Schatten "movable" dynamisch ist.
    Da können keine Tiefenmaps vorgerechnet und benutzt werden - sondern es muss automatisiert funktionieren - in Echtzeit, mit jedem Bild und mit jeder im 3D Raum befindlichen dynamischen Lichquelle.
    Lichter werden ein- und ausgeschalten, hin und her bewegt und das in einer quasi unbegrenzten Anzahl irgendwo dynamisch in der Welt während man rumläuft - und da läuft der Hase wirklich ganz anders, als diese statischen mehr oder weniger recht einfach zu bauenden Fantasiewelten.
    Ich weiß jetzt inzwischen nach Recherche ziemlich sicher, dass Unreal dieses Feature nicht bietet.
    Unity kann das mit Bravour und jeder Spieleentickler kennt auch diese Funktion und die meisten nutzen die automatische Entsättigung auch aus.
    Denn selbst wenn man das Bild nur leicht mit Absinken des Lichtes dynamisch entsättigt entsteht sofort ein authentischer professioneller Look im Spiel.
    Schade, dass das Unreal nicht kann - auch das Spiel ARK kann das nicht.
    Aber Ark ist auch nicht wirklich realistisch gebaut und ich rede nicht von den Dinos ansich.
    Leider sehen die meisten Spiele unter Unreal aus diesem Grund auch immer etwas kitschig aus, wenn es Nacht ist und es in einer Licht-dynamischen Open-World spielt.
    Bei Ark ist das exakt so - die Nächte sind grottik schlecht und quietsche-bunt.^^

  • Bei Ark von grottig schlecht zu reden ist schon ordentlich arrogant... :D


    Dann zeig doch mal, was du zu bieten hast... ;)


    Wie immer in der Spieleindustrie gilt es - nutze die Möglichkeite so gut wie es geht, aber nutze so wenig wie möglich. Tricksen gehört also dazu.


    Dir steht es übrigens frei, die Engine zu modifizieren, wenn du diese Funktion unbedingt benötigst.