X-Git-Url: http://git.purplebirdman.com/william-skin.git/blobdiff_plain/c84055968443414e67caa33c3a823094ed29365b..35a4c6f3a69fe09240d6edc885c0d63539e4fe82:/william.gd diff --git a/william.gd b/william.gd index d0d86be..253ac50 100644 --- a/william.gd +++ b/william.gd @@ -3,17 +3,16 @@ extends Node3D @export_category("Tracking") -@export var head_influence: float = 0.5 +@export var head_influence: float = 0.6 @export var eye_influence: float = 1.0 @onready var _animation_tree: AnimationTree = $AnimationTree -@onready var _head: TrackingBone3D_head = $base/rig/Skeleton3D/head -@onready var _eye_L: TrackingBone3D = $base/rig/Skeleton3D/eye_L -@onready var _eye_R: TrackingBone3D = $base/rig/Skeleton3D/eye_R +@onready var _head: TrackingBone3D_head = $base/rig/Skeleton3D/track_head +@onready var _eye_L: TrackingBone3D = $base/rig/Skeleton3D/track_eye_L +@onready var _eye_R: TrackingBone3D = $base/rig/Skeleton3D/track_eye_R -# TODO: eye tracking func set_eyes_target(target: Vector3) -> void: for eye in [ _eye_L, _eye_R ]: eye.target = target @@ -21,11 +20,10 @@ func set_eyes_target(target: Vector3) -> void: eye.influence = eye_influence -# TODO: head tracking func set_head_target(target: Vector3) -> void: _head.target = target - _head.active = target != Vector3.ZERO - _head.influence = head_influence + _head.active = 1 + _head.tween_influence(0.0 if target == Vector3.ZERO else head_influence) # manage talking and expressions