24 lines
761 B
GDScript
24 lines
761 B
GDScript
extends MultiMeshInstance3D
|
|
|
|
@export var speed = 5;
|
|
@export var number: int = 100
|
|
|
|
|
|
func _ready() -> void:
|
|
for x in range(number):
|
|
for z in range(number):
|
|
var index = z * number + x
|
|
self.multimesh.set_instance_transform(index, Transform3D(Basis(), Vector3(x, 0.0, -z)))
|
|
|
|
func _process(delta: float) -> void:
|
|
for x in range(number):
|
|
for z in range(number):
|
|
var index = z * number + x
|
|
var current_trans = self.multimesh.get_instance_transform(index)
|
|
|
|
# Rotation um die Y-Achse (delta für gleichmäßige Drehung)
|
|
var rotation_amount = deg_to_rad(10) * delta # 10 Grad pro Sekunde
|
|
current_trans.basis = current_trans.basis.rotated(Vector3.UP, rotation_amount)
|
|
|
|
self.multimesh.set_instance_transform(index, current_trans)
|