From 2c3c321b7f5af9dd3ae471ec006ae18925adf797 Mon Sep 17 00:00:00 2001 From: Leon Palluch Date: Sun, 2 Feb 2020 12:20:47 +0100 Subject: [PATCH] fixed camera --- Ingame/CameraFocus.gd | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/Ingame/CameraFocus.gd b/Ingame/CameraFocus.gd index 4fe5278..4c1bd55 100644 --- a/Ingame/CameraFocus.gd +++ b/Ingame/CameraFocus.gd @@ -2,6 +2,22 @@ extends Spatial onready var camera = get_node("Camera") +const DISTANCE_MOD = 0.2 +const FOV_MOD = 0.2 + +var _look_at_vec = Vector3(0, 0, -1) +var _x_axis = Vector3(1, 0, 0) + +func _ready(): + var cam_rot = camera.rotation_degrees + print(cam_rot.y) + _look_at_vec = _look_at_vec.rotated(Vector3(0, 1, 0), cam_rot.y * PI/180) + print(_look_at_vec) + print(cam_rot.x) + _x_axis = _x_axis.rotated(Vector3(0, 1, 0), cam_rot.y * PI/180) + _look_at_vec = _look_at_vec.rotated(_x_axis, cam_rot.x * PI/180) + print(_look_at_vec) + func _process(delta: float) -> void: var player1 = get_parent().get_child(3) @@ -12,6 +28,6 @@ func _process(delta: float) -> void: var center = player2.transform.origin + (player1.transform.origin - player2.transform.origin) / 2.0 var distance = (player1.transform.origin - player2.transform.origin).length() - camera.fov = distance + 50.0 + camera.fov = distance * FOV_MOD + 60.0 - transform.origin = center + transform.origin = center - _look_at_vec * distance * DISTANCE_MOD