23.11.2023, 20:03
(23.11.2023, 13:57)Anachron schrieb: I
Allerrdings gibt es da ein Problem mit dem Laden der Texturen - gerade wenn die Standzeiten der Einzelbilder relativ kurz sind: Die Fläche wird erstmal kurz weiss, bis das Bild geladen ist...
Ein kleiner Trick schafft hier Abhilfe: Alle Texturen, die in dem Wechsler verwendet werden auf Flächen von "Hilfsprims" aufbringen,
ein besserer trick ist die naechste textur einfach auf eine (unsichtbare) seitenflaeche vorzuladen
Code:
integer anzahl;
integer zaehler;
float anzeigedauer = 20;
reset()
{
anzahl = llGetInventoryNumber (INVENTORY_TEXTURE);
zaehler =0;
if (anzahl>1)
{
llSetTimerEvent (anzeigedauer);
llSetTexture(llGetInventoryName (INVENTORY_TEXTURE,zaehler),2);
llSetTexture(llGetInventoryName (INVENTORY_TEXTURE,zaehler+1),1);
zaehler ++;
}
if (anzahl==1)
{
llSetTexture(llGetInventoryName (INVENTORY_TEXTURE,zaehler),2);
}
}
default
{
state_entry()
{
reset();
}
changed(integer change)
{
if (change &CHANGED_INVENTORY)
{
llSetTimerEvent (0.0);
reset();
}
}
timer()
{
llSetTexture(llGetInventoryName (INVENTORY_TEXTURE,zaehler),2);
if (zaehler < anzahl-1)
{
llSetTexture(llGetInventoryName (INVENTORY_TEXTURE,zaehler+1),1);
}
else
{
llSetTexture(llGetInventoryName (INVENTORY_TEXTURE,0),1);
}
zaehler ++;
if (zaehler==anzahl)
{
zaehler =0;
}
}
}