我有兩個球體GameObjects作爲預製件。他們附有剛體。我希望他們留在表面上,但是當他們相互碰撞時互相交流(互相推擠,互相反彈,等等)。但是,在遊戲視圖中,當我在預製中拖動,並且剛體「使用重力」複選框關閉時,物體就會浮起來!我不想要這個,所以我打開了「使用引力」。現在,他們被置於場景中,但仍然需要很長時間才能落到地板上,當我拖動他們時,他們仍然可以在那裏漂浮。我該如何讓他們留在表面上,但彼此互動?GameObject Prefabs floating away
我試圖做這樣的事情
(Get-the-GameObject).GetComponent<Rigidbody>().velocity = Vector3.zero;
但是,這並不做任何事情。
在圖片中,您可以看到我已將球體放置在地板上,但它已飄浮而去!在物理編輯器中,重力被設置爲-9.81的Y分量。
編輯:我已將球體的比例縮小到5左右,它會落到地板上並開始向左滑動。地板是不以任何方式讓我很奇怪,爲什麼現在是左右滑動傾斜...
編輯:
球由點擊與你想要的顏色框,拖動它的實例桌面空間和釋放。一旦釋放,當它開始浮動/滑動。這是執行該操作的代碼。
void OnMouseDown()
{
clone = (GameObject)Instantiate(prefab_to_instatiate, hit.point, Quaternion.identity);
}
void OnMouseDrag()
{
// Code to make an atom follow the mouse cursor
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit2;
if(Physics.Raycast(ray, out hit2, Camera.main.farClipPlane))
{
float oldY = transform.position.y;
clone.transform.position = new Vector3(hit2.point.x, oldY, hit2.point.z);
}
}
編輯2:描述發生了什麼事,最好的辦法是,如果我提供的視頻。這裏的鏈接:https://vimeo.com/185419058
我點擊一個帶有原子的盒子,按住鼠標按鈕將其拖入桌面區域並釋放以放下它。但是,當我拖動時,即使我的鼠標靜止不動,視頻也會顯示原子像瘋了一樣彈跳。然後,當我釋放時,它開始滑動。我只是想點擊,拖動,並將其放置在一個位置,而不會產生所有這些瘋狂的效果。如果我刪除所有預製原子上的剛體,這就是我想要的。然而,我希望能夠使用剛體,因爲我希望原子在彼此接近時互相作用。
對象相對於世界尺度的規模是多少?如果它們是巨型的,那麼任何重力效應都會顯得有點「浮動」。 – Serlite
我的球體的比例尺範圍從40-50 – noblerare
是否有任何其他腳本來控制球體的移動?我們能否看到球體的場景層次/屬性? – Serlite