国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity 3D腳本編程與游戲開(kāi)發(fā)【3.8】

這篇具有很好參考價(jià)值的文章主要介紹了Unity 3D腳本編程與游戲開(kāi)發(fā)【3.8】。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

6.4.5 動(dòng)畫(huà)層

????????圖6-42顯?了動(dòng)畫(huà)層設(shè)置窗?。在動(dòng)畫(huà)狀態(tài)機(jī)?可以添加很多層,層之間可以是覆蓋關(guān)系也可以是疊加關(guān)系,當(dāng)然也可以隨時(shí)屏蔽?些層、啟?另?些層。
Unity 3D腳本編程與游戲開(kāi)發(fā)【3.8】,Unity 3D腳本編程與游戲開(kāi)發(fā),unity,3d,游戲引擎,Unity 3D腳本編程,游戲開(kāi)發(fā),腳本與特效,動(dòng)畫(huà)幀事件

每?個(gè)動(dòng)畫(huà)層可以有單獨(dú)的設(shè)置,其選項(xiàng)解釋如下。
①Weight(權(quán)重),本層對(duì)總體動(dòng)畫(huà)效果的影響,取值范圍為0~1。0代表沒(méi)有影響,1代表完全影響。
②Mask(遮罩),每層可以單獨(dú)設(shè)置遮罩,如某些層只負(fù)責(zé)上肢動(dòng)畫(huà)。
③Blending(混合模式),有Override(覆蓋)和Additive(疊加)兩個(gè)選項(xiàng),是指這?層的影響覆蓋其他層,還是疊加到已有動(dòng)畫(huà)上。
④Sync與Timing,?于兩個(gè)動(dòng)畫(huà)層之間的同步。
⑤IK Pass(更新反向動(dòng)?學(xué)),如果勾選,則這?層動(dòng)畫(huà)會(huì)觸發(fā)腳本中的OnAnimatorIK()函數(shù),可以在腳本中進(jìn)?步處理IK??偨Y(jié)來(lái)說(shuō),動(dòng)畫(huà)遮罩和動(dòng)畫(huà)層為開(kāi)發(fā)者進(jìn)?步組合多種不同的動(dòng)
畫(huà)提供了可能。另外,在游戲項(xiàng)?早期或獨(dú)?游戲開(kāi)發(fā)時(shí),美術(shù)資源還不夠豐富,這套系統(tǒng)可以幫助開(kāi)發(fā)者盡可能組合出多種多樣的動(dòng)作。

6.4.6 動(dòng)畫(huà)幀事件

????????很多時(shí)候需要在特定的時(shí)機(jī)執(zhí)?某種邏輯。例如,當(dāng)玩家做揮砍動(dòng)作時(shí),在揮砍的某個(gè)時(shí)刻開(kāi)始,需要持續(xù)判斷是否擊中了物體。這個(gè)時(shí)機(jī)要求?較精確,因?yàn)樗屯婕业膭?dòng)作息息相關(guān),不能在?開(kāi)始抽出武器時(shí)就進(jìn)?攻擊判定,也不能在收招階段判定。攻擊判定的時(shí)間段只能是整個(gè)攻擊動(dòng)作中的?部分。
????????因此引擎需要提供?種機(jī)制,在動(dòng)畫(huà)的時(shí)間軸上做?個(gè)標(biāo)記,在動(dòng)畫(huà)播放到特定幀的時(shí)候觸發(fā)腳本函數(shù)。以揮砍動(dòng)作為例,可以在揮出武器時(shí)執(zhí)?“開(kāi)啟攻擊判定”的函數(shù),?在攻擊收招時(shí)執(zhí)?“關(guān)閉攻擊判定”的函數(shù)。

