• 招生咨詢熱線:4008-569-579 
  • 手機(jī)版
    用手機(jī)掃描二維碼直達(dá)商品手機(jī)版
招生咨詢熱線
4008-569-579
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料 > Unity開發(fā)游戲的原則是什么
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料>Unity開發(fā)游戲的原則是什么

Unity開發(fā)游戲的原則是什么

來(lái)源:廣州達(dá)內(nèi)教育        時(shí)間:2023-05-30        熱度:29℃        返回列表

     Unity培訓(xùn)機(jī)構(gòu)(達(dá)內(nèi)科技)表示,現(xiàn)在的游戲行業(yè)是發(fā)展的很好的一個(gè)行業(yè)了,在人們開始不管是在生活中,社交交友中多會(huì)用到游戲了,大家現(xiàn)在開始對(duì)于游戲這個(gè)詞的定義也不再是玩物喪志了。那么開發(fā)游戲中使用的多的語(yǔ)言就是unity了,對(duì)于unity大家可能也不是很熟悉,下面達(dá)內(nèi)科技的小編就給大家講解下unity開發(fā)游戲的原則是什么?

 

  1、關(guān)注點(diǎn)分離原則


  關(guān)注點(diǎn)分離是日常生活和生產(chǎn)中廣泛使用的解決復(fù)雜問(wèn)題的一種系統(tǒng)思維方法。大體思路是,先將復(fù)雜問(wèn)題做合理的分解,再分別仔細(xì)研究問(wèn)題的不同側(cè)面(關(guān)注點(diǎn)),綜合各方面的結(jié)果,合成整體的解決方案


  許多游戲的對(duì)象都可以分為顯示表現(xiàn)部分,邏輯處理部分,數(shù)據(jù)存儲(chǔ)部分。


  比如一個(gè)MOBA游戲的角色,就要把視覺相關(guān)的內(nèi)容和核心邏輯給分離開。


  角色表現(xiàn)部分:動(dòng)畫、模型顯示、相關(guān)、UI等美術(shù)資源和控制模型動(dòng)畫播放,生命值血條變化等改變對(duì)象顯示的部分代碼。


  核心邏輯部分:控制對(duì)象行為(移動(dòng)、攻擊、技能),控制對(duì)象數(shù)值變化(被擊扣血、擊殺獲得金錢),處理業(yè)務(wù)邏輯部分。


  數(shù)據(jù)存儲(chǔ)部分:記錄玩家自身屬性、如攻擊、血量、防御力等。


  角色顯示和邏輯分開的好處一是可以讓我們的代碼清晰,出了問(wèn)題能直觀的去相應(yīng)的代碼塊去找問(wèn)題,二是分離代碼邏輯后,如果美術(shù)資源的更新,以及策劃的更新不會(huì)影響到主要的業(yè)務(wù)邏輯代碼,這就提高了游戲的可移植性。


  


  而邏輯和數(shù)據(jù)分離的好處是可以代碼復(fù)用減少耦合。


  


  2、.開放封閉原則


  開放封閉原則(OCP,Open Closed

Principle)是所有面向?qū)ο笤瓌t的核心。軟件設(shè)計(jì)本身所追求的目標(biāo)就是封裝變化、降低耦合,而開放封閉原則正是對(duì)這一目標(biāo)的直接體現(xiàn)。


  開放封閉原則主要體現(xiàn)在兩個(gè)方面:


  對(duì)擴(kuò)展開放,意味著有新的需求或變化時(shí),可以對(duì)現(xiàn)有代碼進(jìn)行擴(kuò)展,以適應(yīng)新的情況。


  對(duì)修改封閉,意味著類一旦設(shè)計(jì)完成,就可以獨(dú)立完成其工作,而不要對(duì)類進(jìn)行任何修改。


  游戲開發(fā)中有很多的突發(fā)事件,經(jīng)常會(huì)用到監(jiān)聽觀察者模式。這種又叫做響應(yīng)式編程的思想。


  比如一款游戲從開發(fā)到發(fā)行對(duì)一個(gè)事件的處理是由簡(jiǎn)單到復(fù)雜的。比如游戲戰(zhàn)斗結(jié)束,如果在戰(zhàn)斗管理器里面寫具體執(zhí)行的邏輯代碼,那么后期策劃逐漸提出我們要在戰(zhàn)斗結(jié)束的時(shí)候加入“鏡頭變化”,“加入U(xiǎn)I變化”,加入“服務(wù)器數(shù)據(jù)請(qǐng)求”等需求的時(shí)候,避免我們每次都要修改已經(jīng)完成的功能,我們就將戰(zhàn)斗結(jié)束作為一個(gè)事件發(fā)送,哪個(gè)系統(tǒng)關(guān)心這個(gè)事件就在各自的邏輯代碼函數(shù)注冊(cè)到這個(gè)事件中。


  這種編程方式廣泛用在游戲各個(gè)功能塊中,比如場(chǎng)景加載模塊,當(dāng)場(chǎng)景加載后調(diào)用加載完成事件,誰(shuí)需要在加載完成后處理什么事件邏輯,自己就去注冊(cè)調(diào)用就好了。


  3、不信任原則


  這個(gè)是近看騰訊云技術(shù)社區(qū)發(fā)表的文章后總結(jié)出來(lái)的。深有感觸。


  說(shuō)的很好,游戲編程就像掃雷,你一不小心就會(huì)在某一步出錯(cuò),游戲直接Over掉。


  所以我們的編程應(yīng)該步步為營(yíng),一個(gè)功能能再細(xì)化操作的就細(xì)化出來(lái),比如一個(gè)UI管理器,就得處理UI的加載、創(chuàng)建、設(shè)置類型、設(shè)置層級(jí)、顯示、處理邏輯、關(guān)閉或刪除等功能。因?yàn)楫?dāng)后期做優(yōu)化或者解決沖突,其中的每一步都可能是一個(gè)關(guān)鍵問(wèn)題點(diǎn)。


  直接利用引擎實(shí)現(xiàn)的部分也需要有一定的封裝,你會(huì)看到很多游戲源碼里面部分類都自己有一個(gè)base基類。


  即使這樣,以上原則也有部分游戲開發(fā)不適應(yīng),各位看官還是以自身項(xiàng)目情況出發(fā)巧用設(shè)計(jì)方法。


  很多相關(guān)框架的答案都用了各種專業(yè)的詞匯來(lái)形容這個(gè)框架是多么的牛逼,多么的厲害。但是一般學(xué)了幾年程序的朋友都能摸索出來(lái)自己的框架,不會(huì)去主動(dòng)去問(wèn)常用框架的問(wèn)題(一般想了解的話自己就去各種搜索了解了,互聯(lián)網(wǎng)就是技術(shù)人員的后盾嘛)。


  而一般問(wèn)這個(gè)問(wèn)題的基本都是初學(xué)者,初學(xué)者聽到答案后去各種看框架,看到中間后發(fā)現(xiàn)越看越看不懂。學(xué)具體寫法不如學(xué)理念,這個(gè)東西是永遠(yuǎn)不會(huì)過(guò)時(shí)的。


  以上就是達(dá)內(nèi)科技的小編給大家整理的關(guān)于unity開發(fā)游戲的原則是什么。如果說(shuō)你對(duì)于游戲開發(fā)也有興趣,也想要學(xué)習(xí)unity技術(shù)的話,那么達(dá)內(nèi)科技?xì)g迎大家來(lái)我們公司的unity培訓(xùn)班進(jìn)行實(shí)地考察,也可以點(diǎn)擊我們文章下面的獲取試聽資格按鈕來(lái)獲取我們的unity課程免費(fèi)試聽資格,來(lái)和我們的講師進(jìn)行面對(duì)面的交流和互動(dòng),并更加深入的了解我們達(dá)內(nèi)科技。

電話咨詢

電話咨詢

咨詢電話:
4008-569-579
回到頂部

回到頂部