Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Einfaches Lightshare / Windlight Script
#1
Windlight und Lightshare sind 2 Namen für identische Funktion.

Ich werde im folgenden den Begriff Lightshare verwenden weil er die Funktion besser beschreibt.
Er enthält die Begriffe Licht und teilen - tatsächlich werden die Einstellungen der Sim mit allen Simbesuchern geteilt.

Mit der Lightshare Funktion kann man die Parameter für Wasser, Himmel sowie Uhrzeit, und damit die Sonne und Mondposition in der Sim einstellen.

Ich bin auf diese Thematik vor einigen Jahren gekommen durch eine Veröffentlichung von Sunny. Leider ist auch die Webseite damals nach einem Hackerangriff verschwunden.

Verwirrend ist das der Viewer neben der Simweiten Einstellung auch die Ansichtänderung nur des einzelnen Users erlaubt.
Wir widmen uns aber nur der Aufgabe das jeder Besucher das Gleiche sieht.

Windlicht ist auch ein Thema zu dem die Ursprungs Dokumentation in Opensim verloren gegangen scheint.
Die Firma die das mal entwickelt hat, ist samt Webseite und Doku meines Wissens schon lange verschwunden.

So ist diese Funktion zwar in Opensim weiter drin, aber man findet Dokumentation und Anwendung spärlich.
Wer darüber schreibt hat dies in mühsamen reengineering herausgefunden.



Schade denn die Funktion ist eines der Kernthemen die es ermöglicht aus einem klinischen neutralen Startsimulator eine schöne emotionale Sim zu machen.
Ähnlichen Effekt hat nur das tauschen der langweiligen Start Bodentexturen der Sim.

Ich habe daher beschlossen dieses Thema tiefgreifender zu dokumentieren. Dazu werden mehrere Artikel nötig sein.

Den Anfang macht eine simples Script das euch zum Experimentieren einladen soll.



GRUNDVORAUSSETZUNGEN für WINDLIGHT

Damit ihr Lightshare auf eurer Sim anwenden könnt, müssen Voraussetzungen erfüllt sein:

So muss je Sim Instanz Lightshare enabled sein.
In einer standardmäßigen 09x sehen die richtigen Eintrag so aus:

in Datei Opensim.ini:

[LightShare]
    enable_windlight = true


in config-include\OSSLEnable.in:

[XEngine]
  ; Allow the use of LightShare functions.
  ; The setting enable_windlight = true must also be enabled in the [LightShare] section.
  AllowLightShareFunctions = true

Als nächstes muss derjenige der die Einstellungen einer Sim ändern will das Recht dazu haben.
Als Sim Besitzer hat man diese Recht im Normalfall. 
Gleiches gilt für die Änderung mit Script. Der rezzer des Objektes mit dem Script sollte Sim Besitzer sein.

Genaueres dazu mal später in einer Detail Veröffentlichung. 



