Also da ist Vorsicht geboten, wenn an den diversen Services geschraubt wird. Mittlerweile scheint klar zu sein, dass die Client-Abstürze daher rühren, dass ich zwischenzeitlich auf einen lokalen AssetService umgeschaltet hatte und es Unverträglichkeiten gibt nach dem Wiederaufsetzen des GridService. Zwar ist es mir gelungen die Grid.ini so zu erweitern, dass alle Regionen wieder starten konnten (lokaler Asset- und InventoryService, konfiguriert auch in der Grid.ini und nicht nur in der GridCommon.ini) was jedoch dann gegeben war, war eben dieses leichte Chaos: Es war nicht mehr möglich im Inventar Kleiderstücke oder Shapes / Skins anzulegen. Also wieder zurückrudern, alte Config wiederherstellen und hoffen, dass das entstandene Chaos sich auf meine eigenen Dinge beschränkt, was leichter zu ertragen ist 😉
AssetService & Co
Nun, das Bauen schreitet voran. Erste Wege werden angelegt mit schlicht produzierten Fotografien die jedoch schon ganz beachtlich wirken. Gut zu lernen dabei, dass man bei Übergängen gerne mal 1cm die Objekte heben oder senken sollte, damit es nicht zu dem üblichen unangenehmen Flackern kommt.
Etwas weniger Angenehmes ist aber, dass es nach einiger Arbeit stets zum Absturz des Clients kam wenn die Textur gewechselt werden sollte. Vier Versuche reichten aus mit demselben Ergebnis um für jetzt zu sagen: Es reicht ;). Anschließende Kurztests die AssetDB und die InventoryDB lokal zu erzeugen (was ich eh vorhatte, da es mir lieber ist wenn die Dinge auf der eigenen Maschine gespeichert werden; schließlich möchte man auch den GridServer ja nicht überfrachten – was auch genau das Problem gewesen sein könnte) scheiterten, es fehlt wohl etwas, das schlichte Verweisen auf den lokalen Server beim AssetService reicht nicht. Eigentlich klar, denn irgendwo muss ja auch noch der DB-Connector konfiguriert werden. Wo und wie das bei einer OSGrid-Anbindung zu tun ist und ob das überhaupt möglich ist werden wir noch ermitteln. 🙂
Web on a Prim continued: Einstellungen, Features und Umwege
Nun habe ich doch einmal die Sicherheitseinstellungen getestet, also den Zugriff auf bestimmte URL-Muster zu begrenzen. Und ich hatte Recht: Irgendeine Einstellung in Second Life (oder in der Sandbox, die ich nutzte, um das Ganze auszuprobieren) verhinderte, dass ich die erlaubten URL-Muster auf wolfsbone.de einschränkte. In OSgrid funktioniert es: *wolfsbone.de* als Filter eingetragen sorgt dafür, dass ich als User in der Adresszeile eintragen kann was ich will, der Browser Zeit immer nur Seiten an, die sich auf der Domain wolfsbone.de befinden. Ist natürlich nachteilig bei externen Links, macht also im Blog nicht so wirklich Sinn. Das Ganze ist ja aber auch dazu gedacht, den Zugriff auf andere Seiten zu unterbinden, wenn man nur bestimmte Seiten anzeigen will. Will man nun verhindern, dass jemand wie wild durch alles Mögliche surft, lässt sich das bis zu einem gewissen Grade auch erreichen, indem man einfach die Adresszeile des Browsers ausblendet (also die Mini-Toolbar statt der Standard-Toolbar einblendet).
Ein sehr gutes und interessantes Feature habe ich noch entdeckt bei meinen Experimenten. Und zwar zeigt die Toolbar eine Lupe an. Zunächst dachte ich, diese Lupe würde den Inhalt des Browsers heranzoomen, was ich nur für begrenzt sinnvoll hielt. Dahinter aber steckt eine wirklich sinnvolle Funktion: Die Kamera zoomt genau auf das Prim, so das ich den Inhalt bestmöglich betrachten kann (wie das aussieht, siehe Screenshot weiter unten).
Ja, und dann war noch die Frage, wie man Nutzern anderer Viewer klar macht, dass in dem gerade verwendeten Prim mehr steckt, als man auf Anhieb vermuten könnte. Die Lösung ist denkbar einfach: Neben der Media-Option lässt sich auch eine ganz normale Textur auf der Fläche laden. Sind die Medien deaktiviert, wird die normale Textur angezeigt. Und die kann man dann ja nutzen, um weitere Informationen zu transportieren:
Dann noch ein ärgerlicher Punkt im Zusammenspiel von Viewer 2 und OSgrid: Offenbar kommt der Viewer nicht ganz mit den Dingen, die unter Aussehen definiert wurden, klar. Zunächst konnte ich mich nur als Wolke sehen, und nachdem ich neue Outfits angelegt hatte, wurden diese immer dann teilweise überschrieben, wenn ich mich wieder mit einem anderen Viewer einloggte. Teilweise trug mein Avatar einzelene Teile doppelt, was dann zu unschönen Effekten führte.
Web on a prim – was funktioniert, was nicht
Voller Begeisterung über die Web-on-a-Prim-Funktionalität des Viewer 2 habe ich mich mal zu ein paar Tests hinreißen lassen – sowohl in OSGrid als auch im Vergleich dazu in Second Life (in der Sandbox). Wie Bert ja schon andeutete, schafft dieses Feature wahrlich neue Möglichkeiten Inworld, lässt es doch alle Beschränkungen hinter sich (oder sagen wir mal: viele), die kreatives Arbeiten jenseits der Bautätigkeit behindern.
Also zunächst einmal das, was der Browser kann: sehr, sehr viel. Alleine schon dass man mit der jeweiligen Webseite auf dem Prim interagieren kann wie in jedem anderen Browser, ist revolutionär. Man kann scrollen, Text markieren, auf Links klicken und Formularfelder ausfüllen. Aber der Browser kann offenbar noch mehr: Javascript & Co. scheinen für ihn ebenfalls kein Problem zu sein. Mir gelang es nicht nur mühelos, dieses Blog auf einem Prim aufzurufen. Ich konnte mich in den Administrationsbereich einloggen. Ich konnte den Editor aufrufen – für sich genommen relativ profane Dinge, an denen aber schon die meisten Handy-Browser scheitern. Noch mehr: Ich konnte sogar die Mediengalerie aufrufen und (vorhandene) Bilder einfügen. Was ich nicht konnte, war neue Medien hochzuladen, aber das scheint auch naheliegend. Ich nehme mal an, dass berechtigungen im Dateisystem verhindern, dass ich darauf zugreifen kann (er müsste ja auf das Dateisystem des Grids zugreifen, logisch, dass das nicht geht). Ich vermute, dass ein solcher Aufruf (Zugriff auf das Dateisystem) schon Viewerseitig untersagt ist.
Hier jedenfalls mal ein paar Screenshots, wie ich mich auf dem Blog (mit markiertem Text) und im Admin-Bereich des Blogs bewege:
Zunächst wunderte ich mich, dass die Webseiten-Darstellung beim Relog nicht mehr vorhanden war und ich den Home-Button in der eingeblendeten Leiste klicken musste, damit die Seite aufgerufen wird. Nach ein bisschen Googeln stellte ich aber fest, dass man lediglich die automatische Wiedergabe von Medien einstellen muss, damit auch die Seite direkt (also ohne zusätzliche Interaktion des Nutzers) angezeigt wird.
Etwas hakelig scheinen noch die Berechtigungseinstellungen zu sein. So wurde mir beispielsweise – wenn ich als Besitzer des Prims untersagte, dass jeder die Steuerungsleiste nutzen darf – auch als Besitzer die Steuerungsleiste nicht mehr angezeigt, obwohl das Häkchen „Eigentümer darf Steuerungsleiste nutzen“ gesetzt war.
Was leider auch nicht angeboten wird (im Viewer 2) ist die Möglichkeit, beim anklicken des Prims die Medien wiederzugeben. D.h., ich muss entweder die Steuerungsleiste sehen oder die Parzellenmedien automatisch wiedergeben.
Was in Secondlife nicht so recht zu funktioniert hat, war die Whitelist (welche Seiten dürfen aufgerufen werden). Google.com als Eintrag wurde akzeptiert. Wolfsbone.de/simworlds nicht. Ich vermute, dass das eine Einstellung in Second Life ist, habe es aber in OSGrid noch nicht getestet.
Äußerst schade ist natürlich auch, dass das Feature (noch) nicht von anderen Viewern unterstützt wird. Das liegt aber wohl daran, dass es eher ein Viewer-Feature als ein Inworld-Feature ist. Mit meinem eher bescheidenen technischen Verstand würde ich vermuten, dass die einzige Erweiterung Inworld darin besteht, dass im Prim eine URL hinterlegt wird (und die Anweisung, auf welcher Seite des Prims diese dargestellt werden soll sowie diverse Berechtigungen), alles andere macht der Viewer.
Media on a Prim mit OpenSim
Wunderbar, das klappt 🙂
Und schafft somit ganz neue Möglichkeiten.
Insbesondere Bilderausstellungen oder inworld-Dokumentationen sind somit jetzt möglich, Web3D nähert sich mit großen Schritten.
Bedauerlicherweise ist – nicht nur für das Anlegen – sondern auch für die Darstellung der SL-Viewer2 notwendig. Das wird den Kreis der Nutzer natürlich stark einschränken und unsereiner wird sich möglicherweise damit abfinden müssen, sich um das sehr gewöhnungsbedürftige Design des SL-Viewers zu kümmern um damit die mit anderen erreichte Effizienz beim Bauen zu erreichen. Aber die Vorteile scheinen im Moment zu überwiegen, schauen wir mal was die Performance sagt.
Web on a Prim mit dem Viewer 2
„Web on a Prim“ scheint mittlerweile Problemlos möglich zu sein. Und zwar nicht so, wie man es bisher machte (kompliziert mit Media-Textur über die Landeinstellungen), sondern pro Prim und einfach über die Textureinstllungen. Das ist aber nicht das einzig neue: Hat man eine URL für eine Adresse definiert, wird aus dem Prim sogar ein vollwertiger Browser, über dem eine Adressbar eingeblendet wird. Allerdings (und hier kommt ein kleiner Haken): Das Ganze funktioniert nur mit dem Viewer 2 (von Linden). Ich habe es in SL selbst ausprobiert. Ältere (oder andere aktuelle Viewer wie der Hippo) scheinen das Feature nicht zu unterstützen. Dass es aber grundsätzlich auch in OpenSim läuft, demonstriert folgendes Video (via Grid-Gazette):
Ninja Number Two
Im Laufe des Tages konnte ich heute beobachten, dass die Load der Maschine recht erheblich war. Der sonst übliche Neustart wegen aufgeblähtem Mono brachte nichts, ohne Betrieb auf den SIMs blieb die Last bei einer nahezu ausgelasteten CPU (von zweien). Also dann mal rein ins Grid und schauen was da so los ist. Der erste Eindruck: Das übliche wenn etwas viel Power nimmt: Bewegen war kaum möglich. Mittels Ctrl-Shift-1 war denn auch klar wo es herkam: 200ms und mehr Physics-Time je Frame, wo das verursacht werden mag? ;). Ein Sichten der vorhandenen Objekte brachte denn auch Klarheit, und zunächst dachte ich wir hätten Besuch gehabt von jemandem der ein wenig „aufgeräumt“ hat: Nahezu alle physischen Objekte lagen wild zuckend auf dem Boden rum statt locker zu pendeln wie es die Absicht war. Ob das jetzt am Neustart lag oder sich die Dinger einfach im Laufe der Zeit verselbständigen bleibt zunächst unklar. Klar ist auf jeden Fall eines: So geht’s nicht, weil dass sich während der Abwesenheit ein beliebiges Chaos einstellt ist nicht akzeptabel. Also war es das zunächst mit der Ninja-Physics, ich gehe wieder zurück auf die althergebrachte Steuerung von Objekten und konstruiere die „Gelenke“ selbst. Zwar wesentlich aufwändiger, aber dafür auch sicher. Außerdem brauche ich keinerlei Hilfsobjekte die die Bewegungen zwangs-initiieren. 🙂
klein aber fein
Die Aufgabenstellung lautete: Wie erzeuge ich ein wechselndes Hintergrund-Bild für eine Seite?
Die Lösung war – dank der umfassenden Möglichkeiten der bash, schnell gebastelt:
[code lang="bash"] #!/bin/sh range=`ls *.jpg | grep -v background | wc -l` number=$RANDOM let "number %= $range" if [ $number -eq 0 ]; then let "number++"; fi name=`ls | tail -$number | head -1` cp $name background.jpg [/code]
Das „Programm“ geht davon aus, dass es ein Verzeichnis gibt in dem die zu wählenden Bilder lagern (so ne Art „<body background=’background/background.jpg‘>“. Dort erzeugt es die Menge der vorhandenen Bilder abzüglich des einen das später der aktuelle Background wird (range). Es wird mittels $RANDOM und dem sich anschließenden Modulo (Rest einer ganzzahligen Division) eine Zufallszahl ermittelt die innerhalb dieser Menge liegt (number). Dann wird diese Zufallszahl-Menge an Dateien angelistet und davon nehmen wir uns die erste (head -1). Das wiederum kopieren wir auf background.jpg, welches in der Seite fest verdrahtet als Hintergrund genommen wird. Und schon haben wir – vielleicht noch mit einem reload im Meta-Bereich der index.html oder index.php oder wie auch immer einen wechselnden Hintergrund. Wird natürlich angesteuert über die cron – wie sonst ;), zum Beispiel mit einem „*/15 * * * * (cd theSite/background && ./generate.sh)“, wenn das kleine Ding von oben in „generate.sh“ gespeichert wurde, womit also dann alle 15 Minuten ein anderer Hintergrund der vorliegenden Bilder erzeugt würde.
(K)(l)eine Arena

Wer sich fragt, was ich da gerade auf dem Bild mache, ob dort vielleicht das neue OSGrid-Fußball-Stadion entsteht oder eine Art virtuelles Guggenheim… Mit Letzterem liegt man gar nicht so schlecht. Es ist der Versuch, eine Ausstellungshalle zu bauen, um Bilder und Fotos zu zeigen, und zwar nicht der übliche viereckige Kasten, sondern mal was Ausgefalleneres.
Allerdings sind das nur Vorentwürfe bzw. Tests, die gerade dort entstehen. Bauen werde ich das Ding wohl auf einem lokal laufenden Grid, um es dann vielseitig einsetzen zu können.
wunderschön
thk lohnt sich mal wieder. 🙂



