Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Verknüpfungen und Phantom
#1
Ich habe mal wieder was gebaut und Probleme.
In jetzigen Fall die Glaskuppel, hier im Bild, die es ermöglicht sich vom Dachgarten in das Gebäude fallen zu lassen.
Die soll und war auch Phantom bis ich das Gebäude verknüpfte.
Dann war sie es nicht mehr.
Auch ein "Teile bearbeiten" gab den Phantomhaken nicht frei.
Es blieb nur das verknüpfte Gebäude zu kopieren und dann das bestehende Original zu entknüpfen.
Aber das es ja nicht sein, sollte ich mal eine Kopie im Shop anbieten lasse ich ja kein Bearbeiten zu.
Also wäre dann das Dach zu.

Ich denke mal das ich nur ein Fehler bei beim Verknüpfen mache, bloß welchen?


Angehängte Dateien Thumbnail(s)
   
Hypergrid : hg.osgrid.org:80:Xenotown
Web: https://laut.fm/xenolandia oder https://laut.fm/jazzvortex
[Bild: Radio-Xenolandia-qr-code-klein.png]
Page: https://Xenopolias.de

Zitieren
#2
Die Eigenschaft Phantom gilt immer für das Gesamtobjekt.
Du kannst in einem Linkset grundsätzlich nicht Phantom- und Solid-Prims mischen.
Du musst dein Gebäude also nolens-volens in zwei Linksets aufteilen - das eine phantom, das andere solid.
Wer nicht weiss wohin er will, der kommt leicht woanders hin.
[-] The following 1 user says Thank You to Anachron for this post:
  • Xenos Yifu
Zitieren
#3
Wenn ich dich richtig verstehe kann ich also nichts verkaufen was ein Phantomprim enthält?
Ich muss ja im Endeffekt "ein" Objekt haben um es verkaufen zu können.
Oder ein Rezzer verwenden was aber für mich völlig böhmische Dörfer sind. Wink
Hypergrid : hg.osgrid.org:80:Xenotown
Web: https://laut.fm/xenolandia oder https://laut.fm/jazzvortex
[Bild: Radio-Xenolandia-qr-code-klein.png]
Page: https://Xenopolias.de

Zitieren
#4
Warum muss ein Objekt, dass du verkaufen willst unbedingt ein einzelnes Objekt sein? Packe beide Teile einfach in eine Kiste ... damit man die Teile dann auch ordentlich positionieren kannst, verpasse beiden ein identisches Rootprim, d.h. gleiche Ortskoordinaten und Ausrichtung - ggf. unsichtbar.

Übrigens: Warum willst du deine Objekte "No Modify" machen? Empfinde ich als ziemlich unhöflich, dem Käufer zu verbieten etwas nach seinen Wünschen anzupassen. "No Mod" ist eine Option, die ich jederzeit ohne schlechtes Gewissen sofort per God-Mode aufbröseln würde ...
Wer nicht weiss wohin er will, der kommt leicht woanders hin.
Zitieren
#5
Mir geht es genau anders rum, ich empfinde es als unhöflich was zu ändern was man geschenkt bekommt in das der Ersteller ja auch viel Arbeit gesteckt hat.

Anders wäre es in SL wo ja manche Objekte unverschämt teuer sind und man L$ mit Euro kaufen muss.
Nur wenige verdienen selber in SL und haben ein Einkommen.

Aber das ist wohl reine Geschmackssache, jedem das seine.
Hypergrid : hg.osgrid.org:80:Xenotown
Web: https://laut.fm/xenolandia oder https://laut.fm/jazzvortex
[Bild: Radio-Xenolandia-qr-code-klein.png]
Page: https://Xenopolias.de

Zitieren
#6
normalerweise sollte mich das Thema nicht kratzen. Aber ich sehe das meine Signatur doch Recht hat und schreib mal einen kleinen Text dazu: 1. Es stimmt nicht ganz, das die Eigenschaft "Phantom" für das gesamte Objekt gilt, wenn man
2. scripten kann, oder zumindest sich mal umsieht ob es da nicht jemanden gibt, der diese Frage schon einmal sich selbst gestellt hat und die Lösung fand"!
Lösung: das Script nennt sich PhantomChild script; frohes suchen
Zitieren
#7
Es gibt einen kleinen Trick, von dem ich allerdings nicht weiss, seit welcher Version er in OpenSim funktioniert.

Mit llSetLinkPrimitiveParamsFast(...) lässt sich ein Child-Prim in einem Linkset auf Phantom setzen. Root Prims lassen sich aber auch damit nicht auf Phantom setzen, ohne dass das ganze Linkset betroffen ist.

Der Trick funktionierte im SL schon lange, hat aber früher im OpenSim nicht funktioniert. Ich versuchte es jetzt wieder mal mit OpenSim 0.9.2 dev wo es problemlos geklappt hat. Soweit ich mich erinnere gibt es Im SL ein Script Fehler, wenn das Script versehentlich im Root Prim angelegt wird. Bei OpenSim habe ich in dem Fall kein Fehler festgestellt, das Script funktionierte einfach nicht.

Beispiel:
Erstelle ein Linkset, öffne es zum Bearbeiten, setze einen Hacken in "Edit linked" und wähle das Prim aus, das du auf Phantom setzen möchtest. Erstellen in diesem Prim ein Script mit nachstehendem Code.

Code:
default
{
    touch_start(integer total_number) {
        // Setzt das Prim in dem sich das Script im Linkset befindet auf Phantom.
        // Achtung: Das Prim darf nicht das Root-Prim sein.
        llSetLinkPrimitiveParamsFast(LINK_THIS, [PRIM_PHYSICS_SHAPE_TYPE,PRIM_PHYSICS_SHAPE_NONE]);

        llRemoveInventory(llGetScriptName()); // Löscht das Script aus dem Prim
    }
}

Wenn Du fertig bist, klicke dein Linkset an, so dass das Prim mit dem Touch Event ausgeführt wird. Dadurch wird das Prim auf Phantom gesetzt und anschliessend aus dem Prim gelöscht.

Solange das Linkset nicht bearbeitet wird kann man es ins Inventar nehmen und nach dem Rezzen aus dem Inventar sind die Prims immer noch Phantom. Wie zuverlässig das funktioniert, z.B. über Grids hinweg oder hinsichtlich Bearbeitungen, bin ich mir nicht sicher.
[-] The following 2 users say Thank You to Pius Noel for this post:
  • Mareta Dagostino, Xenos Yifu
Zitieren
#8
(17.05.2021, 11:46)Cayoun Daydreamer schrieb: normalerweise sollte mich das Thema nicht kratzen. Aber ich sehe das meine Signatur doch Recht hat und schreib mal einen kleinen Text dazu: 1. Es stimmt nicht ganz, das die Eigenschaft "Phantom" für das gesamte Objekt gilt, wenn man
2. scripten kann, oder zumindest sich mal umsieht ob es da nicht jemanden gibt, der diese Frage schon einmal sich selbst gestellt hat und die Lösung fand"!
Lösung: das Script nennt sich PhantomChild script; frohes suchen

Dann nehme ich Xenos das Suchen mal ab: SL-Wiki: Phantom Child

Warnung : "This code relies on a bug in Second Life and may not function in later versions.", d.h. es handelt sich um einen Bug-Exploit Exclamation
Wer nicht weiss wohin er will, der kommt leicht woanders hin.
Zitieren
#9
(17.05.2021, 12:07)Pius Noel schrieb: ...

Wenn Du fertig bist, klicke dein Linkset an, so dass das Prim mit dem Touch Event ausgeführt wird. Dadurch wird das Prim auf Phantom gesetzt und anschliessend aus dem Prim gelöscht.

Solange das Linkset nicht bearbeitet wird kann man es ins Inventar nehmen und nach dem Rezzen aus dem Inventar sind die Prims immer noch Phantom. Wie zuverlässig das funktioniert, z.B. über Grids hinweg oder hinsichtlich Bearbeitungen, bin ich mir nicht sicher.

Das Script aus dem Prim zu löschen ist keine gute Idee, denn diese Einstellung ist nicht restart-fest!
Wie man in dem oben verlinkten Artikel im SL-Wiki nachlesen kann : "It needs to be reset on sim restarts."

Dort findet sich auch eine Script-Lösung, die diesem Umstand Rechnung trägt und das Prim nach einem Restart erneut auf Phantom setzt.
Wer nicht weiss wohin er will, der kommt leicht woanders hin.
[-] The following 2 users say Thank You to Anachron for this post:
  • Mareta Dagostino, Pius Noel
Zitieren
#10
Was die Rechte betrifft, so finde ich, dass es allen selber überlassen ist, wie sie ihre Sachen weitergeben. Etwas auf nicht modifizierbar zu setzen finde ich überhaupt nicht unhöflich.

In der Regel bevorzuge ich für mich Dinge, die sich bearbeiten lassen, respektiere aber auch, wenn das nicht möglich ist. Gefällt es mir, aber es passt aus irgendwelchen Gründen nicht, dann lass ich es sein oder baue es selber. So einfach ist das.

Ich selber würde etwas, das ich weitergebe, nur dann auf "No Mod" setzen, wenn es dafür trifftige Gründe gibt. Im OpenSim fällt mir dazu nicht sofort etwas ein. In der Regel reicht ein Beipackzettel (Notecard) der auf linzenzrechtliche Umstände hinweist. Im SL ist es aber häufig so, dass Ersteller*innen vorfabrizierte Teile für ihre eigenen Kreationen verwenden, die sie dann nur nicht modifizierbar weitergeben dürfen.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Phantom Objekte löschen Xenos Yifu 9 7.801 18.06.2020, 13:38
Letzter Beitrag: Anachron

Gehe zu:


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