?提?
????????幀事件讓動(dòng)畫(huà)與游戲邏輯耦合由于動(dòng)畫(huà)幀事件的標(biāo)記必須在動(dòng)畫(huà)的時(shí)間軸上,因此會(huì)和動(dòng)畫(huà)數(shù)據(jù)本?耦合在?起。純粹從程序邏輯的?度看,多種不同系統(tǒng)的耦合并不是好事,但為了增強(qiáng)游戲表現(xiàn)?,這么做也有充分的理由。
????????根?骼動(dòng)畫(huà)也有同樣的特點(diǎn),根?骼動(dòng)畫(huà)是將動(dòng)作與物體運(yùn)動(dòng)耦合在了?起。也許,正是這種?處不在的耦合,才會(huì)讓游戲開(kāi)發(fā)顯得特殊和復(fù)雜。
下?以落地動(dòng)作為例,給落地動(dòng)作添加?個(gè)動(dòng)畫(huà)幀事件。
????????添加動(dòng)畫(huà)幀事件依然是在模型和動(dòng)畫(huà)導(dǎo)?設(shè)置中完成。?先找到落地動(dòng)作,然后在動(dòng)畫(huà)狀態(tài)機(jī)中找到Airborne(空中)狀態(tài),雙擊打開(kāi)融合樹(shù)。經(jīng)過(guò)分析,融合樹(shù)中的HumanoidFall動(dòng)畫(huà)就是落地動(dòng)畫(huà)。單擊該動(dòng)畫(huà),Project窗?會(huì)?動(dòng)跳轉(zhuǎn)到對(duì)應(yīng)的資源?件,也就是HumanoidIdleJumpUp。選中該?件查看導(dǎo)?設(shè)置,在Animation標(biāo)簽?的下?有?個(gè)Events(事件)選項(xiàng),動(dòng)畫(huà)幀事件就在這?添加,如圖6-43所?。但?定要先選中需要修改的動(dòng)畫(huà)?段,即HumanoidFall,再繼續(xù)設(shè)置。
Events設(shè)置中包含?個(gè)時(shí)間軸,時(shí)間軸左側(cè)有?個(gè)添加按鈕,?于添加新的事件,其步驟如下。

Unity 3D腳本編程與游戲開(kāi)發(fā)【3.8】,Unity 3D腳本編程與游戲開(kāi)發(fā),unity,3d,游戲引擎,Unity 3D腳本編程,游戲開(kāi)發(fā),腳本與特效,動(dòng)畫(huà)幀事件

01 單擊添加按鈕,會(huì)在時(shí)間軸上多出?個(gè)標(biāo)記。
02 將該標(biāo)記拖到需要觸發(fā)事件的時(shí)刻。注意這?的時(shí)間軸并不對(duì)應(yīng)動(dòng)畫(huà)的真實(shí)時(shí)間?度,?論動(dòng)畫(huà)本?時(shí)間?或短,都會(huì)統(tǒng)?為同樣的?度,在程序中??個(gè)0~1的值表?,這叫作“標(biāo)準(zhǔn)化時(shí)間”或“歸?化時(shí)間”
03 將標(biāo)記拖到合適的位置后,就可以填寫(xiě)事件信息了。Function字段必須填寫(xiě),它既是事件的名稱(chēng),也是會(huì)?動(dòng)調(diào)?的函數(shù)名。例如,填寫(xiě)MyFall就會(huì)調(diào)?腳本組件中的MyFall函數(shù),且這個(gè)函數(shù)還可以帶多個(gè)參數(shù)?便后續(xù)使?,包括1個(gè)浮點(diǎn)數(shù)、1個(gè)整數(shù)、1個(gè)字符串和1個(gè)Object類(lèi)型的引?。
進(jìn)?了設(shè)置后,編輯器中的信息就準(zhǔn)備完畢了,注意要單擊Apply按鈕讓修改?效。接下來(lái)的?步是修改腳本,給腳本添加對(duì)應(yīng)名稱(chēng)的函數(shù)。
在例?中,玩家??已經(jīng)掛載了ThirdPersonUserControl腳本,為了簡(jiǎn)單起?,直接給ThirdPersonUserControl腳本添加MyFall函數(shù)。
void MyFall()
{
Debug.Log(" 觸發(fā)幀事件,落地");
}
????????運(yùn)?游戲,按跳躍鍵進(jìn)?測(cè)試。如果設(shè)置正確就會(huì)在Console窗?中顯?“觸發(fā)幀事件,落地”的信息。這樣幀事件的主要使??法就介紹完畢了。但是如果深究,就還有?些?問(wèn)題,?先是動(dòng)畫(huà)系統(tǒng)查找動(dòng)畫(huà)幀事件的函數(shù)的規(guī)則是怎樣的?
????????簡(jiǎn)單來(lái)說(shuō),動(dòng)畫(huà)會(huì)查找當(dāng)前對(duì)應(yīng)物體的所有腳本,只要有名稱(chēng)和類(lèi)型符合的函數(shù),都會(huì)被調(diào)?。也就是說(shuō),如果玩家?上的兩個(gè)腳本都有名為MyFall的函數(shù)(返回值不是void也可以),那么都會(huì)被調(diào)?;如果?個(gè)函數(shù)都沒(méi)找到,就會(huì)產(chǎn)??條錯(cuò)誤信息。讀者可??試驗(yàn)。
????????其次,上?的MyFall函數(shù)沒(méi)有參數(shù),實(shí)際上可以帶?個(gè)參數(shù),但最多也只能帶?個(gè)參數(shù)。參數(shù)類(lèi)型可以是float、int、string或Object其中之?,參數(shù)的值可以在編輯動(dòng)畫(huà)幀事件時(shí)指定。
????????最后,動(dòng)畫(huà)幀事件不單是3D動(dòng)畫(huà)獨(dú)有的,所有動(dòng)畫(huà)都可以添加動(dòng)畫(huà)幀事件。?般給其他類(lèi)型的動(dòng)畫(huà)添加幀事件是在Animation窗?中操作的。窗?中的Add Property按鈕就是?于添加新事件的,如圖6-44所?。添加的事件也具有前?所提到的參數(shù),具體使??法也類(lèi)似。

