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
- W drzewie scen kliknij „Dodaj węzeł”.
- Wyszukaj
ParallaxBackground
i dodaj go do swojej sceny jako główny węzeł tła. - Dodaj jako dziecko
ParallaxBackground
węzłyParallaxLayer
, które będą reprezentować poszczególne warstwy paralaksy.
2. Dodanie warstw ParallaxLayer
- Kliknij prawym przyciskiem na
ParallaxBackground
i dodajParallaxLayer
jako dziecko. - Do każdego
ParallaxLayer
dodaj elementy 2D, takie jakSprite2D
lubTextureRect
, które będą pełnić rolę grafiki tła. - 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:
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)
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 wSprite2D
, 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
- 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.
- 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.
- 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.
- 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.