CollisionShape3D

in polish •  17 days ago 

CollisionShape3D to węzeł w Godot, który definiuje kształt kolizji dla obiektów 3D, takich jak RigidBody3D, czy StaticBody3D. Sama CollisionShape3D nie wykonuje żadnej logiki fizycznej, ale współpracuje z innymi obiektami, aby dostarczać informacje na temat kolizji.

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

  1. shape: Ustawienie kształtu kolizji. Można przypisać różne kształty, takie jak:
  • BoxShape3D (prostopadłościan),
  • SphereShape3D (sfera),
  • CapsuleShape3D (kapsuła),
  • ConvexPolygonShape3D (wielokąt wypukły),
  • ConcavePolygonShape3D (wielokąt wklęsły).
  1. disabled: Włącza lub wyłącza kształt kolizji. Jeśli kształt jest wyłączony, obiekt go nie uwzględnia w symulacji kolizji.

Jak to działa?

CollisionShape3D definiuje rzeczywisty kształt fizyczny dla obiektu 3D. Przykładowo, jeśli masz postać z modelem 3D, możesz chcieć dodać CollisionShape3D, aby postać nie przenikała przez ściany lub inne przeszkody w świecie gry. Kształty kolizji można ustawić w edytorze lub za pomocą skryptu, dostosowując rozmiar i typ kształtu w zależności od potrzeb.

Przykład:

# Dodanie CollisionShape3D do RigidBody3D w skrypcie
var collision_shape = CollisionShape3D.new()
var box_shape = BoxShape3D.new()
box_shape.size = Vector3(1, 1, 1)  # Ustawienie rozmiaru prostopadłościanu
collision_shape.shape = box_shape
add_child(collision_shape)

W tym przykładzie, tworzony jest kształt kolizji w formie prostopadłościanu i dodawany do RigidBody3D. Można także ustawiać inne kształty kolizji, takie jak kula, kapsuła czy wielokąt.

Zastosowanie:

  • RigidBody3D: Do symulowania fizyki z prawdziwą dynamiką (np. zderzenia, grawitacja).
  • StaticBody3D: Do statycznych przeszkód, które nie poruszają się, ale blokują inne obiekty.

CollisionShape3D jest kluczowym elementem systemu fizyki Godot i zapewnia odpowiednie interakcje fizyczne pomiędzy obiektami w przestrzeni 3D.


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!