Unity 3D腳本編程與游戲開(kāi)發(fā)【3.8】,Unity 3D腳本編程與游戲開(kāi)發(fā),unity,3d,游戲引擎,Unity 3D腳本編程,游戲開(kāi)發(fā),腳本與特效,動(dòng)畫(huà)幀事件

6.4.7 反向動(dòng)?學(xué)(IK)

????????IK全稱(chēng)為Inverse Kinematic,?般翻譯為反向動(dòng)?學(xué)。?般來(lái)說(shuō),它是?種極為細(xì)致的動(dòng)畫(huà)微調(diào)技術(shù),例如在以下情景中的應(yīng)?。
????????情景1,??在?上臺(tái)階時(shí),利?IK讓腳總是剛好踩在臺(tái)階上。
????????情景2,???持不同形狀的槍時(shí),?總是剛好抓著槍柄。
????????情景3,??進(jìn)?攀爬時(shí),?部和腳步緊貼墻壁。在上?的這些情景中,有兩個(gè)關(guān)鍵:?是通過(guò)程序檢測(cè)到合適的位置(臺(tái)階、槍柄),讓?腳或其他肢體朝?標(biāo)位置移動(dòng);?是當(dāng)?腳或其他肢體移動(dòng)時(shí),其余所有的關(guān)節(jié)都能配合移動(dòng),如?部運(yùn)動(dòng)時(shí)也會(huì)帶動(dòng)?臂的運(yùn)動(dòng)。IK會(huì)采?相關(guān)算法,盡可能讓運(yùn)動(dòng)看起來(lái)合理。
1. 頭部IK
頭部IK?較簡(jiǎn)單,只需要修改??控制腳本ThirdPersonCharacter就可以?即看到效果。在該腳本中加?的函數(shù)如下。

private void OnAnimatorIK(int layerIndex)
{
// 設(shè)置注視?標(biāo)的權(quán)重為1
m _ Animator.SetLookAtWeight(1);
// ?直注視(0,0,0) 點(diǎn)
m _ Animator.SetLookAtPosition(new Vector3(0, 0, 0));
}

