Unity2018新功能搶鮮 | Package Manager


一個包是一個容器,它可以包含各種資源的組合:shader、紋理、插件、圖標、腳本等,可以增強項目的各個部分。相對於Asset Store的包,Package Manager提供了更新,更容易集成的包管理方案,能夠為Unity提供各種增強功能。

使用Unity Package Manager窗口(在Unity的頂部菜單中:Window > Package Manager)查看哪些包可用於安裝或已安裝在你的項目中。另外,你可以使用此窗口為每個項目安裝,[刪除](https://docs.unity3d.com/Packages/com.unity.package-manager-ui@[圖片上傳中…(宣傳海報.png-a5152a-1524275636416-0)] 
1.8/manual/index.html#PackManRemove)或更新包。

包管理器窗口

包管理器窗口顯示左側的列表視圖和右側的詳細視圖

查找包

默認情況下,包管理器窗口顯示In Project下的包列表,只有安裝在項目中的包才會顯示在列表中。

單擊All按鈕顯示所有可用包。該列表顯示注冊在包注冊表中的所有內容,不管它們是否已經安裝在項目中。

在項目和所有模式下

查看包詳細信息

“包管理器”窗口右側的窗格顯示有關所選包的詳細信息。

詳細信息

這些詳細信息包括以下信息:

  • (A)顯示名稱
  • (B)版本號(和標簽,如果有的話)
  • (C)打開包文檔頁面的鏈接
  • (D)官方包名稱會以 com.unity開頭
  • (E)作者
  • (F)安裝或更新狀態
  • (G)簡要說明
  • (H)按鈕來安裝,刪除或更新包
  • (I)包更新日志的鏈接

版本標簽

一些包在版本號旁邊顯示標簽。這些標簽傳達有關該包版本的信息。

標記版本信息

包管理器使用以下值:

標簽 含義
verified Unity的質量保證團隊已正式確認此包可與編輯器的特定版本配合使用。
preview 該包處於發布周期的早期階段,可能尚未被開發團隊或Unity的質量保證團隊記錄和完全驗證。

沒有標簽的包默認是生產環境可以使用的。

查找更多信息

你可以通過查看文檔了解更多關於包的信息。

單擊詳細信息窗格中的查看文檔鏈接:

查看文檔鏈接

包文檔頁面將在你的默認瀏覽器中打開。

訪問包管理器窗口

你可以通過包管理器窗口執行各種任務:

Window > Package Manager

安裝一個新包

安裝按鈕

要安裝一個新包:

  1. 打開項目管理器窗口並單擊All按鈕。
  2. 從“ 包”列表中選擇要安裝的包。包信息出現在“詳細信息”窗格中。
  3. 點擊安裝XXX按鈕。當進度條結束時,新包已准備好使用。

刪除已安裝的包

刪除按鈕

刪除已安裝的包:

  1. 打開項目管理器窗口。
  2. 如果處於All模式,請單擊In Project按鈕。
  3. 從“ 包”列表中選擇要刪除的包。包信息出現在“詳細信息”窗格中。
  4. 點擊刪除XXX按鈕。當進度條結束時,程序包將從列表中消失。

備注:

  • 你只能刪除其他包不需要的包。
  • 當你刪除一個包時,它的任何編輯器或運行時功能都不再可用。

更新已安裝的包

更新按鈕

你可以在In Project或All模式下更新包:

  1. 打開項目管理器窗口。有可用更新的包旁邊會出現一個箭頭指示符。
  2. 從Packages列表中選擇要更新的包。包信息出現在“詳細信息”窗格中。
  3. 點擊更新至XXX按鈕。當進度條完成時,新的包版本信息將顯示在“詳細信息”窗格中,並且任何新功能都立即可用。

高級配置

本節提供有關包清單文件的一些高級信息。你無需了解這些內容即可安裝,刪除和更新包。

除了其內容(資源,着色器,紋理,插件,圖標和腳本)外,Unity包還包含包清單文件。包清單告訴Unity如何在包管理器窗口中顯示其信息頁面,以及如何在項目中安裝包。

包的文件夾結構

此外,它還包含幾個文件,可幫助管理包部署,包括測試,示例,許可證,更新日志和文檔。

Manifests

manifest文件有兩種:項目清單(manifest.json)和包清單(package.json)。這兩個文件都使用JSON(JavaScript Object Notation)語法與包管理器進行通信,通過描述每個項目可用的包以及每個包包含的內容。

項目manifests

項目清單(manifest.json)告訴包管理器哪些包和版本可用於項目。

項目清單支持以下值:

JSON類型 描述
dependencies Object 包管理器要加載的包列表。這些通常是在Unity中正式注冊的包。

manifest.json文件示例:

{
    "dependencies": { "com.unity.package-1": "1.0.0", "com.unity.package-2": "2.0.0", "com.unity.package-3": "3.0.0" } }

 

Unity將每個項目清單存儲在[your_project_root_folder]/Packages/manifest.json文件中。

包清單

包管理器使用包清單(package.json)來確定要加載哪個版本的包,以及要在包管理器窗口中顯示哪些信息。

包清單支持以下值:

JSON類型 描述
name String 正式注冊的包名稱遵循以下命名慣例:"com.unity.[your package name]"。例如,"com.unity.resourcemanager"
displayName String Package Manager窗口中顯示的包名稱。例如,"Resource Manager"
version String 包版本"MAJOR.MINOR.PATCH"。Unity包遵循語義版本控制系統。例如,"1.3.0"
unity String 支持這個包的Unity版本。例如,"2018.1"表示從Unity版本2018.1開始的兼容性。
description String 包的簡要說明。這是出現在“包管理器”窗口的“詳細信息”窗格中的文本。支持一些特殊的格式化字符代碼,例如換行符(\n)和項目符號(\u25AA)。
keywords Array of Strings 用於在Package Manager窗口中搜索的關鍵字,指定為JSON字符串數組。例如,["Physics", "RigidBody", "Component"]
category String 此包所屬的類別。例如,"Forces"
dependencies Object 該包依賴的包列表,表示為JSON字典,其中鍵是包名,值是版本號。Unity會下載所有的依賴關系,並將它們與這個包一起加載到項目中。

package.json文件示例:

{
    "name": "com.unity.package-4", "displayName": "Package Number 4", "version": "2.5.1", "unity": "2018.1", "description": "This package provides X, Y, and Z. \n\nTo find out more, click the \"View Documentation\" link.", "keywords": ["key X", "key Y", "key Z"], "category": "Controllers", "dependencies": { "com.unity.package-1": "1.0.0", "com.unity.package-2": "2.0.0", "com.unity.package-3": "3.0.0" } }

Unity將每個包清單存儲在[your_package_root_folder]/package.json文件中。

包注冊表

Unity維護着可供分發的官方包的中央注冊表。Unity加載時,包管理器與注冊表進行通信,檢查項目清單文件,並在包管理器窗口中顯示每個可用包的狀態。

從項目中刪除包時,包管理器會更新項目清單,以便在In Project模式下將該包從列表中排除,但仍以All模式提供,因為它仍在注冊表中。

當你安裝或更新程序包時,程序包管理器會從注冊表中下載程序包。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM