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

【Unity】程序集Assembly模塊化開(kāi)發(fā)

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

筆者按:使用Unity版本為2021.3LTS,與其他版本或有異同。請(qǐng)僅做參考
一、簡(jiǎn)述。
本文是筆者在學(xué)習(xí)使用Unity引擎的過(guò)程中,產(chǎn)學(xué)研的一個(gè)筆記。由筆者根據(jù)官方文檔Unity User Manual 2021.3 (LTS)/腳本/Unity 架構(gòu)/腳本編譯/程序集定義相關(guān)部分結(jié)合自身經(jīng)驗(yàn)所做,有不足之處,還請(qǐng)指正。
二、導(dǎo)讀。
1.==程序集定義(Assembly Definition)程序集引用(Assembly Definition Reference)==是可創(chuàng)建用于將腳本組織為程序集的資源。
2.Unity代碼工程一般默認(rèn)創(chuàng)建兩個(gè)程序集:Assembly-CSharp(非Editor目錄下腳本歸于此程序集) Assembly-CSharp-Editor(任何Editor目錄下腳本都自動(dòng)歸于此程序集)。
3.使用默認(rèn)程序集,對(duì)于小項(xiàng)目而言可以接受。但項(xiàng)目過(guò)大會(huì)有以下缺點(diǎn):

1.腳本有改動(dòng)時(shí),Unity會(huì)重新編譯當(dāng)前程序集下所有腳本,過(guò)多腳本會(huì)導(dǎo)致編譯時(shí)間冗長(zhǎng)。
2.理論上同一程序集內(nèi)任何腳本都可相互訪問(wèn)引用,導(dǎo)致項(xiàng)目耦合度高,難以重構(gòu)和優(yōu)化改進(jìn)代碼。
3.所有腳本都針對(duì)所有平臺(tái)進(jìn)行編譯。
4.定義程序集,有以下優(yōu)點(diǎn):
1.促進(jìn)模塊化和可重用性。
2.提升編譯效率。
3.提升代碼的平臺(tái)適配性。

三、程序集定義。
1.程序集定義,可以把你想單獨(dú)成模塊的腳本目錄給獨(dú)立出來(lái),到一個(gè)程序集中。
2.為每個(gè)程序集創(chuàng)建一個(gè)文件夾(圖3-2-1),并將需要?dú)w入此程序集的腳本移入到文件夾目錄中去(圖3-2-2),然后再創(chuàng)建程序集定義資源以指定程序集屬性(圖3-2-3)。
unity模塊化開(kāi)發(fā),技術(shù)之路,unity,c#,游戲引擎,Assembly,模塊化
unity模塊化開(kāi)發(fā),技術(shù)之路,unity,c#,游戲引擎,Assembly,模塊化
unity模塊化開(kāi)發(fā),技術(shù)之路,unity,c#,游戲引擎,Assembly,模塊化
3.新建的Assembly Definition Asset的屬性面板如下:
unity模塊化開(kāi)發(fā),技術(shù)之路,unity,c#,游戲引擎,Assembly,模塊化
逐項(xiàng)解釋?zhuān)?br> [Name] ——程序集名稱(chēng),一般在創(chuàng)建時(shí)便被定義,可修改;
General一般屬性
[Allow ‘unsafe’ Code]是否允許使用不安全的編碼;
[Auto Referenced]程序集之間是否根據(jù)編譯順序自動(dòng)引用相應(yīng)的程序集;

當(dāng)不同程序集之間存在引用關(guān)系時(shí),程序集之間就會(huì)存在依賴(lài)關(guān)系。A引用B,A依賴(lài)B。當(dāng)Unity編譯腳本時(shí),B必須先于A被編譯好。如此A才可以訪問(wèn)其依賴(lài)項(xiàng)的已編譯版本。A的程序集必須聲明對(duì)程序集B的引用。

[No Engine References]不引用(相關(guān))的程序集引用
[Override References]對(duì)預(yù)編譯程序集的引用,覆蓋對(duì)預(yù)編譯程序集的自動(dòng)引用情況。一般為動(dòng)態(tài)鏈接庫(kù)(dll)
[Root Namespace]當(dāng)前程序集的默認(rèn)命名空間,在當(dāng)前程序集中新建腳本時(shí)有用

