簡體   English   中英

如何讓兩個物體在碰撞時粘在一起? (統一 3d ) C#

[英]How can I make two objects stick together on collision? (unity 3d ) C#

在我正在制作的游戲中,我試圖讓兩個游戲對象在碰撞時粘在一起。 我試過讓第一個成為另一個的孩子,這樣當父母移動時,孩子也會隨之移動。 但是當我這樣做時,孩子會傳送,並且他的比例會發生變化(我知道這與世界位置/本地位置和世界比例/本地比例有關。孩子的 position 和比例變化相對於父母的 position和規模)。 但我不知道如何解決它。 如果有人可以提供幫助,我將不勝感激。 (它不必與父子相關,我只需要一個干凈的修復)

Reparenting 是這里的默認解決方案。 如果您遇到意外的行為,通常表明您在任一父鏈中的某處使用非均勻比例。 最佳做法是永遠不要使用具有不同 x、y、z 因子的比例尺。 如果您需要它來改變盒子的形狀,請確保只縮放盒子,並有一個虛擬父級,您將“附加”object 重新設置為父級。 在鏈的某處有一個不均勻的比例(即重新成為非均勻縮放的 object 的父級)將使旋轉/縮放對在鏈中傾斜,雖然當只涉及一個 object 時這可能會產生預期的效果,但它可能會咬人你在養育子女時。

Alternativelty,如果由於任何原因無法解決您的問題,在較新版本的 Unity 中有一個名為 ParentConstraint 的組件,它應該使您能夠達到相同的效果

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM