MeshInstance3D
to węzeł w Godot 4 używany do wyświetlania modeli 3D w scenach. Służy do osadzania siatki 3D (mesh) w grze oraz modyfikowania jej wyglądu, materiałów i pozycji. Możesz używać MeshInstance3D
do reprezentowania dowolnych obiektów 3D, takich jak postacie, przedmioty czy budynki.

Główne cechy MeshInstance3D
:
- Siatka (Mesh): To model 3D przypisany do
MeshInstance3D
, np. plik.obj
,.glb
lub wbudowane siatki jakSphereMesh
,CubeMesh
. - Materiały (Materials): Możesz przypisać materiały, które decydują o wyglądzie powierzchni (kolor, tekstura, efekty oświetleniowe).
- Transformacja (Transform): Pozwala kontrolować pozycję, skalę i obrót modelu w przestrzeni 3D.
- Animacje: Może współpracować z systemem animacji, jeśli model zawiera kości (rig) i animacje.
Przykładowe zastosowanie:
1. Dodanie MeshInstance3D
do sceny:
- W drzewie sceny (ang. „Scene Tree”) kliknij prawym przyciskiem myszy i wybierz Add Child Node.
- Wyszukaj
MeshInstance3D
i dodaj go do sceny. - W inspektorze (po prawej stronie) znajdziesz opcję Mesh, gdzie możesz przypisać model 3D (np. wbudowany
CubeMesh
,SphereMesh
lub własny model w formacie.glb
lub.obj
).
2. Przypisanie siatki (Mesh
) w skrypcie:
Jeśli chcesz przypisać model 3D z poziomu skryptu:
extends MeshInstance3D
func _ready():
var mesh = CubeMesh.new() # Tworzy sześcian jako siatkę (mesh)
self.mesh = mesh # Przypisuje nową siatkę do MeshInstance3D
3. Przypisanie materiału:
Możesz przypisać różne materiały do siatki, aby zmienić jej wygląd:
extends MeshInstance3D
func _ready():
var material = StandardMaterial3D.new() # Tworzy nowy materiał
material.albedo_color = Color(1, 0, 0) # Ustawia kolor materiału na czerwony
self.set_surface_override_material(0, material) # Przypisuje materiał do siatki
4. Modyfikowanie transformacji:
Możesz dynamicznie zmieniać pozycję, obrót lub skalę MeshInstance3D
:
func _ready():
self.translation = Vector3(0, 2, 0) # Zmienia pozycję modelu
self.rotation_degrees = Vector3(0, 45, 0) # Obraca model o 45 stopni
self.scale = Vector3(1.5, 1.5, 1.5) # Powiększa model o 1.5x
Podsumowanie:
- MeshInstance3D służy do wyświetlania obiektów 3D w grze.
- Możesz przypisać modele 3D, materiały, oraz zmieniać transformację w edytorze lub za pomocą skryptu.
- Jest to podstawowy element do wyświetlania wszelkich obiektów 3D w Godot.
Dodaj komentarz