private void HandleCameraInput() { // Create the look input vector for the camera float mouseLookAxisUp = Input.GetAxisRaw("Mouse Y"); float mouseLookAxisRight = Input.GetAxisRaw("Mouse X"); _lookInputVector = new Vector3(mouseLookAxisRight * MouseSensitivity, mouseLookAxisUp * MouseSensitivity, 0f); // Prevent moving the camera while the cursor isn't locked if (Cursor.lockState != CursorLockMode.Locked) { _lookInputVector = Vector3.zero; } // Input for zooming the camera (disabled in WebGL because it can cause problems) float scrollInput = -Input.GetAxis("Mouse ScrollWheel"); #if UNITY_WEBGL scrollInput = 0f; #endif // Apply inputs to the camera OrbitCamera.SetInputs(scrollInput, _lookInputVector); // Handle toggling zoom level if (Input.GetMouseButtonDown(1)) { OrbitCamera.TargetDistance = (OrbitCamera.TargetDistance == 0f) ? OrbitCamera.DefaultDistance : 0f; } }