U3D中的package

  1. 打开 Unity 编辑器。

  2. 点击菜单栏:Window > Package Manager

  3. 点击左上角的 +,选择 Add package by name

  4. 输入:

    • Name: com.unity.nuget.newtonsoft-json

    • Version: 3.0.2(或最新版本)

  5. 点击 Add 安装即可。

方法二:手动修改 manifest.json方法二:手动修改 manifest.json

打开 Packages/manifest.json 文件,在 dependencies 中添加:

JSON

复制

"com.unity.nuget.newtonsoft-json": "3.0.2"

保存后返回 Unity,会自动拉取并安装该包。

https://github.com/applejag/Newtonsoft.Json-for-Unity

using Newtonsoft.Json;


[System.Serializable]
public class TestData
{
    public int aa;
    public string bb;
}

string dataAsJson = PlayerPrefs.GetString("testdata");
data = JsonConvert.DeserializeObject<TestData>(dataAsJson);
string json = JsonConvert.SerializeObject(myObject);

UnityU3D)中,`PackageCache` 文件夹有着重要的作用。它是Unity用来存储从Unity Package Manager下载的所有包的本地缓存目录。当使用Unity Package Manager安装、更新或管理包时,这些包会被下载并存储在 `PackageCache` 目录下。 从引用内容来看,通过 `Path.GetFullPath("Packages/" + 对应的包名)` 可以获取包所在的绝对路径,例如 `Path.GetFullPath("Packages/com.unity.ugui")` 能得到类似 `D:\UnityProject\LearnUnity\Library\PackageCache\com.unity.ugui@1.0.0` 的路径,这表明 `PackageCache` 存储了具体的包文件,并且以包名和版本号的形式进行组织,方便管理和识别不同版本的包 [^1]。 `PackageCache` 的存在使得在项目中可以方便地引用和使用这些包中的资源。例如,可以使用 `AssetDatabase.LoadAssetAtPath<Texture2D>("Packages/包名/资源相对路径")` 来加载 `PackageCache` 中对应包文件夹下的资源,像 `AssetDatabase.LoadAssetAtPath<Texture2D>("Packages/com.unity.textmeshpro/Editor Resources/Textures/btn_AlignBottom_Light.psd")` 就可以加载相应的纹理资源 [^1]。 此外,当项目中出现与包相关的错误时,错误信息中也会涉及到 `PackageCache` 目录下的文件,如 `Remove Library\PackageCache\com.unity.textmeshpro@3.0.4\Scripts\Editor\TMP_PackageUtilities.cs(1007,84)` 和 `Library\PackageCache\com.unity.shadergraph@14.0.9\Editor\Generation\Targets\BuiltIn\Editor\ShaderGUI\MaterialAssemblyReference\RawRenderQueue.cs(12,24)` ,这进一步说明了 `PackageCache` 是存储和管理项目所依赖包的重要位置 [^3][^4]。 ### 代码示例 ```csharp using System.IO; using UnityEditor; using UnityEngine; public class PackageResourceLoader { public static void LoadPackageResource() { string packageName = "com.unity.textmeshpro"; string resourcePath = "Editor Resources/Textures/btn_AlignBottom_Light.psd"; // 获取包的绝对路径 string packageAbsolutePath = Path.GetFullPath("Packages/" + packageName); Debug.Log("Package Absolute Path: " + packageAbsolutePath); // 加载包内资源 Texture2D texture = AssetDatabase.LoadAssetAtPath<Texture2D>("Packages/" + packageName + "/" + resourcePath); if (texture != null) { Debug.Log("Resource loaded successfully."); } else { Debug.Log("Failed to load resource."); } } } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值