/particle: Was delta und speed wirklich bedeuten – und der count=0-Trick
Die vier Zahlen nach der Position sind keine Richtung. Hier erfährst du, was delta und speed bewirken, warum sich count=0 völlig anders verhält und wie du ein Partikel ausrichtest.
/particle flame ~ ~1 ~ 0.5 0.5 0.5 0.01 20
└─ delta ─┘ spd count
Diese vier Zahlen sind der am häufigsten falsch gedeutete Teil des Befehls.
delta ist Streuung, keine Richtung
dx dy dz beschreiben eine Gaußsche Streuung um die Position — wie weit die Partikel auf jeder Achse streuen. 0.5 0.5 0.5 ergibt eine unscharfe Kugel; 2 0 0 ergibt eine Linie entlang X.
Sie sind kein Geschwindigkeitsvektor. Positiv und negativ machen keinen Unterschied; -2 0 0 und 2 0 0 erzeugen dieselbe Linie.
Außer count ist 0
Setze count auf 0, und die Bedeutung jeder vorangehenden Zahl ändert sich:
| count | delta bedeutet | speed bedeutet |
|---|---|---|
| ≥ 1 | zufällige Streuung | zufälliger Geschwindigkeitsbetrag |
| 0 | ein Richtungsvektor | die Geschwindigkeit entlang dieser Richtung |
/particle flame ~ ~1 ~ 0 1 0 0.5 0 → one particle shot straight up at 0.5
Das ist die einzige Möglichkeit, ein Partikel auszurichten. Jede Antwort auf „Wie mache ich einen Strahl" landet irgendwann hier. Der Preis ist ein Partikel pro Befehl, also ist ein Strahl eine Schleife oder eine Kette.
speed ist nicht immer speed
Bei den meisten Partikeln ist speed ein Geschwindigkeitsmultiplikator. Bei einigen wenigen ist er komplett umfunktioniert:
dust— die Größe ist ein Parameter, und speed bewirkt nichtsnote— die x-Geschwindigkeit wählt die Farbe: mitcount 0ist sie das x-Delta malspeed, und0bis1geht einmal um das Farbrad (ein Notenblock sendet Tonhöhe ÷ 24). Bei höherem count ist die Farbe zufälligentity_effect— die Farbe stammt aus dem Alpha-RGB-Argument
/particle note ~ ~1 ~ 0.5 0 0 1 0 ist also kein schnelles Partikel — die 0.5 und die speed 1 zusammen machen daraus eine andere Farbe.
Partikel mit eigenen Argumenten
/particle dust{color:[1.0,0.0,0.0],scale:1} ~ ~ ~ 0 0 0 0 1
/particle block{block_state:"minecraft:stone"} ~ ~ ~ 0.3 0.3 0.3 0 10
/particle dust_color_transition{from_color:[1,0,0],to_color:[0,0,1],scale:1} ~ ~ ~ 0 0 0 0 1
Der Argumentblock steht direkt nach dem Partikelnamen, vor den Koordinaten. Ihn ans Ende zu setzen ist der übliche Syntaxfehler.
force und der Betrachter
Der Befehl endet mit einem optionalen Modus und Spieler:
/particle flame ~ ~ ~ 0 0 0 0 1 force @a
normal respektiert die Partikeleinstellung jedes Clients und ein Sichtbarkeitslimit von 32 Blöcken. force zeigt das Partikel unabhängig davon und bis zu 512 Blöcke weit. Für alles, was ein Spieler sehen muss — ein Boss-Telegraph, ein Quest-Marker — ist force erforderlich, und deshalb funktionieren deine Partikel bei dir, aber nicht bei jemandem mit reduzierten Partikeln.
Performance
Partikel sind clientseitiges Rendering, die Last trifft also die Spieler, nicht den Server. Ein count von 200 pro Tick pro Spieler wird die Bildrate auf bescheidener Hardware senken, obwohl die Server-TPS unberührt bleiben. Verteile die Emissionen über mehrere Ticks, statt einen einzigen riesigen count auszugeben.
Durchstöbere jeden Partikeltyp und über 1.900 Sound-IDs mit fertigen Befehlen in der Particle & Sound Gallery.