Held Inventory Objects Jittering when standing on boat
Hi Everyone, I've come to Unity Answers because while this is a seemingly common problem, my project is quite unique and none of the fixes I have found work so far. I am making an open world sailing game and I have your average script for holding selected items in inventory by parenting them to the player camera, but the object appears to shake as I stand on a boat. My world is 65000x65000 which I am aware is known to cause jittering but remarkably I get the same level of jittering when my player moves down to the 500x500 area. My player stands on a boat which has four 'floating points' in it each with the following script:
using System.Collections; using System.Collections.Generic; using UnityEngine;
public class Float : MonoBehaviour {
Vector3 waterPoint;
GameObject ocean;
GameObject player;
Waves w;
Rigidbody rb;
// Start is called before the first frame update
void Start()
{
ocean = GameObject.Find("Ocean");
player = GameObject.Find("Player");
waterPoint = transform.position;
w = ocean.GetComponent<Waves>();
rb = GetComponentInParent<Rigidbody>();
}
// Update is called once per frame
void LateUpdate()
{
if(Vector3.Magnitude(transform.position-player.transform.position) < 50)
{
waterPoint = transform.position;
waterPoint.y = w.GetHeight(transform.position);
rb.AddForceAtPosition(Vector3.up * (waterPoint.y - transform.position.y) * (-Physics.gravity.y) * Time.deltaTime * 5,transform.position);
}
}
}
I suspect that the problem lies somewhere within this floating algorithm for the boat, which makes the boat shake and in turn the player and the handheld object, but the camera or player themselves do not shake at all and surely they would if this was the case?
This is a very confusing problem, please help. Thank you!
Your answer
Follow this Question
Related Questions
SetSpeed float C# 1 Answer
Mathf.Round ? [C#] 2 Answers
Car is Flying instead of driving 1 Answer
subtracting from float in a user made function 0 Answers
I need to synchronize 2 float values of each character to another script, 0 Answers