Node2D

in polish •  2 months ago  (edited)

Node2D to podstawowy węzeł w Godot do pracy z obiektami 2D. Jest to klasa bazowa dla wszystkich węzłów, które mają pozycję, obrót i skalę w przestrzeni 2D, ale sam w sobie nie zawiera żadnych specyficznych funkcji renderowania, kolizji czy fizyki. Możesz na nim opierać bardziej złożone elementy gry 2D, takie jak postacie, obiekty, efekty graficzne i wiele innych.

Główne właściwości Node2D:

  1. Pozycja:
    • position: Współrzędne pozycji w przestrzeni 2D.
    • global_position: Współrzędne pozycji w przestrzeni globalnej, uwzględniając hierarchię.
  2. Obrót:
    • rotation: Kąt obrotu w radianach.
    • global_rotation: Globalny kąt obrotu, uwzględniając hierarchię.
  3. Skala:
    • scale: Skala węzła w przestrzeni 2D.
    • global_scale: Globalna skala węzła.
  4. Hierarchia:
    • Node2D może być rodzicem dla innych węzłów 2D, tworząc strukturę drzewa. Pozycje, rotacje i skale dzieci mogą być uzależnione od rodzica.

Przykład użycia Node2D:

extends Node2D

func _ready():
    # Ustaw pozycję węzła na współrzędne (100, 200)
    position = Vector2(100, 200)
    
    # Ustaw obrót węzła na 45 stopni (PI/4 radianów)
    rotation = PI / 4
    
    # Zmień skalę węzła na dwukrotność pierwotnej wielkości
    scale = Vector2(2, 2)
    
    # Wyświetl bieżącą globalną pozycję
    print(global_position)

Główne zastosowanie Node2D:

  • Podstawa dla obiektów 2D: Możesz go użyć jako bazowego węzła dla każdego obiektu 2D, który nie wymaga złożonych funkcji, takich jak renderowanie (jak w przypadku Sprite2D) czy fizyka (KinematicBody2D).
  • Kontener hierarchii: Często używany jako rodzic dla grup węzłów, którymi chcesz manipulować jako całość. Na przykład, jeśli masz animowaną postać złożoną z kilku węzłów, możesz je wszystkie dodać jako dzieci jednego węzła Node2D i przemieszczać je razem.

Przykład użycia jako kontener hierarchii:

extends Node2D

func _ready():
    # Dodajemy dzieci do tego węzła
    var child1 = Node2D.new()
    var child2 = Node2D.new()
    
    # Ustawiamy pozycję dzieci
    child1.position = Vector2(50, 0)
    child2.position = Vector2(-50, 0)
    
    # Dodajemy węzły do hierarchii
    add_child(child1)
    add_child(child2)
    
    # Przesuwamy rodzica, co przesunie również wszystkie jego dzieci
    position = Vector2(100, 100)

Podsumowanie:

Node2D to bardzo uniwersalny węzeł 2D, który działa jako podstawowa jednostka w hierarchii węzłów w Godot dla scen 2D. Można go używać do dowolnych operacji na pozycjach, obrotach i skalach w przestrzeni 2D, a także jako rodzica dla bardziej złożonych struktur.

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!