GameObject類和Transform組件相關(guān)

(1)Gameobject類

GameObject是Unity場景里面所有實體的基類.

一锥余、查找游戲?qū)ο?/h4>

1. 通過名字查找
GameObject.Find(string name);
此方法每次都會遍歷整個場景,來尋找匹配的游戲物體,比較消耗資源
2. 通過Tag(標(biāo)簽)查找對象
Gameobject.FindGameObjectWithTag(string tag);
通過tag標(biāo)簽進(jìn)行查找
GameObject.FindGameObjectsWithTag(string tag)
查找到所有掛載此標(biāo)簽的對象疙筹,并返回一個GameObject數(shù)組

Paste_Image.png
打印結(jié)果:
Paste_Image.png

二匆赃、動態(tài)創(chuàng)建刪除游戲物體

創(chuàng)建系統(tǒng)內(nèi)置的游戲?qū)ο蟛⑶医o名字球散,位置和標(biāo)簽

Paste_Image.png
運行后
Paste_Image.png
還可以創(chuàng)建以下游戲?qū)ο?br> Capsule 膠囊
Cube 立方體
Cylinder 圓柱體
Plane 平面
Quad 正方形面片
Sphere 球形

*** 實例化游戲?qū)ο螅ㄟ^預(yù)制物加載***
GameObject.Instantiate(obj original,Vector3 Position, Quaternion rotation)可以設(shè)置位置與旋轉(zhuǎn)
簡單版
GameObject.Instantiate(obj original);
簡單版則不可以設(shè)置位置與旋轉(zhuǎn)亏钩,都為默認(rèn)值(0,0,0)

Paste_Image.png
運行后預(yù)制物會被克隆創(chuàng)建出來
Paste_Image.png
刪除游戲?qū)ο?/em>
GameObject.Destroy(Object obj);
其參數(shù)或者是(Object obj, float 1f);
此方法可以有一個重載,后面還可以加一個時間參數(shù)欺旧,就是延時刪除
刪除完物體姑丑,物體還會存在于內(nèi)存中,調(diào)用此方法時辞友,只是給一個標(biāo)記栅哀,內(nèi)存中依然存在,只有內(nèi)存不夠称龙,或一段時間內(nèi)沒有再次被引用時(或者更多的條件滿足)留拾,機(jī)制才會對他進(jìn)行銷毀并釋放內(nèi)存
Paste_Image.png
運行五秒后游戲?qū)ο蟊淮輾?br>
Paste_Image.png

三、動態(tài)添加組件

1.非泛型
obj.AddComponent(typeof(Animation)); 使用反射添加
2.泛型
obj.AddComponent<T>();
最常用的還是泛型的


Paste_Image.png

運行后球體擁有剛體組件


Paste_Image.png

四鲫尊、動態(tài)獲取組件

獲取到自己身上的組件
this.getComponent<XXX>();

獲取其他物體身上的組件
GameObject.Find(“url”).getComponent<XXX>();


Paste_Image.png

打印輸出


Paste_Image.png

五痴柔、SendMessage-發(fā)送消息:

GameObject.SendMessageUpwards 向上發(fā)送消息 ,向物體和父物體發(fā)送消息,如果消息沒有被任何一個組件處理,則會打印一個錯誤疫向。

***GameObject.BroadcastMessage ***廣播消息,對物體和所有子物體發(fā)送消息咳蔚。如果消息沒有被任何一個組件處理,則會打印一個錯誤搔驼。

***GameObject.SendMessage ***發(fā)送消息向同級發(fā)送消息谈火。果消息沒有被任何一個組件處理,則會打印一個錯誤舌涨。


Paste_Image.png

(2)Transform組件

Paste_Image.png
Transform 的成員函數(shù)
Paste_Image.png

查找根(返回層次最高的transform)
obj.transform.root;
查找到父級
obj.transform.parent;
獲得子游戲物體的數(shù)量
obj.transform.childCount;
移除所有的子游戲?qū)ο?通過這種方式可以擺脫父子級關(guān)系)
obj.transform.DetachChildren();
獲取某個索引位置的游戲?qū)ο?br> obj.transform.GetChild(index );

Debug.Log("position " + transform.position); //世界坐標(biāo)的位置
Debug.Log("localPosition " + transform.localPosition); //相對于父位置的坐標(biāo) 即把父物體當(dāng)作自己的中心
Debug.Log("eulerAngles " + transform.eulerAngles);//世界坐標(biāo)歐拉角度
Debug.Log("localEulerAngles " + transform.localEulerAngles);//相對于父級的變換的旋轉(zhuǎn)歐拉角度
Debug.Log("localScale " + transform.localScale);//相對于父位置的縮放
Debug.Log("localRotation " + transform.localRotation);//相對于父位置的旋轉(zhuǎn)
Debug.Log("rotation " + transform.rotation);//世界坐標(biāo)的旋轉(zhuǎn)

Rotate自轉(zhuǎn)

Paste_Image.png

RotateAround公轉(zhuǎn)

Paste_Image.png

四元數(shù)(Quaternion)和旋轉(zhuǎn)

Quaternion又稱四元數(shù)糯耍,由x,y,z和w這四個分量組成,是由愛爾蘭數(shù)學(xué)家威廉·盧云·哈密頓在1843年發(fā)現(xiàn)的數(shù)學(xué)概念囊嘉。
四元數(shù)用于表示旋轉(zhuǎn)温技,有一種旋轉(zhuǎn)的表示方法叫四元數(shù)。

Quaternion rotations = Quaternion.identity;

//第一種方式:將Quaternion實例對象賦值給transform的rotation 
rotations.eulerAngles = new Vector3(0.0f, tSpeed, 0.0f);

Quaternion.identity就是指Quaternion(0,0,0,0),就是每旋轉(zhuǎn)前的初始角度,是一個確切的值,而transform.rotation是指本物體的角度,值是不確定的

四元數(shù)*vector3(原始位置)=旋轉(zhuǎn)后最新的位置

Paste_Image.png
Paste_Image.png
Paste_Image.png
Paste_Image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末扭粱,一起剝皮案震驚了整個濱河市舵鳞,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌焊刹,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異虐块,居然都是意外死亡俩滥,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進(jìn)店門贺奠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來霜旧,“玉大人,你說我怎么就攤上這事儡率」揖荩” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵儿普,是天一觀的道長崎逃。 經(jīng)常有香客問我,道長眉孩,這世上最難降的妖魔是什么个绍? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮浪汪,結(jié)果婚禮上巴柿,老公的妹妹穿的比我還像新娘。我一直安慰自己死遭,他們只是感情好广恢,可當(dāng)我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著呀潭,像睡著了一般钉迷。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上蜗侈,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天篷牌,我揣著相機(jī)與錄音,去河邊找鬼踏幻。 笑死枷颊,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的该面。 我是一名探鬼主播夭苗,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼隔缀!你這毒婦竟也來了题造?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤猾瘸,失蹤者是張志新(化名)和其女友劉穎界赔,沒想到半個月后丢习,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡淮悼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年咐低,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片袜腥。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡见擦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出羹令,到底是詐尸還是另有隱情鲤屡,我是刑警寧澤,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布福侈,位于F島的核電站酒来,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏癌刽。R本人自食惡果不足惜役首,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望显拜。 院中可真熱鬧衡奥,春花似錦、人聲如沸远荠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽譬淳。三九已至档址,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間邻梆,已是汗流浹背守伸。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留浦妄,地道東北人尼摹。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像剂娄,于是被迫代替她去往敵國和親蠢涝。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容