创建Unity package Manager自定义管理的包

Unity包的layout约定,需要按照这个规范进行布局。具体的每个字段的含义可以查询官方文档

1、创建一个工程,取名叫ar_client_unity

2、右键点击PackagesàShow in Explorer,打开Packages所在的目录

3、在Packages目录下,创建你的包目录,目录名称建议遵循规范, com.<company-name>.xx, 比如Unity官方的包命名:com.unity.timeline

4、在com.huawei.arengine中添加package.json,各个字段的具体含义可以查看官方文档。格式为:

{

  "name": "com.huawei.arengine",

  "displayName": "AREngine XR Plugin",

  "version": "1.0.0",

  "unity": "2019.4",

  "description": "Provides native Huawei AREngine integration for use with Unity's multi-platform XR API.\nSupports the following features:\n-Efficient Background Rendering\n-Horizontal Planes\n-Depth Data\n-Anchors\n-Hit Testing\n-Occlusion",

  "keywords": [

    "arengine",

    "ar",

    "augmented",

    "xr",

    "reality",

    "core"

  ],

  "dependencies": {

    "com.unity.xr.arsubsystems": "4.1.1",

    "com.unity.xr.management": "3.2.16",

    "com.unity.modules.androidjni": "1.0.0"

  }

}

 

建议可以在其他的包中拷贝过来,然后进行修改,需要增加CHANGELOG.md、LICENSE.md、README.md等文件,返回的Unity界面。会自动的加载依赖包。

 

  1. 右键—>Create->Folder, 创建Runtime与Editor目录,在这2个目录下增加C#代码文件。

 

  1. 需要创建关联脚本,创建asmdef文件,此文件相当于.NET生态系统中的C#项目,必须在程序集定义文件中设置对其他程序集的显式引用(无论是在同一包中还是在外部包中)。在asmdef文件中可以配置一些跟平台相关的配置,如下图所示:

创建文件有约定的命名规范:

Store Editor-specific code under a root editor assembly definition file:

Editor/MyCompany.MyFeature.Editor.asmdef

Store runtime-specific code under a root runtime assembly definition file:

Runtime/MyCompany.MyFeature.Runtime.asmdef

Configure related test assemblies for your editor and runtime scripts:

Tests/Editor/MyCompany.MyFeature.Editor.Tests.asmdef

Tests/Runtime/MyCompany.MyFeature.Runtime.Tests.asmdef

创建文件方法:右键—>Create->Assembly Definition

这儿一定要注意,如果你的包依赖于一些其他的包,需要在asmdef中进行配置,我在开发的过程中发现一个问题,当我在vs中打开打开代码,引用了ARSubsystems了,但是表示引用不了,如下图所示:

解决办法为需要在asmdef文件中修改增加你依赖的包,最后点击apply,重新打开vs就可以引用了。

好了,包的文件基本都创建好了,就需要打包了,众所周知,Unity Package Manager加载包有3种方法,

1、加载本地包的方法,选择Add Package from disk, 然后选择我们刚才创建的那个包目录中的package.json文件就行了。

2、我们把刚才创建的包上传到github上,然后选择Add Package from git URL,输入你github的url地址就自动的加载进来了。

3、就是打成UPM包,上传到UPM的仓库上去,我在这就不谈了,当我使用到这个方法的时候我在专门写一篇博客。

参考文献:

https://docs.unity3d.com/Manual/CustomPackages.html

 

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
### 回答1: Unity Package Manager(UPM)是Unity游戏引擎中的一个工具,用于管理和安装Unity软件。它允许Unity开发者轻松地添加、更新和删除项目中的软件,而无需手动下载和导入它们。UPM支持从Unity官方源、私有源或Git存储库中安装软件,并提供与Unity Editor集成的UI界面。 使用UPM,开发者可以更轻松地管理项目中的依赖关系,并保持最新的软件版本。UPM还允许开发者创建自己的软件,并将其发布到Unity Asset Store或私有Git存储库中,以供其他人使用。 总的来说,UPM可以提高Unity开发的效率和可维护性,使开发者可以更专注于游戏的开发和创作。 ### 回答2: Unity Package ManagerUnity官方推出的一种工具,它提供了一个统一的界面来管理Unity项目中的所有软件括游戏、工具和插件,方便开发者快速、方便地查找、安装和升级所有的资源。 Unity Package Manager是面向Unity开发者的一种集成的资源管理器,含了各种开发过程中的插件、脚本以及依赖等等。Unity Package Manager使Unity开发者可以方便地将必要的外部依赖库集成到项目中,减少了引入外部类库的麻烦和复杂程序,提高了项目开发和管理的效率。 在Unity Package Manager中,开发者可以轻松地搜索、添加、删除、升级和管理所有软件,免去了手动下载、解压缩和拷贝文件的繁琐过程。此外,Unity Package Manager还提供了自动依赖解析和版本控制的工具,帮助开发者更好地维护项目和协作开发。 Unity Package Manager还提供了很多优秀的第三方插件和资源库,方便开发者快速获取各种工具和资源,满足不同开发和设计需要。开发者可以通过Unity Package Manager轻松获取和使用各种插件,如AR Foundation、Cinemachine、TextMeshPro、Post-processing、NodeCanvas等等,来实现更加高效和高效的开发流程。 总之,Unity Package ManagerUnity软件开发的一个重要工具,它提供了便捷的资源管理、库依赖和版本控制工具,帮助开发者更加高效地开发、测试和发布Unity游戏和应用程序。同时,Unity Package Manager的生态系统也不断扩展和完善,为Unity开发者提供更加丰富的资源和工具支持。 ### 回答3: Unity Package ManagerUnity 管理器)是 Unity 引擎中的一种工具,用于安装、升级和删除 Unity 资源和相关的注释文件。它的主要目的是帮助开发人员轻松管理他们的项目依赖和资源。 在过去,Unity 的软件开发人员需要一个一个地手动安装和管理每个资源和插件。这种方式往往非常耗时,而且容易发生冲突,导致项目出现错误。Unity Package Manager 的出现解决了这些问题,使得管理项目所需的工作量大大降低。 Unity Package Manager 有两个主要的部分:Package Manager UI 和 Package Manager Core。Package Manager UI 是 Unity 编辑器中的用户界面,可以在其中直接浏览和安装Package Manager Core 是实际负责管理过程的程序,处理所有的下载,安装和依赖关系。 通过 Unity Package Manager,开发人员可以通过 Unity 的 Asset Store 搜索和下载各种资源括游戏内容,插件和工具。此外,开发人员还可以直接将他们的自定义资源上传到 Unity Package Manager,使得其它开发人员可以轻松地集成这些资源到他们的项目中。 总之,Unity Package ManagerUnity 引擎中非常重要的一个工具,能够帮助开发人员在项目中轻松管理和集成各种资源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XR风云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值