Fixes to ClippedCamera

This work has been kindly sponsored by IMVU.
This commit is contained in:
JFonS 2019-05-10 10:35:15 +02:00
parent 7112a45d99
commit 9e97bac0cf

View file

@ -722,8 +722,9 @@ void ClippedCamera::set_process_mode(ProcessMode p_mode) {
if (process_mode == p_mode) {
return;
}
set_process_internal(p_mode == CLIP_PROCESS_IDLE);
set_physics_process_internal(p_mode == CLIP_PROCESS_PHYSICS);
process_mode = p_mode;
set_process_internal(process_mode == CLIP_PROCESS_IDLE);
set_physics_process_internal(process_mode == CLIP_PROCESS_PHYSICS);
}
ClippedCamera::ProcessMode ClippedCamera::get_process_mode() const {
return process_mode;
@ -786,7 +787,7 @@ void ClippedCamera::_notification(int p_what) {
float csafe, cunsafe;
if (dspace->cast_motion(pyramid_shape, xf, cam_pos - ray_from, margin, csafe, cunsafe, exclude, collision_mask, clip_to_bodies, clip_to_areas)) {
clip_offset = cam_pos.distance_to(ray_from + (cam_pos - ray_from).normalized() * csafe);
clip_offset = cam_pos.distance_to(ray_from + (cam_pos - ray_from) * csafe);
}
_update_camera();