????????運(yùn)?游戲進(jìn)?測(cè)試,會(huì)發(fā)現(xiàn)??頭部會(huì)保持轉(zhuǎn)向某個(gè)?向,但?標(biāo)在??背后時(shí),也不會(huì)過(guò)度轉(zhuǎn)向。使?IK有?些注意事項(xiàng),也只有符合以下規(guī)則,IK才會(huì)?效。
?????????是IK與動(dòng)畫(huà)狀態(tài)機(jī)中的動(dòng)畫(huà)層相關(guān)。在介紹動(dòng)畫(huà)層時(shí),我們看到在每?層的設(shè)置中都有?個(gè)IK Pass選項(xiàng),它?于開(kāi)啟或關(guān)閉IK功能。所有開(kāi)啟了IK Pass的層都會(huì)調(diào)?腳本中的OnAnimatorIK()函數(shù)。?是有與IK相關(guān)的函數(shù),如SetLookAtWeight()函數(shù)和SetLookAtPosition()函數(shù)都只能在專(zhuān)門(mén)的OnAnimatorIK()函數(shù)中調(diào)?。如果編寫(xiě)在其他地??不起作?,Unity會(huì)給出提?信息。
????????上?的SetLookAtPosition()函數(shù)?較好理解,參數(shù)是注視的?標(biāo)位置。?SetLookAtWeight()函數(shù)則是指IK運(yùn)動(dòng)的權(quán)重,可以理解為IK?預(yù)動(dòng)畫(huà)的程度。權(quán)重越?,IK運(yùn)動(dòng)就越明顯,權(quán)重為0時(shí)相當(dāng)于關(guān)閉了IK功能。
????????因?yàn)?物頭部轉(zhuǎn)動(dòng)時(shí),?體各部位都需要跟著配合,所以SetLookAtWeight()函數(shù)有很多參數(shù)可以調(diào)整,通常取默認(rèn)值即可。

// 參數(shù)依次為整體權(quán)重、?體權(quán)重、頭部權(quán)重、眼睛權(quán)重。
// 最后clampWeight是?個(gè)限制參數(shù),防?轉(zhuǎn)動(dòng)過(guò)?,0代表不限制,1代表完
全限制。
void SetLookAtWeight(float weight, float bodyWeight = 0.0f,
float headWeight = 1.0f,
float eyesWeight = 0.0f, float clampWeight = 0.5f);

2. ?腳IK
?部和腳部IK也很常?,其參考代碼如下。

private void OnAnimatorIK(int layerIndex)
{
// pos 是?標(biāo)位置
m _ Animator.SetIKPosition(AvatarIKGoal.LeftHand, pos);
m _ Animator.SetIKPositionWeight(AvatarIKGoal.LeftHand,
1);
// rot 是?標(biāo)朝向
m _ Animator.SetIKRotation(AvatarIKGoal.LeftHand, rot);
m _ Animator.SetIKRotationWeight(AvatarIKGoal.LeftHand,
1);
}

設(shè)置?腳IK時(shí),有4個(gè)常??法(?表6-2)。它們的第?個(gè)參數(shù)是AvatarIKGoal類(lèi)型的枚舉,只有4種取值:LeftFoot(左腳),RightFoot(右腳),LeftHand(左?),RightHand(右?)。
Unity 3D腳本編程與游戲開(kāi)發(fā)【3.8】,Unity 3D腳本編程與游戲開(kāi)發(fā),unity,3d,游戲引擎,Unity 3D腳本編程,游戲開(kāi)發(fā),腳本與特效,動(dòng)畫(huà)幀事件

????????在實(shí)際游戲開(kāi)發(fā)中,找到合適的位置和朝向很?煩,?般?法直接做到。通常有以下兩種尋找IK定位點(diǎn)的?式。
?????????是??個(gè)空物體作為參考點(diǎn)位置。例如,玩家??舉槍射擊時(shí),槍柄的?物體?有?個(gè)特殊的空物體,空物體的位置和朝向就是?部定位的點(diǎn)。編程時(shí),指定?部IK的位置和旋轉(zhuǎn)與空物體?樣,然后根據(jù)需要再微調(diào)空物體即可。
?????????是利?物理射線定位。例如,制作上樓梯的動(dòng)作時(shí),可以從??的腳朝下發(fā)射射線,射線碰到地?的位置就是腳部需要踩的位置。從很有限的參數(shù)和?法可以看出,Unity原?僅提供了很基本的IK功能,設(shè)計(jì)偏寫(xiě)實(shí)的游戲時(shí)可能會(huì)遇到功能不夠?的情況,這時(shí)可以求助于Asset Store中的插件。某些IK插件的功能?常強(qiáng)?,可以實(shí)現(xiàn)更復(fù)雜的IK效果。
????????從整體游戲設(shè)計(jì)來(lái)看,IK屬于?個(gè)專(zhuān)注于細(xì)枝末節(jié)的技術(shù)。很多游戲出于性能等因素的考慮?沒(méi)有使?IK。

第7章 腳本與特效