Define Constraints定義約束條件。通過(guò)相應(yīng)的“宏定義”來(lái)控制程序集的是否編譯的行為。
–Assembly References–(與Override References 一起使用)選擇需要引用程序集的程序集定義添加進(jìn)來(lái)
Assembly Definition References程序集定義引用。
[Use GUIDs]勾選此選項(xiàng),可以允許引用的程序集修改名稱(chēng)而不受影響。提倡勾選
Platforms設(shè)置程序集的平臺(tái)兼容性
Version Defines對(duì)不同的程序集進(jìn)行不同的配置與定義。
3.新建程序集定義的文件。
*.asmdef。內(nèi)部編碼遵循Json格式,故而除了可以在屬性面板上修改之外,也可以直接修改Json。
四、程序集定義引用。
1.程序集定義引用,就是把當(dāng)前目錄下的腳本合并到指定程序集定義當(dāng)中去。
2.創(chuàng)建程序集定義引用(Assembly Definition Reference)資源。
在Project窗口中找到需要包含到引用程序集中的腳本文件夾,點(diǎn)擊(Assets->Create->Assembly Definition Reference),定義名稱(chēng)。
unity模塊化開(kāi)發(fā),技術(shù)之路,unity,c#,游戲引擎,Assembly,模塊化
3.新建程序集定義引用屬性面板。
unity模塊化開(kāi)發(fā),技術(shù)之路,unity,c#,游戲引擎,Assembly,模塊化
[Use GUID]使用程序集的Guid而非Name。
[Assembly Definition]指定對(duì)應(yīng)的程序集定義。
4.新建程序集定義引用的文件。
*.asmref。內(nèi)部編碼遵循Json格式,故而除了可以在屬性面板上修改之外,也可以直接修改Json。
五、以上就是程序集Assembly相關(guān)的部分。如果想了解更多,建議去官網(wǎng)文檔直接找程序集篇。有什么想法,也可以和筆者討論。
unity模塊化開(kāi)發(fā),技術(shù)之路,unity,c#,游戲引擎,Assembly,模塊化文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-607754.html