Code:
default
{
   touch_start(integer iTouches)
   {
       lsSetWindlightScene([
           WL_WATER_COLOR, <28,64,69>,         // 1 Trübung und Wellen: RGB Wert von Trübungsfarbe
           WL_WATER_FOG_DENSITY_EXPONENT, 5.0,         // 2 Trübung und Wellen: Exponent für Trübungsdichte            
           WL_UNDERWATER_FOG_MODIFIER, 1.00,           // 3 Trübung und Wellen: Modifikator für Wassertrübung
           
           WL_REFLECTION_WAVELET_SCALE, <4.9,4.8,4.8>, // 4 Reflektion: Reflexionswellengröße X,Y,Z
           WL_FRESNEL_SCALE, 0.64,            // 5 Reflektion: Fresnel Skalierung
           WL_FRESNEL_OFFSET, 0.61,            // 6 Reflektion: Fresnel Versatz
           
           WL_REFRACT_SCALE_ABOVE, 0.01,        // 7 Reflektion: Brechungsstärke oben
           WL_REFRACT_SCALE_BELOW, 0.16,        // 8 Reflektion: Brechungsstärke unten
           WL_BLUR_MULTIPLIER, 0.100,            // 9 Reflektion: Mischungsmultiplikator
           
           WL_BIG_WAVE_DIRECTION, <-0.26,-0.17,0>,     // 10 Trübung und Wellen: Richtung für große Welle X,Y,0
           WL_LITTLE_WAVE_DIRECTION, <-0.68,-0.67,0>,    // 11 Trübung und Wellen: Richtung für kleine Welle X,Y,0

           WL_NORMAL_MAP_TEXTURE, "822ded49-9a6c-f61c-cb89-6df54f42cdf4", // UUID einer NormalMap für Wellenbewegung

           WL_HORIZON, <0.477,0.499,0.432,0.432>,    // 12 Himmel Atmosphäre & Sonne: Blauer Horizont LSL Wert = R 0.250,G 0.250,B 0.320 Farbton 240, Sättigung 12, Helligkeit 29. HEX: 3f3f51
           WL_HAZE_HORIZON, 0.14,            // 13 Himmel Atmosphäre & Sonne: Trübung


           WL_BLUE_DENSITY, <0.184,0.205,0.215,0.215>, // 14 Himmel Atmosphäre & Sonne: Farbintensität LSL Wert = R 0.120,G 0.220,B 0.380 Farbton 217, Sättigung 52, Helligkeit 25. HEX: 1e3860
           WL_HAZE_DENSITY, 3.24,            // 15 Himmel Atmosphäre & Sonne: Trübungsintensität
           
           WL_DENSITY_MULTIPLIER, 0.3100,        // 16 Himmel Atmosphäre & Sonne: Dichtemult.
           WL_DISTANCE_MULTIPLIER, 1.4,        // 17 Himmel Atmosphäre & Sonne: Entfernungs-Mult.
           WL_MAX_ALTITUDE, 693,            // 18 Himmel Atmosphäre & Sonne: Max Höhe
           
           WL_SUN_MOON_POSITION, 0.317,        // 19 Tageszyclus? 08:20AM
           WL_SUN_MOON_COLOR, <0.423,0.384,0.350,0.350>,     // 20 Himmel Atmosphäre & Sonne: Sonne/Mond Farbe: LSL Wert = R 0.240,G 0.260,B 0.300 Farbton 220, Sättigung 11, Helligkeit 27. HEX: 3d424c
           WL_AMBIENT, <0.289,0.329,0.250,0.250>,     // 21 Himmel Atmosphäre & Sonne: Umgebung: LSL Wert = R 0.350,G 0.350,B 0.350 Farbton 0, Sättigung 0, Helligkeit 35. HEX: 595959
           WL_EAST_ANGLE, 0.680,            // 22 Himmel Atmosphäre & Sonne: Ostausrichtung
           
           WL_SUN_GLOW_FOCUS, 0.06,            // 23 Himmel Atmosphäre & Sonne: SLK-Fokus
           WL_SUN_GLOW_SIZE, 1.01,            // 24 Himmel Atmosphäre & Sonne: SLK-Gr.
           WL_SCENE_GAMMA, 1.16,            // 25 Himmel Atmosphäre & Sonne: Gamma
           WL_STAR_BRIGHTNESS, 0.00,            // 26 Himmel Atmosphäre & Sonne: SLK-LK.
           
           WL_CLOUD_COLOR, <0.487,0.446,0.349,0.349>,     // 27 Himmel Wolken: Wolkenfarbe: LSL Wert = R 0.410,G 0.410,B 0.410 Farbton 0, Sättigung 0, Helligkeit 41. HEX: 686868
           WL_CLOUD_XY_DENSITY, <1.00,0.53,0.4500>,    // 28 Himmel Wolken: Wolken- X/Y/Dichte:
           
           WL_CLOUD_COVERAGE, 0.27,            // 29 Himmel Wolken: Wolkendichte:
           WL_CLOUD_SCALE, 0.1100,            // 30 Himmel Wolken: Skalierung:
           WL_CLOUD_DETAIL_XY_DENSITY, <1.00,0.53,0.04>, // 31 Himmel Wolken: Wolkendetails- X/Y/Dichte:
           
           WL_CLOUD_SCROLL_X, 1.70,            // 32 Himmel Wolken: Wolkenbewegung X
           WL_CLOUD_SCROLL_Y, -0.4,            // 33 Himmel Wolken: Wolkenbewegung Y
           WL_DRAW_CLASSIC_CLOUDS, TRUE,        // 34
           WL_CLOUD_SCROLL_X_LOCK, FALSE,        // 35 Himmel Wolken: Wolkenbewegung X sperren
           WL_CLOUD_SCROLL_Y_LOCK, FALSE        // 36 Himmel Wolken: Wolkenbewegung Y sperren
           
       ]);
   }
}



Ihr könnt das Script in einen neu gebauten Würfel reinwerfen.

Wenn ihr den Würfel berührt wird das Simlicht geändert.

Zurück zur ursprünglichen Simlicht Setting kommt ihr durch Audruf der Regions Einstellung.
Die Änderung durch dieses Scritp ist also nur temporär.

In einem späteren Beitrag werde ich dann beschreiben wie so eine Änderung statisch in die Sim geschrieben werden kann.

Ausserdem können wir bei Interesse gerne vertieft in das Thema einsteigen.

Ich habe bei mir im Grid einen Controller fertig, der 16 verschiedenen Settings ermöglicht, und auch die Sonne/Mondposition in Minuten einstellen läßt, was für tolle Sonnen auf/Untergänge nötig ist.

Ausserdem habe ich ein Wetter Modul gescriptet das Lightshare nutze um Wetter zu simulieren. So kann bei gleicher Regionseinstellung zwischen Sonne, klaren Himmel, bedeckten Himmel, Regen oder Schnee ein Wetterumschwung automatisch erfolgen. Dazu gibt es auch Arrrays für Regen/Schnee Partikel Erzeugung 


Viel Spaß erstmal beim Testen

Wenn das Thema interessiert bitte zurückmelden, dann gibts mehr dazu
Antworten }
Thanks given by: Gisela Daniels


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste