0
我已經創建了幾個Sphere對象,並將它們添加到Unity3d中的場景中。現在我需要將這些對象傳遞給我的腳本並處理這些對象。 我該怎麼做?例如,當我需要地形對象傳遞給劇本我會寫......如何將Sphere作爲參數傳遞給Unity3d中的腳本?
public class A: MonoBehaviour {
public Terrain terrain;
void Start() {
terrain = terrain.GetComponent<Terrain>();
}
.....
}
...這會工作,但我不能寫:
public class A: MonoBehaviour {
public Sphere sphere;
void Start() {
sphere = sphere.GetComponent<Sphere>();
}
.....
}
因爲沒有像Sphere這樣的類型(對吧?)。
我知道我能做到這一點,但我想我會失去很多的功能,如果我會寫'公共遊戲對象sphere'。我的意思是,我將如何改變讓我們說球體的半徑? – sdafsDGZvb
如果你正在談論PrimitiveType Sphere,你所做的只是改變你的GameObject的localScale。在編輯器中更改半徑時,這正是Unity所做的。 如果你真的需要訪問一個部門的成員,你可以使用anyObject.GetComponent()該組成部分。然而球體本身不是組件,它只是一個選擇網格的標識符。 –
由於NULL,我得到錯誤。這就是編輯器中的所有東西都是如何鏈接的(風下的對象是領域)http://prntscr.com/9j6nrn。在這個腳本中,所有的shperes都是用這樣的線設置的:'center = center.GetComponent();'。我究竟做錯了什麼? –
sdafsDGZvb