Archivieren und Wiederfinden von Assets (Modelle,Texturen ...)

Christoph Balhaus
Christoph Balhaus
Hallo zusammen,

ich suche nach einer praktikablen Lösung für ein lästiges Problem: das Verwalten und Auffinden von Assets die für alle Beteiligten in einer Gruppe verfügbar sein sollen. Dabei denke ich vor allem an fertig hochgeladene Modelle, aber ggf. auch an Texturen und Materialien. Mir reicht eigentlich schon ein Katalog mit etwas Metainformation, wie z.B. wer dieses Teil hat, wo im Inventar es sich befindet oder wo die Quellen im Repository liegen, vielleicht zusammen mit einem Bild um zu sehen ob es das Richtige ist.

Das Problem ist, wenn wir zusammen an einem Projekt arbeiten, wird es zunehmend schwierig den Überblick zu behalten was bereits vorhanden ist oder wo noch Bedarf besteht. Das betrifft schon mein eigenes Inventar, noch mehr natürlich die Dinge die wir gemeinsam zusammengetragen oder gebaut haben.

Wir haben uns bislang mit einer Art in-world Katalog beholfen - Eine Sim auf der wir, thematisch sortiert, Dinge gerezzt haben die wir vermutlich in absehbarer Zeit benötigen werden. Das ist aber umständlich weil zum einen immer mit einem TP verbunden, zum anderen beginnt das ganze System zusammenzubrechen, weil die Zeiten zum rezzen immer länger werden oder Modelle gar nicht mehr vollständig im Viewer erscheinen.

Wichtig ist, dass der Aufwand zur Pflege dieses Katalogs nur minimal ist, da man ihn ansonsten nicht dauerhaft benutzen würde, Also nur wenige Klicks zum registrieren eines Objektes. Sehr wahrscheinlich wird die Installation/Anpassung von Software und/oder die Erstellung eines Scriptes erforderlich sein, aber das ist eine einmalige Sache.

Meine aktuell beste Idee besteht darin, Software für eine Web-Photogallerie zu missbrauchen und die Zusatzinformation als Metadaten zu speichern. Das Hochladen würde dann mit einem Script erfolgen. Aber vielleicht hat jemand von euch noch eine bessere Idee oder kennt eine fertige Software die das leistet (innerhalb der Reichweite eines Hobbyprojektes ;-), denn so neu ist das Problem ja sicherlich nicht.

/Chris

Comments

  • Lena Vanilli
    Lena Vanilli
     Administrator
    Hallo Christoph,

    ich kann mir gut vorstellen, dass so ein Tool mehr Transparenz und Zeitersparnis bei der Suche nach Assets bringt. Ein externes Archivierungstool wäre da wohl auch nur sub-optimal, weil es im OpenSim ja doch so einige Spezialitäten wie Freigaben, Gruppenzugriffe, Meta-Suche usw. gibt.

    Ich denke mal, dass es einige Metros gibt, die ähnliche Probleme haben. Vielleicht sollten wir deshalb über ein gridweites Tool nachdenken, wo die Assets entweder gänzlich freigegeben werden oder nur einer bestimmten Gruppe zugänglich sind. Wir haben da ja schon ein kleines Suchtool für freigegebene Assets. Aber das erfüllt bei weitem nicht diese Anforderungen.

    Hast du nicht Lust hier einmal die Anforderungen zu definieren? Vielleicht haben auch andere Metros Lust, sich daran zu beteiligen. Ich hätte schon voll Bock das als Gridservice umzusetzen. Allerdings erst ab in 4 Wochen, wenn wir in der Metro die Datenbanken bereinigt haben. Aber bis dahin könnten ja schon mal die Vorgaben / Anforderungen definiert werden.

    Liebe Grüße
    Lena
  • Christoph Balhaus
    Christoph Balhaus
     Member edited January 7
    Hallo Lena,

    ich glaube was ich mir eigentlich wünschen würde, wären Gruppeninventare mit einer Art Live-Vorschau des Inhalts ^^ ... wird es natürlich nicht geben.

    Ich tue mich etwas schwer damit so ein Tool allgemeingültig zu spezifizieren, da ich nicht wirklich weiss wie die anderen nach Items suchen und wo/ob überhaupt  Bedarf besteht, aber ich habe mir am Wochenende nochmal Gedanken darüber gemacht wie ich weiter vorgehe und was mir wichtig ist.

    Wichtig ist mir, dass die Objekte schnell auffindbar sind, auch wenn man nur eine ungefähre Vorstellung von dem hat was man sucht und das geht für mich am besten mit einer visuellen Darstellung durch die wir schnell durchblättern können. Das wiederum schliesst eigentlich alle in-world Lösungen aus.

    Ich werde mal einen externen Index aufsetzen. Im Prinzip ist das einerseits eine Datenbank die auf einer Webseite die Items kompakt mit Bild und etwas Metainformation präsentiert. Zu den letzteren gehören zwingend der Name im Inventar und für die selbst erstellten oder hochgeladenen Teile auch der Pfad im SVN Repository. Optimal wären für die Auswahl noch Angaben um die Serverlast einschätzen zu können (Vertices, Faces...), die Lizenz und der Ersteller. Das ganze in Kategorien ablegbar und mit Tags versehbar. Worauf ich verzichte ist jegliche Art von Rechteverwaltung und sonstiger Bürokratie. Jeder der Zugriff auf die Datenbank hat, hat die auch unbeschränkt. Da ich noch nichts gefunden habe was mir signifikant Aufwand erspart, wahrscheinlich alles neu in Python/Flask.

    Weiterhin gehört dazu ein Script, das lokal auf dem PC sitzt und das Hochladen der Screenshots und restlichen Daten mit möglichst wenig Klicks erledigt. Das sollte gehen, weil, wenn ich das gleich beim Erstellen mache, alle Informationen schon herum liegen. Das ginge natürlich mit etwas Javascript auch über die Webseite.

    Die Assets selber, sofern sie bereits hochgeladen sind, liegen alle im Inventar eines "Datenbank Avatars" der, in einer zukünftigen Version, die auch über eine Aktion auf der Webseite gesteuert ausliefern könnte. Aber das würde ich nur angehen, wenn sich das im ersten Schritt bewährt hat.

    Die Beschränkungen wären, dass es zunächst pro Instanz nur eine Benutzergruppe gäbe ("alle") und dass Ganze wäre ein Tool um die gemeinsame Arbeit etwas zu vereinfachen, nicht jedoch um Assets weiter zu verteilen. Dafür wäre noch mehr Aufwand erforderlich.

    Ich denke, dass sich das alles auch Gridweit realisieren lässt, aber der Mehraufwand mit der Rechteverwaltung und den ganzen Permissions und vielleicht auch der Vermeidung von Spam ist sicherlich nicht ohne. Ausserdem verwenden wir als Sandbox unser eigenes kleines Grid, so dass viele Assets auch und gerade dort auffindbar sein müssen.

    Aber so etwas gridweit zu implementieren wäre in meinen Augen sicher eine cooles Feature, dass, soweit ich weiss, noch kein anderes Grid hat.

    /Chris

  • Lena Vanilli
    Lena Vanilli
     Administrator edited January 9
    *** English Version Below ***

    Hallo Christoph,

    das Search-Tool, das bis jetzt für Recherche-Zwecke eingesetzt werden kann (https://metropolis.hypergrid.org/obj_search.php) , ist von den Funktionen her sehr limitiert und umfasst auch nur Freebies. Diesem Tool würde ein Facelifting auch ganz gut tun!  :D  Das könnte man dann designmässig auch hierfür nehmen. 

    Aber "dein" Archivierungstool sollte  in erster Linie dazu dienen die Assets zu kategorisieren (strukturieren) und zu taggen. Die optimierte Datenbank-Abfrage existiert bereits im bestehenden Search-Tool. Das wäre die größte Hürde bei der Schlüssel-Abfrage von nicht indizierten Datenbankfeldern in einer 3TB großen Datenbank (wie der Asset-Datenbank der Metro). 

    Ich könnte mir auch gut vorstellen, dass man z.B. Texturen mit "nur Lesen" freigibt. Dann hätten andere User die Chance, bei dir anzufragen, ob du die eine oder andere Textur freigeben möchtest. Das gleiche gilt natürlich auch für Objekte.

    Und bei den Objekten haben wir es natürlich schwer mit Vorschaubildern (wie bei den Texturen). Hier könnte ich mir die Einbindung von AFRAME vorstellen. Dann wird das Objekt aus seiner "Verpackung" genommen, von OS in AFRAME umgewandelt und im Browser interaktiv präsentiert.

    Das wären so meine Vorstellungen für ein gridweites Tool. Viel ist schon fertig. Aber das Design und die AFRAME-Darstellung nimmt noch Zeit in Anspruch.

    Apropos AFRAME: Wir haben damit begonnen einen Parser für AFRAME zu schreiben. Dieser Parser setzt eine OAR-Datei (oder ein Objekt aus dem Inventar) in eine HTML5-Datei mit Javascript, THREE.js und AFRAME um. Diese Seiten können wir dann in das Tool einbauen. Mit dem Parser wird es dann auch möglich sein mit OS-Code browserfähige  HTML5-VR-Seiten zu erstellen. Partikel, MultiUser, Scripting, Animationen, Voice, Radio, Licht/Schatten, Physics, Spiegelungen(!), VR-Brillen usw. werden unterstützt. Das Ergebnis ist 100% im Browser ablauffähig und benötigt keinerlei Plugins. Alles ist bereits im Browser vorhanden; selbst die Builder-Funktionen zur Veränderung der Scene.

    https://metropolis.hypergrid.org/physics/examples/bounce.html

    Liebe Grüße
    Lena

    ----------------------------------------------------------------------
    *** English Version ***


    Hello Christoph,

    The search tool that we currently use for research purposes (https://metropolis.hypergrid.org/obj_search.php) is very limited in functions and addresses only freebies. This tool would do a facelift quite well! : D 

    But "your" archiving tool should primarily be used to categorize (structure) and tag assets. The optimized database query already exists in the existing search tool. That would be the biggest hurdle in key querying unindexed database fields in a 3TB database (like the Metro asset database).

    I could well imagine that you could Textures with "read only" releases. Then other users would have the chance to ask you to release some textures or not. Of course, the same applies to objects.

    And with the objects, of course, we have a hard time with thumbnails. Here I could imagine the integration of AFRAME. Then the object is taken out of its "packaging", converted from OS to AFRAME and presented interactively in the browser.

    That would be my idea for a grid-wide tool. Much is already done. But the design and the AFRAME presentation takes even more time.

    Speaking of AFRAME: We started writing a parser for AFRAME. This parser converts an OAR file (or an inventory item) into an HTML5 file with Javascript, THREE.js, and AFRAME. We can then integrate these pages in the tool. With the parser it will then be possible to create browser-capable HTML5 VR pages with OS code. Particles, MultiUser, Scripting, Animations, Voice, Radio, Light / Shadow, Physics, Reflections (!), VR Glasses etc. are supported. The result is 100% executable in the browser and requires no plugins. Everything is already in the browser; even the builder functions for changing the scene.


    best regards
    Lena
  • Mareta Dagostino
    Mareta Dagostino
     Member edited January 9
    Hallo Lena,

    ich habe gerade zufällig im aktuellen Search-Tool ein mögliches Problem entdeckt. Ein Objekt auf meiner Region hatte versehentlich den Haken bei "Show in search" (siehe unten im ersten verlinkten Bild rot eingekreist). Es ist aber gar kein Freebie, sondern für die Grafikdateien einschließlich der Texturen habe ich eine personengebundene Lizenz erworben. Inworld steht ansonsten alles korrekt (siehe grüne Markierungen).


    Jetzt glaube ich zwar nicht an die Wirksamkeit von DRM Systemen, aber unbedarfte Nutzer könnten sich möglicherweise per UUID das Objekt holen oder je nach künftiger Implementierung mit GET ausliefern lassen? Das Vorschaubild ist stark verpixelt, das wird vermutlich kein Problem sein.


    Viele Grüße,
    Mareta
  • Lena Vanilli
    Lena Vanilli
     Administrator edited January 9
    Huhu Mareta,

    wir erweitern die Bedingung mal um die Abprüfung der Copy-Berechtigung. Dann taucht es da nicht mehr auf. Du hast Recht: es ist ja ein Freebie-Search-Tool. Wenn man's nicht kopieren kann, dann ist es ja auch kein Freebie. ;) Aber ohne diese Berechtigung kann es momentan auch Niemand kopieren. Aber wie gesagt: wenn wir die Bedingungen erweitern, fällt es sowieso aus dem Search.

    Liebe Grüße
    Lena

    PS: Bei dem Link zu dem AFRAME-Beispiel hatte sich eine falsche Endung eingeschlichen. Das habe ich jetzt abgeändert. Der Link funzt jetzt:

    https://metropolis.hypergrid.org/physics/examples/bounce.html

    Thanked by: Mareta Dagostino
Sign In or Register to comment.

Welcome

It looks like you're new here. If you want to get involved, click one of these buttons!

Discussions

© Copyright 2019 - Metropolis Metaversum
All times are GMT