TextureRect
w Godot 4 to węzeł służący do wyświetlania tekstur w interfejsie użytkownika (UI) w przestrzeni 2D. Jest częścią klasy Control
, dzięki czemu łatwo można go integrować z innymi elementami UI. TextureRect
umożliwia wyświetlanie obrazów, tekstur, a także dynamicznych tekstur takich jak mini-mapy czy podgląd kamery z Viewport
.
Cechy TextureRect
:
- Wyświetlanie tekstur: Pozwala na umieszczanie i wyświetlanie tekstur oraz obrazów jako elementów UI.
- Skalowanie i dostosowywanie obrazu: Można kontrolować sposób skalowania tekstury, w tym zachowanie proporcji, rozciąganie lub wyśrodkowanie.
- Łatwa integracja z
ViewportTexture
:TextureRect
współpracuje zViewportTexture
, co umożliwia wyświetlanie dynamicznych widoków w UI, takich jak mini-mapki, podglądy czy dynamiczne elementy interfejsu.
Jak używać TextureRect
w Godot 4
1. Dodanie TextureRect
do sceny
- W drzewie scen kliknij „Dodaj węzeł”.
- Wyszukaj
TextureRect
i dodaj go do swojej sceny. - W inspektorze, w polu
Texture
, przypisz obraz lub teksturę, którą chcesz wyświetlić.
2. Przypisywanie tekstury
W inspektorze, w polu Texture
, możesz przypisać dowolny obraz lub teksturę, która będzie wyświetlana przez TextureRect
. Może to być:
- Obraz statyczny (np.
.png
,.jpg
), ViewportTexture
(np. dla podglądu zSubViewport
),AtlasTexture
(część tekstury wyodrębniona z większego obrazka).
Przykład dynamicznego przypisania tekstury w skrypcie:
extends TextureRect
func _ready():
texture = load("res://images/character_icon.png") # Przypisz teksturę ikony postaci
3. Ustawienia TextureRect
w inspektorze
Stretch Mode
:
- Definiuje sposób skalowania tekstury w ramach
TextureRect
. Dostępne tryby to:
Scale
: Skaluje teksturę, aby wypełnić TextureRect
, ale zachowuje proporcje.
Tile
: Powtarza teksturę, tworząc efekt kafelkowania.
Keep
: Zachowuje oryginalne rozmiary tekstury.
Keep Centered
: Wyświetla teksturę w oryginalnych rozmiarach, wyśrodkowaną.
Keep Aspect Centered
: Zachowuje proporcje i wyśrodkowuje teksturę w TextureRect
.
Keep Aspect Covered
: Skaluje teksturę, aby wypełniła cały TextureRect
, zachowując proporcje (część może być przycięta).
$TextureRect.stretch_mode = TextureRect.STRETCH_KEEP_ASPECT_COVERED
Flip H
i Flip V
:
- Opcje
Flip H
(poziome odbicie) i Flip V
(pionowe odbicie) pozwalają na odwrócenie obrazu w ramach TextureRect
.
Expand
:
- Gdy włączone,
TextureRect
automatycznie dopasowuje rozmiar do tekstury, którą wyświetla.
Modulate
:
- Pozwala zmieniać kolor lub przezroczystość tekstury. Może być przydatne do tworzenia efektów takich jak przyciemnianie lub kolorowanie obrazu.
$TextureRect.modulate = Color(1, 0.5, 0.5, 1) # Nadanie teksturze odcienia czerwonego
Przykłady zastosowania TextureRect
- Ikony i obrazy w UI:
TextureRect
jest idealny do wyświetlania ikon postaci, broni, zasobów i innych elementów, które powinny być statyczne i widoczne w interfejsie użytkownika.
- Mini-mapy i dynamiczne podglądy:
- Możesz użyć
TextureRect
do wyświetlania mini-map lub podglądów z kamer, przypisując do niego ViewportTexture
z SubViewport
lub Viewport
.
- Przyciski z obrazami:
TextureRect
można połączyć z Button
lub Control
, aby tworzyć przyciski z obrazami, np. przycisk menu z ikoną lub awatarem postaci.
- Efekty ekranowe:
TextureRect
można wykorzystać do tworzenia efektów ekranowych, takich jak winiety lub przyciemnienie tła, na przykład poprzez ustawienie przezroczystości w Modulate
.
- Animacje tekstur:
- Jeśli chcesz stworzyć animowany efekt, możesz dynamicznie zmieniać
Texture
w skrypcie, przypisując do TextureRect
kolejne klatki.
Przykład dynamicznego wyświetlania podglądu z Viewport
Poniższy kod dynamicznie przypisuje teksturę z Viewport
, aby wyświetlić ją w TextureRect
:
extends TextureRect
func _ready():
# Przypisanie tekstury z Viewport do TextureRect
var viewport = get_node("Viewport") # Zlokalizuj węzeł Viewport
texture = viewport.get_texture() # Przypisz teksturę do TextureRect
Podsumowanie:
TextureRect
to wszechstronny i łatwy w użyciu węzeł do wyświetlania tekstur i obrazów w interfejsie użytkownika w Godot 4. Dzięki elastycznym opcjom skalowania, kafelkowania, odbijania i modulacji, TextureRect
umożliwia szybkie dostosowanie wyglądu i rozmiaru tekstury. Jest to węzeł idealny do wyświetlania ikon, obrazów, podglądów, mini-map i innych dynamicznych elementów UI.
Published using WordPress Blurt Publisher from https://godot.com.pl.