@export_enum(" ") var bone: String
@export var aim_axis := Axis.Z_plus
-@export var target: Vector3 = Vector3(0, 0, 0)
+@export var target: Node3D = null
var _skeleton: Skeleton3D
var _bone_idx: int
func _process_modification() -> void:
+ if target == null:
+ return
+
var pose: Transform3D = _skeleton.global_transform * _skeleton.get_bone_global_pose(_bone_idx)
var looked_at: Transform3D = _w_look_at(pose)
elif aim_axis == Axis.Z_minus:
w = from.basis.y.inverse()
- var t_v: Vector3 = target - from.origin
+ var t_v: Vector3 = target.global_position - from.origin
var v_y: Vector3 = t_v.normalized()
var v_z: Vector3 = w.cross(v_y)
v_z = v_z.normalized()