????????美觀且有特?的游戲畫(huà)?在吸引玩家眼球???常重要,?游戲作為動(dòng)態(tài)的藝術(shù)形式,動(dòng)畫(huà)與特效?然更為重要。精美的??動(dòng)作可以制造出極強(qiáng)的節(jié)奏感和打擊感,但更需要特效進(jìn)?步烘托氛圍、增強(qiáng)效果。相對(duì)??動(dòng)作??,特效受到的約束較少,可供發(fā)揮的空間較?。在?格合適的前提下,加?豐富多彩的特效能提升游戲表現(xiàn)?。
????????通常玩家所說(shuō)的特效,從技術(shù)?度來(lái)看其實(shí)可能包含了各種粒?、光效、動(dòng)效和氛圍動(dòng)畫(huà)等,然?各個(gè)系統(tǒng)之間可能并沒(méi)有什么聯(lián)系,僅僅只是搭配在?起形成了綜合的特效?已。本章將分別討論這些特效的?法和相關(guān)的編程要點(diǎn),側(cè)重點(diǎn)是如何使?和管理各種特效素材,?不是特效本?的制作?法。

7.1 特效總覽

????????提到Unity中的特效,?先想到的是粒?系統(tǒng)。其實(shí)?義地看,只要能增強(qiáng)游戲表現(xiàn)?的效果都可以稱(chēng)為特效。按照具體技術(shù)分類(lèi),可以包含粒?、動(dòng)畫(huà)(???動(dòng)畫(huà))、動(dòng)效、貼花、拖尾和后期效果等。

7.1.1 粒?

Unity中的粒?組件叫作Particle System,如圖7-1所?。

Unity 3D腳本編程與游戲開(kāi)發(fā)【3.8】,Unity 3D腳本編程與游戲開(kāi)發(fā),unity,3d,游戲引擎,Unity 3D腳本編程,游戲開(kāi)發(fā),腳本與特效,動(dòng)畫(huà)幀事件

????????粒?系統(tǒng)顧名思義,與“微粒”有關(guān)。粒?系統(tǒng)會(huì)?成和發(fā)射很多粒?,通過(guò)控制粒?的?成數(shù)量、??、?度、速度、貼圖和顏?等眾多屬性,可以實(shí)現(xiàn)或真實(shí)或炫酷的各種效果。其中,粒?的每?種屬性還可以根據(jù)時(shí)間變化?隨機(jī)變化,充分釋放特效設(shè)計(jì)師的創(chuàng)造?。
????????例如,?粒?系統(tǒng)可以實(shí)現(xiàn)?焰、?、雪、?流等?然現(xiàn)象,也可以實(shí)現(xiàn)能量球、魔法彈等幻想中的效果。?且現(xiàn)代的粒?系統(tǒng)也?持基于3D模型的粒?,可以實(shí)現(xiàn)模型破碎、模型聚合、模型消散等豐富的視覺(jué)效果。

7.1.2 動(dòng)畫(huà)

????????Unity的粒?系統(tǒng)有它??的局限性,因此美術(shù)設(shè)計(jì)師經(jīng)常結(jié)合動(dòng)畫(huà)系統(tǒng)和粒?系統(tǒng)來(lái)制作特效。有經(jīng)驗(yàn)的美術(shù)設(shè)計(jì)師利?圖?和模型素材,配合精?調(diào)整的旋轉(zhuǎn)、位移、縮放等基本變換,做出華麗的表現(xiàn)效果。
?????????且,由于動(dòng)畫(huà)可以直接對(duì)幀進(jìn)?編輯,相?只能調(diào)整參數(shù)的粒?系統(tǒng)控制?更強(qiáng),從?讓設(shè)計(jì)師更容易調(diào)整動(dòng)態(tài)節(jié)奏,因此某些情況下動(dòng)畫(huà)特效是不可替代的。

7.1.3 動(dòng)效

????????動(dòng)效?般是場(chǎng)景或界?中元素的?幅度動(dòng)態(tài)。例如,UI中?字的彈跳、縮放,圖?的淡?淡出,界?從屏幕外?到屏幕內(nèi),這些都可以算作動(dòng)效。動(dòng)效看似不起眼,但對(duì)于提升?戶(hù)體驗(yàn)來(lái)說(shuō)作?巨?,?且很多休閑類(lèi)游戲都?分注重動(dòng)效設(shè)計(jì)。動(dòng)效是?戶(hù)體驗(yàn)(UE)中舉?輕重的?個(gè)環(huán)節(jié),例如現(xiàn)代?機(jī)端操作系統(tǒng)都?常重視?戶(hù)操作的動(dòng)態(tài)效果,如圖7-2所?。