到了這里,關(guān)于【Unity】程序集Assembly模塊化開(kāi)發(fā)的文章就介紹完了。如果您還想了解更多內(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)文章

  • 深入理解JavaScript模塊化開(kāi)發(fā)

    深入理解JavaScript模塊化開(kāi)發(fā)

    前言: 隨著JavaScript應(yīng)用程序的復(fù)雜性不斷增加,模塊化開(kāi)發(fā)成為了一種必備的技術(shù)。通過(guò)將代碼劃分為模塊,我們可以提高代碼的可維護(hù)性、可重用性和可擴(kuò)展性。在本文中,我們將深入探討JavaScript模塊化開(kāi)發(fā)的概念、優(yōu)勢(shì)和不同的模塊化方案。 模塊化開(kāi)發(fā)是將一個(gè)大型應(yīng)

    2024年02月08日
    瀏覽(41)
  • Vue的模塊化開(kāi)發(fā)初探

    Vue的模塊化開(kāi)發(fā)初探

    Vue是一個(gè)漸進(jìn)式JavaScript框架,可以按需引入部分功能,而不必全量引入整個(gè)框架。 2.1 下載必須模塊 在瀏覽器輸入: https://unpkg.com/vue@3/dist/vue.esm-browser.js ,右鍵另存為,保存到demo.html文件同級(jí)目錄下。 2.2 安裝Live Server插件 在VSCode插件市場(chǎng)搜索Live Server并安裝,如下圖: 2.

    2024年04月10日
    瀏覽(26)
  • 前端基礎(chǔ)(Vue的模塊化開(kāi)發(fā))

    前端基礎(chǔ)(Vue的模塊化開(kāi)發(fā))

    ? 前言 :前面學(xué)習(xí)了前端HTML、CSS樣式、JavaScript以及Vue框架的簡(jiǎn)單適用,接下來(lái)運(yùn)用前端模塊化編程的思想,繼續(xù)學(xué)習(xí)Vue框架,完成自己項(xiàng)目項(xiàng)目的搭建。 目錄 響應(yīng)式基礎(chǔ) ref?reactive 學(xué)習(xí)成果展示 Vue項(xiàng)目搭建 搭建自己的vue項(xiàng)目 總結(jié)? 關(guān)于ref和reactive,官方解釋如下,另外一

    2024年02月12日
    瀏覽(27)
  • 使用Webpack進(jìn)行模塊化開(kāi)發(fā)與打包

    Webpack是一個(gè)現(xiàn)代化的JavaScript模塊打包工具,它可以將多個(gè)模塊打包成一個(gè)或多個(gè)靜態(tài)資源文件。通過(guò)Webpack,我們可以將項(xiàng)目中的各個(gè)模塊進(jìn)行模塊化開(kāi)發(fā),并將它們打包成一個(gè)或多個(gè)可供瀏覽器加載的靜態(tài)資源文件。 使用Webpack進(jìn)行模塊化開(kāi)發(fā)與打包有以下幾個(gè)優(yōu)勢(shì): 2.1

    2024年02月12日
    瀏覽(57)
  • LabVIEW應(yīng)用開(kāi)發(fā)——VI模塊化

    LabVIEW應(yīng)用開(kāi)發(fā)——VI模塊化

    ? ? ? ? 我們?cè)趯?xiě)C語(yǔ)言的時(shí)候,一些模塊化的功能或者多次調(diào)用的功能,我們一般會(huì)用一個(gè)函數(shù)封裝起來(lái),方便使用并且讓代碼看起來(lái)更加的簡(jiǎn)潔。這種函數(shù)一般都會(huì)包含這幾個(gè)概念, 輸入?yún)?shù) 、 輸出參數(shù) 和 返回值 。而LabVIEW的VI就可以當(dāng)作是一個(gè)函數(shù), 輸入?yún)?shù) 就是

    2024年02月07日
    瀏覽(28)
  • Python面向?qū)ο缶幊?,?shí)現(xiàn)模塊化開(kāi)發(fā)

    面向?qū)ο缶幊蹋∣bject Oriented Programming,OOP)是一種編程范式,它將真實(shí)世界中的事物抽象成程序中的對(duì)象,并通過(guò)對(duì)象之間的相互作用來(lái)完成程序的邏輯。 封裝 (Encapsulation) 封裝是指把數(shù)據(jù)和行為結(jié)合成一個(gè)相對(duì)獨(dú)立的整體,防止程序中其他部分直接訪問(wèn)或修改這個(gè)整體,而

    2024年02月05日
    瀏覽(96)
  • 07-微信小程序-注冊(cè)頁(yè)面-模塊化

    07-微信小程序-注冊(cè)頁(yè)面-模塊化

    07-微信小程序-注冊(cè)頁(yè)面 對(duì)于小程序中的每個(gè)頁(yè)面,都需要在頁(yè)面對(duì)應(yīng)的 js 文件中進(jìn)行注冊(cè),指定頁(yè)面的初始數(shù)據(jù)、生命周期回調(diào)、事件處理函數(shù)等。 簡(jiǎn)單的頁(yè)面可以使用 Page() 進(jìn)行構(gòu)造。 Page(Object) 函數(shù)用來(lái)注冊(cè)一個(gè)頁(yè)面。接受一個(gè) Object 類(lèi)型參數(shù),其指定頁(yè)面的初始數(shù)據(jù)、

    2024年02月12日
    瀏覽(85)
  • 第四章認(rèn)識(shí)Node.js模塊化開(kāi)發(fā)

    Node.js系統(tǒng)模塊 續(xù)上一篇文章第三章認(rèn)識(shí)Node.js模塊化開(kāi)發(fā)-CSDN博客,這次繼續(xù)來(lái)認(rèn)識(shí)和總結(jié)以下node的常用模塊開(kāi)發(fā) Node.js系統(tǒng)模塊是指Node.js自帶的一些模塊,這些模塊可以直接在Node.js中使用,無(wú)需安裝其他包。以下是常用的Node.js系統(tǒng)模塊: fs模塊:用于處理文件系統(tǒng)。 htt

    2024年02月08日
    瀏覽(24)
  • 第三章認(rèn)識(shí)Node.js模塊化開(kāi)發(fā)

    目錄 認(rèn)識(shí)Node.js 概述 作用 基本使用 Node.js的運(yùn)行 Node.js的組成 Node.js的語(yǔ)法 Node.js全局對(duì)象 認(rèn)識(shí)模塊化開(kāi)發(fā) 概述 場(chǎng)景 特點(diǎn) 模塊成員的導(dǎo)入和導(dǎo)出 Node.js?模塊化語(yǔ)法 導(dǎo)入模塊 導(dǎo)出模塊 ES6 模塊化語(yǔ)法 導(dǎo)入模塊 導(dǎo)出模塊 項(xiàng)目 認(rèn)識(shí)Node.js 概述 Node.js是一個(gè) 開(kāi)源的、跨平臺(tái) 的

    2024年02月06日
    瀏覽(23)
  • 驅(qū)動(dòng)開(kāi)發(fā) day2 (led模塊化驅(qū)動(dòng)操控)

    head.h fun.c mycdev.c Makefile

    2024年02月15日
    瀏覽(28)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包