11.07.2026 15:40

Silnik gier: warstwy kolizji — kto z kim się zderza

⏱️ 2 min read
Share:

Pocisk gracza nie powinien trafiać gracza, duch ma przechodzić przez ściany, a niektóre platformy są tylko dla wrogów. To klasyczny problem, na który silniki mają klasyczne rozwiązanie — i nasz właśnie je dostał: warstwy kolizji.

Każdy kolider deklaruje dwie rzeczy: na których warstwach jest (32 warstwy, maska bitowa) i z którymi warstwami się zderza. Filtr jest dwustronny — do zderzenia dochodzi tylko wtedy, gdy obie strony się nawzajem akceptują. Domyślnie wszystko zderza się ze wszystkim, więc istniejące gry działają bez żadnych zmian; jedna liczba na koliderze wystarczy, żeby cała klasa obiektów przestała się widzieć.

Warstwy rozumieją też promienie z poprzedniego łuku: mp.raycast przyjmuje opcjonalną maskę (linia wzroku strażnika może ignorować szybę, po której pocisk się jednak zatrzyma), a węzeł-sonda ma własne pole maski. Brak maski — lub idiomatyczne -1 — oznacza wszystkie warstwy.

Testy pokrywają całą macierz: promień jednej warstwy „widzi przez" płytkę innej i trafia podłogę za nią, skrzynka spada przez platformę, która jej nie akceptuje, a skrypty i graf logiki dają identyczne wyniki. Audyt dorzucił rzecz niepozorną, ale ważną dla przyszłego wydania przeglądarkowego: konwersje wartości maski ze skryptów przechodzą przez bezpieczną ścieżkę całkowitą — bez tego -1 z Lua, na komputerze niegroźne, potrafiłoby zatrzymać grę w przeglądarce.

Fizyka silnika ma tym samym komplet fundamentów: ciała, postać ze ślizgiem, strefy, promienie i filtry. Dalej — kolejne klocki treści.

📚 Related posts

27.08.2026 20:55

Data, której nie cofniemy nawet my

Każdy certyfikat autorstwa dostaje datę zapisaną w blockchainie Bitcoina — takiej nie podważy nikt, my też nie. Sprawdzisz ją bez konta i bez Moonligh...
Continue reading →
27.08.2026 19:35

Twój kolor, wszędzie

Trzy tryby i siedem akcentów, wspólnych dla strony i Moonlight Animate. Motyw jedzie z kontem, profil pokazuje gościom Twoje kolory, a harmonogram sam...
Continue reading →
27.08.2026 18:31

Kto moderuje i na jakiej podstawie

Moderator to teraz osobna rola z własnym zakresem, a nie administrator w przebraniu. Odrzucenie treści wymaga powodu, który trafia do autora razem z d...
Continue reading →

📧 Stay up to date!

Join the waitlist to get notified about new Dev Blog posts and Moonlight platform launch.