/particle: co naprawdę oznaczają delta i speed oraz sztuczka z count=0
Cztery liczby po pozycji to nie kierunek. Oto co robią delta i speed, dlaczego count=0 zachowuje się zupełnie inaczej i jak wycelować cząsteczkę.
/particle flame ~ ~1 ~ 0.5 0.5 0.5 0.01 20
└─ delta ─┘ spd count
Te cztery liczby to najbardziej błędnie rozumiana część tej komendy.
delta to rozrzut, nie kierunek
dx dy dz opisują rozrzut gaussowski wokół pozycji — jak daleko cząsteczki rozpraszają się na każdej osi. 0.5 0.5 0.5 daje rozmyłą kulę; 2 0 0 daje linię wzdłuż osi X.
To nie jest wektor prędkości. Znak dodatni i ujemny nie robią różnicy; -2 0 0 i 2 0 0 dają tę samą linię.
Chyba że count wynosi 0
Ustaw count na 0, a znaczenie każdej poprzedzającej liczby się zmienia:
| count | delta oznacza | speed oznacza |
|---|---|---|
| ≥ 1 | losowy rozrzut | losową wartość prędkości |
| 0 | wektor kierunku | prędkość wzdłuż niego |
/particle flame ~ ~1 ~ 0 1 0 0.5 0 → one particle shot straight up at 0.5
To jedyny sposób, by wycelować cząsteczkę. Każda odpowiedź na pytanie „jak zrobić wiązkę" prędzej czy później tu trafia. Koszt to jedna cząsteczka na komendę, więc wiązka to pętla albo łańcuch.
speed to nie zawsze szybkość
Dla większości cząsteczek speed to mnożnik prędkości. Dla kilku ma zupełnie inne zastosowanie:
dust— rozmiar jest parametrem, a speed nic nie robinote— prędkość x wybiera kolor: przycount 0to delta x razyspeed, a0do1przechodzi raz wokół koła barw (Blok dźwiękowy wysyła wysokość dźwięku ÷ 24). Przy wyższym count kolor jest losowyentity_effect— kolor jest brany z argumentu alpha-RGB
Więc /particle note ~ ~1 ~ 0.5 0 0 1 0 to nie szybka cząsteczka — 0.5 i speed 1 razem dają jej inny kolor.
Cząsteczki z własnymi argumentami
/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
Blok argumentów wstawia się bezpośrednio po nazwie cząsteczki, przed współrzędnymi. Umieszczenie go na końcu to typowy błąd składni.
force i widz
Komenda kończy się opcjonalnym trybem i graczem:
/particle flame ~ ~ ~ 0 0 0 0 1 force @a
normal respektuje ustawienie cząsteczek każdego klienta oraz limit widoczności 32 bloków. force pokazuje cząsteczkę niezależnie od ustawień i aż do 512 bloków. Dla czegokolwiek, co Gracz musi zobaczyć — zapowiedź bossa, znacznik zadania — force jest konieczne i to dlatego twoje cząsteczki działają u ciebie, a nie u kogoś z ograniczonymi cząsteczkami.
Wydajność
Cząsteczki to renderowanie po stronie klienta, więc koszt ponoszą Gracze, nie serwer. count rzędu 200 na tick na Gracza obniży liczbę klatek na skromnym sprzęcie, mimo że TPS serwera pozostanie nietknięty. Rozłóż emisje na kolejne ticki, zamiast wydawać jedno ogromne count.
Przejrzyj każdy typ cząsteczki i ponad 1900 identyfikatorów dźwięków z gotowymi komendami w Galerii cząsteczek i dźwięków.