Vector3類(lèi)詳解

一斥黑、向量、點(diǎn)乘眉厨、叉乘的介紹

在數(shù)學(xué)中锌奴,幾何向量(也稱(chēng)為歐幾里得向量,通常簡(jiǎn)稱(chēng)向量憾股、矢量)鹿蜀,指具有大小(magnitude)和方向的量荔燎。
向量可以形象化地表示為帶箭頭的線段耻姥。箭頭所指:代表向量的方向;線段長(zhǎng)度:代表向量的大小有咨。

向量
向量的運(yùn)算:
加減:各個(gè)分量分別相加減琐簇。
標(biāo)量:只有大小,沒(méi)有方向
數(shù)乘:向量與標(biāo)量的乘數(shù),可以對(duì)向量的長(zhǎng)度進(jìn)行縮放座享,如果標(biāo)量>0婉商,向量的
方向不變,如果<0,向量的方向?yàn)榉捶较?br>
向量運(yùn)算

點(diǎn)乘(點(diǎn)積):是接受在實(shí)數(shù)R上的兩個(gè)向量相乘并返回一個(gè)實(shí)數(shù)值標(biāo)量u的大小渣叛、v的大小丈秩、u,v夾角的余弦。在u,v非零的前提下淳衙,點(diǎn)積如果為負(fù)蘑秽,則u,v形成的角大于90度;如果為零箫攀,那么u,v垂直肠牲;如果為正,那么u,v形成的角為銳角靴跛。兩個(gè)單位向量的點(diǎn)積得到兩個(gè)向量的夾角的cos值缀雳,通過(guò)它可以知道兩個(gè)向量的相似性,利用點(diǎn)積可判斷一個(gè)多邊形是否面向攝像機(jī)還是背向攝像機(jī)梢睛。如果點(diǎn)積越大肥印,說(shuō)明夾角越小识椰,則物理離光照的軸線越近,光照越強(qiáng)深碱。
點(diǎn)乘(點(diǎn)積)

叉乘:兩個(gè)向量的叉乘得到一個(gè)新的向量腹鹉,新向量垂直于原來(lái)兩個(gè)向量,并且長(zhǎng)度等于原向量長(zhǎng)度相乘后再乘以?shī)A角的正弦值莹痢,類(lèi)似左手坐標(biāo)系Z
叉乘

點(diǎn)乘與叉乘的理解:

點(diǎn)乘:兩個(gè)向量點(diǎn)乘得到一個(gè)標(biāo)量 种蘸,數(shù)值等于兩個(gè)向量長(zhǎng)度相乘后再乘以二者夾角的余弦值 。
如果兩個(gè)向量a,b均 為單位 向量 ,那么a.b等于向量b在向量a方向上的投影的長(zhǎng)度

#點(diǎn)乘后得到的是一個(gè)值
若結(jié)果 == o竞膳,則 兩向量 互垂直 航瞭。
若結(jié)果 < 0 ,則 兩向量夾角大于90°坦辟。
若結(jié)果 >0 刊侯,則兩向量夾角小于 90°。
叉乘:兩 個(gè)向量的叉乘得到一個(gè)新的向量 ,新向量垂直于原來(lái)的兩個(gè)向量再乘夾角的正弦值
叉乘后得到的還是一個(gè)向量
在Unity3D里面锉走。兩個(gè)向量的點(diǎn)乘所得到的是兩個(gè)向量的余弦值滨彻,也就是-1 到1之間,
0表示垂直挪蹭,-1表示相反亭饵,1表示相同方向。 兩個(gè)向量的叉乘所得到的是兩個(gè)向量所組成的面
的垂直向量梁厉,分兩個(gè)方向辜羊。 簡(jiǎn)單的說(shuō),點(diǎn)乘判斷角度词顾,叉乘判斷方向八秃。 形象的說(shuō)當(dāng)一個(gè)敵人
在你身后的時(shí)候,叉乘可以判斷你是往左轉(zhuǎn)還是往右轉(zhuǎn)更好的轉(zhuǎn)向敵人肉盹,點(diǎn)乘得到你當(dāng)前的面
朝向的方向和你到敵人的方向的所成的角度大小昔驱。

二、Vector3的常用方法

****Vector是結(jié)構(gòu)體 ****
靜態(tài)成員變量
right(右):代表坐標(biāo)軸(1,0,0)
left (左):代表坐標(biāo)軸(-1,0,0)
up(上) :代表坐標(biāo)軸(0,1,0)
down (下): 代表坐標(biāo)軸(0,-1,0)
forward (前):代表坐標(biāo)軸(0,0,1)
back(后):代表坐標(biāo)軸(0,0,-1)
zero(零):代表坐標(biāo)軸(0,0,0)
one(一):代表坐標(biāo)軸(1,1,1)
****實(shí)例成員變量****

