Skip to content

Commit 136a93f

Browse files
authored
Reverse eye-offset Z-coordinate in 3rd person front view (luanti-org#13369)
1 parent 0218963 commit 136a93f

1 file changed

Lines changed: 11 additions & 2 deletions

File tree

src/client/camera.cpp

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -374,10 +374,19 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 tool_reload_ratio)
374374
// Calculate and translate the head SceneNode offsets
375375
{
376376
v3f eye_offset = player->getEyeOffset();
377-
if (m_camera_mode == CAMERA_MODE_FIRST)
377+
switch(m_camera_mode) {
378+
case CAMERA_MODE_FIRST:
378379
eye_offset += player->eye_offset_first;
379-
else
380+
break;
381+
case CAMERA_MODE_THIRD:
380382
eye_offset += player->eye_offset_third;
383+
break;
384+
case CAMERA_MODE_THIRD_FRONT:
385+
eye_offset.X += player->eye_offset_third.X;
386+
eye_offset.Y += player->eye_offset_third.Y;
387+
eye_offset.Z -= player->eye_offset_third.Z;
388+
break;
389+
}
381390

382391
// Set head node transformation
383392
eye_offset.Y += cameratilt * -player->hurt_tilt_strength + fall_bobbing;

0 commit comments

Comments
 (0)