java 服务器 unity_服务器上的AssetBundle Unity

接受的答案是现场,但有一些细微的变化,因为Unity5.6现在也支持免费版本中的所有其他功能 . 我一直在研究一个需要动态构建资产包的类似项目 . 我将发布我的代码片段,以便将来识别这一过程变得更加简单 .

但在此之前,您可能需要考虑这个过程的一些限制 . 在 Cloud 上动态构建资产包需要(Command line)批处理模式,它在命令行上运行Unity(应该安装Unity来构建软件包) . 此资产构建过程仅适用于Windows和OSX( No Linux ) . 下面给出了以批处理模式调用Unity的命令,必须从Unity可执行文件的位置执行,

这个命令创建一个空项目,

Unity -batchmode -quit -createProject

创建项目后,您可以保存脚本以在Assets / Editor文件夹中构建资产,我编写了一个脚本来自动化为Assets / Models文件夹中的所有资产构建assetbundle的过程 .

//BuildAssets.cs

using System.Collections;

using System.Collections.Generic;

public class BuildAssets : UnityEngine.MonoBehaviour

{

static void BuildAssetBundle()

{

int i = 0;

string log = "log.txt";

string[] assetN;

int N_Files;

UnityEditor.AssetBundleBuild[] AssetMap = new UnityEditor.AssetBundleBuild[2];

AssetMap[0].assetBundleName = "res";

// Adding to path /Models

string path = UnityEngine.Application.dataPath + "/Models";

//log

System.IO.File.AppendAllText(log, System.DateTime.Now.ToString() + "\n\n");

System.IO.File.AppendAllText(log, path + "\n");

System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(path);

System.IO.FileInfo[] files = dir.GetFiles();

// Number of files in "/Models" folder

N_Files = files.Length;

//log

System.IO.File.AppendAllText(log, "Num assets: "+N_Files + " \n");

assetN = new string[N_Files];

foreach (System.IO.FileInfo file in files)

{

if (file.Exists)

{

if (!file.Extension.Equals(".meta"))

{

assetN[i] = "Assets/Resources/" + file.Name;

System.IO.File.AppendAllText(log, assetN[i] + " \n");

i += 1;

}

}

}

AssetMap[0].assetNames = assetN;

UnityEditor.BuildPipeline.BuildAssetBundles("Assets/AssetBundles", AssetMap, UnityEditor.BuildAssetBundleOptions.None, UnityEditor.BuildTarget.Android);

System.IO.File.AppendAllText(log, "\t----X----\n"); //log

}

}

这是通过命令行构建资产包的命令 .

Unity -batchmode -quit -projectPath path/to/UnityProjects/Projectname -executeMethod BuildAssets.BuildAssetBundle -logFile

我测试了这个,它适用于我们的项目 .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值