ParallaxBackground Node

in polish •  last month 

ParallaxBackground w Godot 4 to specjalny węzeł, który umożliwia tworzenie efektu paralaksy w grach 2D. Efekt paralaksy sprawia, że tło gry przesuwa się z różną prędkością w zależności od głębokości, co daje wrażenie głębi i trójwymiarowości w przestrzeni 2D. ParallaxBackground zarządza całym tłem, natomiast poszczególne warstwy tła są tworzone za pomocą węzłów ParallaxLayer, które przesuwają się względem siebie, imitując różną głębię.

Cechy ParallaxBackground:

  • Ruch paralaksy: Tło przesuwa się w odpowiedzi na ruch kamery, tworząc wrażenie głębi w grze 2D.
  • Obsługa wielu warstw: Możesz dodać wiele warstw (przez ParallaxLayer), aby stworzyć efekt paralaksy dla każdego poziomu głębokości.
  • Automatyczne przesuwanie tła: ParallaxBackground automatycznie obsługuje przesuwanie tła w odpowiedzi na ruch kamery, co pozwala na łatwe dostosowanie paralaksy do ruchu gracza.

Jak używać ParallaxBackground w Godot 4

1. Dodanie ParallaxBackground do sceny

  1. W drzewie scen kliknij „Dodaj węzeł”.
  2. Wyszukaj ParallaxBackground i dodaj go do swojej sceny jako główny węzeł tła.
  3. Dodaj jako dziecko ParallaxBackground węzły ParallaxLayer, które będą reprezentować poszczególne warstwy paralaksy.

2. Dodanie warstw ParallaxLayer

  1. Kliknij prawym przyciskiem na ParallaxBackground i dodaj ParallaxLayer jako dziecko.
  2. Do każdego ParallaxLayer dodaj elementy 2D, takie jak Sprite2D lub TextureRect, które będą pełnić rolę grafiki tła.
  3. Możesz dodać wiele ParallaxLayer dla różnych warstw, aby stworzyć efekt głębi.

Przykład struktury sceny:

MainScene
├── Camera2D
└── ParallaxBackground
    ├── ParallaxLayer (tło dalekie)
    │   └── Sprite2D (grafika tła, np. góry)
    ├── ParallaxLayer (tło średnie)
    │   └── Sprite2D (grafika tła, np. las)
    └── ParallaxLayer (tło bliskie)
        └── Sprite2D (grafika tła, np. krzewy)

3. Konfigurowanie ParallaxLayer

Każda warstwa ParallaxLayer ma właściwości, które pozwalają kontrolować szybkość i kierunek przesuwania się względem głównej kamery:

  1. Motion Scale:
  • Określa, jak szybko ParallaxLayer przesuwa się względem ruchu kamery.
  • Niższe wartości Motion Scale (np. (0.5, 0.5)) spowodują, że warstwa będzie poruszać się wolniej, co symuluje dalsze tło.
  • Wyższe wartości spowodują, że warstwa będzie przesuwać się szybciej, co symuluje bliższe obiekty.
   $ParallaxBackground/ParallaxLayer.motion_scale = Vector2(0.5, 0.5)
  1. Mirroring:
  • Pozwala ustawić powtarzanie warstwy, co jest przydatne, jeśli chcesz, aby tło było bezszwowo powielane (np. nieskończone tło).
  • Ustaw Mirroring na wartości większe od zera (np. (800, 0)) w zależności od rozmiaru grafiki w Sprite2D, aby warstwa była płynnie powielana w osi X lub Y.
   $ParallaxBackground/ParallaxLayer.mirroring = Vector2(800, 0)

Przykład skryptu do dynamicznego ustawienia ParallaxLayer

Poniższy skrypt tworzy prosty efekt paralaksy, gdzie tło dalekie przesuwa się wolniej, a tło bliskie szybciej:

extends ParallaxBackground

func _ready():
# Ustawienia warstwy dalekiego tła
$ParallaxLayerFar.motion_scale = Vector2(0.3, 0.3)
$ParallaxLayerFar.mirroring = Vector2(1024, 0)

# Ustawienia warstwy średniego tła
$ParallaxLayerMid.motion_scale = Vector2(0.5, 0.5)
$ParallaxLayerMid.mirroring = Vector2(1024, 0)

# Ustawienia warstwy bliskiego tła
$ParallaxLayerNear.motion_scale = Vector2(0.8, 0.8)
$ParallaxLayerNear.mirroring = Vector2(1024, 0)</code></pre>

4. Integracja z kamerą (Camera2D)

ParallaxBackground współpracuje z kamerą Camera2D, aby automatycznie przesuwać warstwy paralaksy w odpowiedzi na ruch kamery. Upewnij się, że Camera2D jest ustawiona jako aktywna i że jej Current jest włączone, aby kontrolować ruch paralaksy.

  • W inspektorze Camera2D, upewnij się, że opcja Current jest zaznaczona, co sprawia, że kamera będzie kontrolować ParallaxBackground.
  • Gdy kamera przesuwa się, ParallaxBackground automatycznie dostosowuje pozycję swoich warstw w oparciu o wartości Motion Scale w ParallaxLayer.

5. Przykłady zastosowania ParallaxBackground w grach

  1. Dynamiczne tła:
  • ParallaxBackground jest idealny do tworzenia tła o głębi w grach platformowych, które porusza się zgodnie z ruchem gracza, nadając grze bardziej realistyczny wygląd.
  1. Symulacja ruchu w terenie:
  • Możesz użyć ParallaxBackground do stworzenia wrażenia ruchu w lesie, mieście lub na otwartym terenie, gdzie drzewa, budynki i inne elementy poruszają się z różną prędkością w zależności od ich odległości od gracza.
  1. Nieskończone tła:
  • Ustawiając Mirroring na wartość odpowiadającą szerokości grafiki, możesz stworzyć nieskończone, bezszwowe tła, które będą się powtarzać, co jest przydatne w grach z ciągłym przesuwaniem tła, takich jak gry typu endless runner.
  1. Efekty atmosferyczne:
  • Możesz dodawać elementy atmosferyczne, takie jak chmury lub mgłę, do warstw ParallaxLayer i przesuwać je niezależnie, aby uzyskać bardziej wciągającą atmosferę w grze.

Podsumowanie:

ParallaxBackground w Godot 4 to potężne narzędzie do tworzenia dynamicznych, warstwowych teł 2D z efektem paralaksy, które dodają głębi i realizmu do gier 2D. Dzięki łatwej konfiguracji i obsłudze wielu warstw za pomocą ParallaxLayer, można uzyskać złożone efekty tła, które reagują na ruch kamery i gracza. Ustawienia, takie jak Motion Scale i Mirroring, pozwalają na pełną kontrolę nad prędkością i powtarzalnością każdej warstwy, co umożliwia tworzenie interesujących i różnorodnych teł.


Published using WordPress Blurt Publisher from https://godot.com.pl.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE BLURT!