magnitude:(返回向量的長(zhǎng)度上忍,向量的長(zhǎng)度是(x*x+y*y+z*z)的平方根)(只讀)
 normalized:返回一個(gè)長(zhǎng)度為一的新向量骤肛,原向量長(zhǎng)度不變
sqrMagnitude:返回向量的長(zhǎng)度的平方(只讀)

Paste_Image.png

打印結(jié)果

Vector3常用方法:

Cross:向量叉乘
Dot:向量點(diǎn)乘
Lerp(v(from),v(to),t):兩個(gè)向量之間的線性插值。按照數(shù)字t在from到to之間插值窍蓝。
MoveTowards(v,v,speed);當(dāng)前的地點(diǎn)移向目標(biāo)萌衬。
RotateTowards(v,v,r,m);當(dāng)前的向量轉(zhuǎn)向目標(biāo)。
Max(v,v),Min(v,v); 向量的最大值它抱,最小值
Angle:返回兩個(gè)向量之間的夾角
Distance:返回兩個(gè)向量之間的距離

Project : 極端向量在另一向量上的投影
Operator + 向量相加
Operator - 向量相減
Operator * 向量乘以標(biāo)量
Operator / 向量除以標(biāo)量
Operator== 若向量相等返回true
Operator != 若向量不等于則返回true

三、Vector3方法的應(yīng)用

Dot(向量點(diǎn)乘)方法;
在做rpg類(lèi)游戲的過(guò)程中,經(jīng)常遇到要判斷周?chē)治锵鄬?duì)自身的方位**
判斷一個(gè)物體處于另一個(gè)物體的前后方位(背對(duì)或面對(duì)),點(diǎn)積大于前面(面對(duì)),否則(背對(duì))朴艰。

判斷前后位置

打印結(jié)果

Cross(向量叉乘方法)
判斷一個(gè)物體處于另一個(gè)物體的左右邊(通過(guò)v3.y>0右邊观蓄,否則在左邊)

判斷左右位置

打印結(jié)果
MoveTowards(v,v,speed) 當(dāng)前的地點(diǎn)移向目標(biāo)混移。
Distance:返回兩個(gè)向量之間的距離
方法的應(yīng)用

111.gif
距離在慢慢靠近。
打印結(jié)果
Lerp(v(from),v(to),t):兩個(gè)向量之間的線性插值侮穿。按照數(shù)字t在from到to之間插值歌径。
返回值的運(yùn)算方式為:from+(to-from)*t

代碼及參數(shù)

運(yùn)行后
RotateTowards(v,v,r,m);當(dāng)前的向量轉(zhuǎn)向目標(biāo)。
Paste_Image.png

運(yùn)行前

運(yùn)行后
Angle:返回兩個(gè)向量之間的夾角
Paste_Image.png

打印結(jié)果

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末亲茅,一起剝皮案震驚了整個(gè)濱河市回铛,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌克锣,老刑警劉巖茵肃,帶你破解...
    沈念sama閱讀 217,907評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異袭祟,居然都是意外死亡验残,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)巾乳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)您没,“玉大人,你說(shuō)我怎么就攤上這事胆绊“迸簦” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,298評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵压状,是天一觀的道長(zhǎng)仆抵。 經(jīng)常有香客問(wèn)我,道長(zhǎng)何缓,這世上最難降的妖魔是什么肢础? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,586評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮碌廓,結(jié)果婚禮上传轰,老公的妹妹穿的比我還像新娘。我一直安慰自己谷婆,他們只是感情好慨蛙,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,633評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著纪挎,像睡著了一般期贫。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上异袄,一...
    開(kāi)封第一講書(shū)人閱讀 51,488評(píng)論 1 302
  • 那天通砍,我揣著相機(jī)與錄音,去河邊找鬼。 笑死封孙,一個(gè)胖子當(dāng)著我的面吹牛迹冤,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播虎忌,決...
    沈念sama閱讀 40,275評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼泡徙,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了膜蠢?” 一聲冷哼從身側(cè)響起堪藐,我...
    開(kāi)封第一講書(shū)人閱讀 39,176評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎挑围,沒(méi)想到半個(gè)月后礁竞,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,619評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡贪惹,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,819評(píng)論 3 336
  • 正文 我和宋清朗相戀三年苏章,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片奏瞬。...
    茶點(diǎn)故事閱讀 39,932評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡枫绅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出硼端,到底是詐尸還是另有隱情并淋,我是刑警寧澤,帶...
    沈念sama閱讀 35,655評(píng)論 5 346
  • 正文 年R本政府宣布珍昨,位于F島的核電站县耽,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏镣典。R本人自食惡果不足惜兔毙,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,265評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望兄春。 院中可真熱鬧澎剥,春花似錦、人聲如沸赶舆。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,871評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)芜茵。三九已至叙量,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間九串,已是汗流浹背绞佩。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,994評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人征炼。 一個(gè)月前我還...
    沈念sama閱讀 48,095評(píng)論 3 370
  • 正文 我出身青樓析既,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親谆奥。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,884評(píng)論 2 354

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