From 3e0e05b8cc387ae4ab0aa5977f3cdd0476eba37e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com> Date: Tue, 4 Jun 2024 17:37:59 -0500 Subject: [PATCH] fix: use bounding rects for rotation inputs --- .../[id]/components/Model/components/TankModel.tsx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/app/tools/tankopedia/[id]/components/Model/components/TankModel.tsx b/src/app/tools/tankopedia/[id]/components/Model/components/TankModel.tsx index 5948a62cf..676936dc9 100644 --- a/src/app/tools/tankopedia/[id]/components/Model/components/TankModel.tsx +++ b/src/app/tools/tankopedia/[id]/components/Model/components/TankModel.tsx @@ -172,9 +172,10 @@ export const TankModel = memo(() => { duel.protagonist!.tank.equipment, duel.protagonist!.equipmentMatrix, ); + const boundingRect = canvas.getBoundingClientRect(); [pitch, yaw] = applyPitchYawLimits( pitch, - yaw + event.movementX * (Math.PI / canvas.width), + yaw + event.movementX * (Math.PI / boundingRect.width), gunModelDefinition.pitch, turretModelDefinition.yaw, hasImprovedVerticalStabilizer, @@ -242,9 +243,10 @@ export const TankModel = memo(() => { duel.protagonist!.tank.equipment, duel.protagonist!.equipmentMatrix, ); + const boundingRect = canvas.getBoundingClientRect(); [pitch, yaw] = applyPitchYawLimits( - pitch - event.movementY * (Math.PI / canvas.height), - yaw + event.movementX * (Math.PI / canvas.width), + pitch - event.movementY * (Math.PI / boundingRect.height), + yaw + event.movementX * (Math.PI / boundingRect.width), gunModelDefinition.pitch, turretModelDefinition.yaw, hasImprovedVerticalStabilizer,