Unity 3D腳本編程與游戲開(kāi)發(fā)【3.8】,Unity 3D腳本編程與游戲開(kāi)發(fā),unity,3d,游戲引擎,Unity 3D腳本編程,游戲開(kāi)發(fā),腳本與特效,動(dòng)畫(huà)幀事件

????????在Unity中,動(dòng)效的實(shí)現(xiàn)有兩個(gè)基本?式,?是使?動(dòng)畫(huà),?是使?Tween(緩動(dòng)動(dòng)畫(huà))。緩動(dòng)動(dòng)畫(huà)是直接?腳本代碼控制的動(dòng)畫(huà),具有易添加、易維護(hù)、易修改的特點(diǎn),它只需添加少量的代碼就能做出各種?動(dòng)的動(dòng)畫(huà),?不?管理?量瑣碎的動(dòng)畫(huà)資源,?常?便。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-853346.html

到了這里,關(guān)于Unity 3D腳本編程與游戲開(kāi)發(fā)【3.8】的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Unity 3D腳本編程與游戲開(kāi)發(fā)(3.5)

    Unity 3D腳本編程與游戲開(kāi)發(fā)(3.5)

    6.2.8 總結(jié)和拓展 ????????本節(jié)利?Unity官?素材,以有限的篇幅解釋了動(dòng)畫(huà)狀態(tài)機(jī)的原理,以及動(dòng)畫(huà)制作中最基本但最重要的步驟??偟膩?lái)看,?前的動(dòng)畫(huà)只做了4種狀態(tài)——站?、?、跑和跳躍,還缺少下蹲、下蹲移動(dòng)和落地緩沖等動(dòng)作。好在這些動(dòng)作只是對(duì)現(xiàn)有動(dòng)作的

    2024年04月10日
    瀏覽(28)
  • Unity 3D腳本編程與游戲開(kāi)發(fā)(3.4)

    Unity 3D腳本編程與游戲開(kāi)發(fā)(3.4)

    6.2.3 動(dòng)畫(huà)的制作步驟 ????????接下來(lái)為??配上動(dòng)畫(huà),整體思路分以下3個(gè)部分。?是準(zhǔn)備好單個(gè)的動(dòng)畫(huà)素材,包含站?、跑和跳等動(dòng)作。也就是說(shuō),把原始素材中的圖?串聯(lián)起來(lái),形成?個(gè)單獨(dú)的動(dòng)畫(huà)。?是?Animator把這些單獨(dú)的動(dòng)作有機(jī)地組合起來(lái),形成?張狀態(tài)轉(zhuǎn)移

    2024年04月26日
    瀏覽(24)
  • Unity 3D腳本編程與游戲開(kāi)發(fā)【4.0】

    Unity 3D腳本編程與游戲開(kāi)發(fā)【4.0】

    7.2.3 DOTween插件使??法簡(jiǎn)介 緩動(dòng)動(dòng)畫(huà)既是?種編程技術(shù),也是?種動(dòng)畫(huà)的設(shè)計(jì)思路。從設(shè)計(jì)?度來(lái)看,可以有以下描述。 ①事先設(shè)計(jì)很多基本的動(dòng)畫(huà)樣式,如移動(dòng)、縮放、旋轉(zhuǎn)、變?和彈跳等。但這些動(dòng)畫(huà)都以抽象?式表?,?般封裝為程序函數(shù)。 ②動(dòng)畫(huà)的參數(shù)可以在使?

    2024年04月09日
    瀏覽(23)
  • Unity 3D腳本編程與游戲開(kāi)發(fā)(2.2)

    Unity 3D腳本編程與游戲開(kāi)發(fā)(2.2)

    3.2.7 修改物理材質(zhì) ????????每個(gè)物體都有著不同的摩擦?。光滑的冰?摩擦?很?,?地毯表?的摩擦?則很?。另外每種材料也有著不同的彈性,橡?表?的彈性?,硬質(zhì)地?的彈性?。在Unity中這些現(xiàn)象都符合?常的理念。 ????????雖然從原理上講,物體的摩擦?

    2024年02月04日
    瀏覽(21)
  • Unity 3D腳本編程與游戲開(kāi)發(fā)(2.8)

    Unity 3D腳本編程與游戲開(kāi)發(fā)(2.8)

    5.1.2 矩形變換(Rect Transform)組件 ????????如果選中界?上的控件,讀者會(huì)發(fā)現(xiàn)每個(gè)物體并不帶有基本的Transform組件,取?代之的是Rect Transform(矩形變換)組件。其實(shí)Rect Transform組件是Transform組件的?類(lèi),因此并不違反“每個(gè)物體必須有且只有?個(gè)Transform組件”的規(guī)定。

    2024年02月03日
    瀏覽(28)
  • Unity 3D腳本編程與游戲開(kāi)發(fā)【3.7】

    Unity 3D腳本編程與游戲開(kāi)發(fā)【3.7】

    ????????在這個(gè)??控制腳本中,可以看到很多新奇的寫(xiě)法。關(guān)鍵是,為什么要把移動(dòng)量轉(zhuǎn)化為轉(zhuǎn)?量和前進(jìn)量呢?要理解這個(gè)問(wèn)題,?定要多進(jìn)?游戲測(cè)試,體會(huì)轉(zhuǎn)?與輸?的關(guān)系。 ????????當(dāng)???朝前,輸?朝后時(shí),??的前進(jìn)量為0,轉(zhuǎn)?量達(dá)到最?;?當(dāng)??

    2024年04月15日
    瀏覽(23)
  • Unity 3D腳本編程與游戲開(kāi)發(fā)【4.1】

    Unity 3D腳本編程與游戲開(kāi)發(fā)【4.1】

    7.2.5 后期處理舉例 Post Processing(后期處理)并不屬于特效,但現(xiàn)代的特效表現(xiàn)離不開(kāi)后期處理的?持。本?節(jié)以眩光(Bloom)為例,展??種明亮的激光的制作?法,其效果如圖7-13所?。 1. 安裝后期處理擴(kuò)展包 ????????較新的Unity版本(如2018.4版本)已經(jīng)內(nèi)置了新版的后

    2024年04月26日
    瀏覽(29)
  • Unity 3D腳本編程與游戲開(kāi)發(fā)(3.2)

    Unity 3D腳本編程與游戲開(kāi)發(fā)(3.2)

    5.3.4 制作背包界? ????????背包界?是此實(shí)例中的重點(diǎn),因?yàn)樗钠聊贿m配?較有代表性。當(dāng)屏幕?較“瘦?”時(shí),道具列表中能顯?更多道具項(xiàng),?屏幕?較“矮胖”時(shí),顯?的道具項(xiàng)會(huì)變少。但這些都不影響玩家通過(guò)下拉滑動(dòng)查看所有道具,如圖5-37所?。 ??????

    2024年04月12日
    瀏覽(44)
  • Unity 3D游戲開(kāi)發(fā)+腳本編程完整指南:制作第一個(gè)游戲:3D滾球跑酷

    Unity 3D游戲開(kāi)發(fā)+腳本編程完整指南:制作第一個(gè)游戲:3D滾球跑酷

    教程相關(guān)資源 Unity 3D游戲開(kāi)發(fā)+腳本編程完整指南(工程文件+PPT).zip 本節(jié)利用前面的知識(shí)來(lái)實(shí)現(xiàn)第一個(gè)較為完整的小游戲,如 圖 1-21 所示。 圖1-21 3D滾球跑酷游戲完成效果 1. 功能點(diǎn)分析 游戲中的小球會(huì)以恒定速度向前移動(dòng),而玩家控制著小球 左右移動(dòng)來(lái)躲避跑道中的黃色障

    2024年02月21日
    瀏覽(31)
  • Unity物理系統(tǒng)腳本編程(上)

    當(dāng)一個(gè)物體掛載了剛體時(shí),即可在腳本中獲取該物體的剛體組件,代碼如下 Rigidbody rigid; void Start() { rigid=GetComponentRigidbody(); } 一般將剛體變量命名為rigid并定義為一個(gè)字段,方便復(fù)用. 最常用的施加作用力的方法是AddForce(),參數(shù)為Vector3類(lèi)型。代碼如下 rigid.AddForce(new Vector

    2024年02月04日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包