11.07.2026 19:46

Silnik gier: martwa strefa i drżenie kamery

⏱️ 2 min czytania
Udostępnij:

Po podstawowym śledzeniu kamery silnik gier 2D Moonlight Studio dostał dwa dodatki, które zmieniają odczucie z gry: martwą strefę i drżenie ekranu.

Martwa strefa — koniec kołyszącej się kamery

Kamera przyklejona sztywno do bohatera drga przy każdym drobnym ruchu — skoku w miejscu, dygotaniu przy ścianie. Martwa strefa to niewidzialny prostokąt w środku kadru: dopóki bohater się w nim mieści, kamera stoi nieruchomo. Dopiero gdy z niego wyjdzie, kamera zaczyna go doganiać.

mp.camera_deadzone(kamera, 80, 60)

Efekt jest natychmiast wyczuwalny: obraz przestaje falować, a kamera reaguje tylko na ruch, który naprawdę tego wymaga.

Drżenie ekranu — siła uderzenia

Wybuch, cios, lądowanie kolosa — wszystko to zyskuje na sile, gdy kadrem szarpnie krótkie drżenie:

mp.camera_shake(kamera, 12, 0.3)

Pierwszy argument to siła w pikselach, drugi to czas — wstrząs zanika płynnie do zera. Drżenie jest w pełni deterministyczne, więc nagrania i powtórki wyglądają identycznie, i — co ważne — nie psuje śledzenia ani granic poziomu: po wygaśnięciu kamera wraca dokładnie tam, gdzie powinna być.

Co dalej

Nadchodzą: wyprzedzanie ruchu (kamera patrzy nieco w kierunku biegu bohatera), śledzenie kilku celów naraz z automatycznym kadrowaniem oraz krzywa „traumy" dla drżenia narastającego z siłą zdarzeń.

📚 Powiązane posty

14.07.2026 22:19

Silnik gier: od szablonu do grywalnej gry RPG top-down

Startowy szablon silnika gier to teraz kompletny, grywalny wycinek gry RPG top-down: chodzenie po siatce, rozmowy z postaciami, przeciwnik goniący gdy...
Czytaj dalej →
14.07.2026 19:16

Moonlight Animate — system dialogów w grach

Silnik gier 2D w Moonlight Animate ma teraz kompletny system dialogów: kwestie z efektem maszyny do pisania, wybory z warunkami, zmienne fabularne i g...
Czytaj dalej →
14.07.2026 18:40

Moonlight Animate: ruchoma panorama dźwięku także w wyeksportowanym wideo

Dźwięk przejeżdżający z lewego do prawego głośnika brzmiał dobrze w podglądzie, ale eksport przez serwer zamrażał go w miejscu. Ostatnia luka parytetu...
Czytaj dalej →

📧 Bądź na bieżąco!

Zapisz się na listę oczekujących, aby otrzymywać powiadomienia o nowych postach na Dev Blog oraz informacje o starcie platformy Moonlight.