03.07.2026 08:15

Edytor węzłów Moonlight Animate — wielka rozbudowa i utwardzenie

⏱️ 4 min read
Share:

Edytor węzłów Moonlight Animate — wielka rozbudowa i utwardzenie

Edytor węzłów to wizualne narzędzie do proceduralnego tworzenia tekstur i automatyzacji pracy — łączysz „klocki" kablami, a wynik trafia na warstwę albo staje się żywym obiektem inteligentnym. W tej turze przeprowadziliśmy jego pełny przegląd i sporo dołożyliśmy. Efekt: z narzędzia, które ładnie wyglądało, ale w wielu miejscach było dopiero szkicem, zrobiło się kompletne, przewidywalne i bezpieczne.

Filtry i korekty naprawdę regulowalne

Wcześniej spora część węzłów filtrów i korekt działała na sztywno — nie było czym kręcić, a część nie zmieniała obrazu w ogóle. Teraz każdy taki węzeł ma pełny zestaw parametrów w inspektorze, dokładnie tak jak jego odpowiednik narzędziowy: rozmycia (gaussa, ruchu, promieniowe, obiektywu), wyostrzenia, zniekształcenia, a po stronie korekt — jasność/kontrast, ekspozycja, barwa/nasycenie, poziomy, balans kolorów, mikser kanałów, kolor selektywny i więcej. Parametry wyboru (np. tryb mieszania) dostały rozwijane listy zamiast pola tekstowego, w którym literówka po cichu dawała zły efekt.

Cofanie w edytorze węzłów

Edytor ma teraz własny stos cofania: Ctrl+Z / Ctrl+Y. Obejmuje wszystko — dodanie i usunięcie węzła, połączenie i rozłączenie kabla, zmianę parametru i klatki kluczowej, przesunięcie węzłów, zmianę domeny i wczytanie grafu. Przytrzymanie strzałki w polu liczbowym to jeden krok cofania, nie kilkanaście. A nieudane połączenie (pętla albo niezgodne typy) nie psuje już gałęzi ponawiania. Koniec sytuacji, w której jeden błędny Delete kasował godzinę pracy.

Bezszwowe tekstury

System jest teksturowy, więc dołożyliśmy spójną politykę krawędzi. Węzły operujące na sąsiedztwie pikseli (rozmycia, morfologia, faza, zniekształcenia kierunkowe, próbnik kafli) mają parametr Krawędź: Zawijaj (domyślnie — tekstura kafelkuje się bez szwu) albo Przytnij. Mapy normalnych zapisujemy liniowo, więc kodowanie wektora jest poprawne dla zewnętrznych silników. Próbnik kafli dostał parametr Nachodzenie, pozwalający elementom wchodzić na sąsiednie komórki bez twardego przycięcia.

Automatyzacja, która nie zostawia bałaganu

Graf automatyzacji uruchamia się teraz jako jedna transakcja cofania — jeśli coś przerwie go w połowie, jeden Ctrl+Z przywraca stan sprzed startu, zamiast zostawiać dokument częściowo zmieniony. Przebudowaliśmy też silnik wykonania: zbiegające się gałęzie (Rozgałęzienie/Sekwencja) wykonują się poprawnie, zagnieżdżone pętle po plikach działają, a przypadkowa pętla nieskończona kończy się czytelnym komunikatem, nie zawieszeniem programu. Błąd w wyrażeniu warunku wskazuje teraz konkretny węzeł, a nie wywala cały skrypt.

Odporność i stabilność

  • Uszkodzone lub obce dane grafu (także przysłane przez współpracownika w sesji online) nie są już w stanie zawiesić aplikacji — dane są walidowane przed wczytaniem.
  • Węzły z nowszej wersji programuzachowywane przy zapisie, zamiast po cichu znikać — otworzysz plik w starszym buildzie i nic nie stracisz.
  • Naprawiliśmy kolizje przechwyceń płótna między grafami, zawieszanie wskaźnika przy pracy w wielu oknach oraz dołożyliśmy pasek postępu z przyciskiem Anuluj przy renderze długich sekwencji.
  • Warstwy proceduralne poprawnie reagują na zmianę rozmiaru płótna: wypełnienia pokrywają nowy obszar, a elementy pozycjonowane zachowują wyrównanie z resztą rysunku.

Całość powstała w rytmie, który lubimy najbardziej: audyt → naprawa → adwersaryjny przegląd → ponowna naprawa, aż zostaje tylko to, co świadomie odłożone na później (i opisane). Edytor węzłów jest teraz solidnym fundamentem pod kolejne rozdziały — więcej generatorów, pełne bloki automatyzacji i mostki do sceny. Dzięki, że jesteście z nami. 💙

📚 Related posts

23.07.2026 19:40

Moonlight Animate: zapis, który mówi, i eksport, który pokazuje

Ctrl+S wreszcie zapisuje po cichu, każdy zapis potwierdza nazwę i wagę pliku, a nowy dialog „Eksportuj jako” pokazuje zakodowany wynik i dokładny rozm...
Continue reading →
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...
Continue reading →
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...
Continue reading →

📧 Stay up to date!

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