热部署配置 lua_AssetBundle和XLua热更新教程(简单详细)

本文详细介绍了使用XLua进行热更新的配置过程,包括XLua环境配置、AssetBundle资源打包、lua补丁脚本创建、本地测试服务器搭建以及测试Demo的运行。通过实例演示了如何实现点击创建对象从Cube变为Sphere的热更新效果。
摘要由CSDN通过智能技术生成

d82bfe6288078a1e2e203999fc949871.png

前言

Unity版本:Version 2018.4.2

这里首先需要我们掌握了XLua的基本知识,具体教程文档可以去GitHub - XLua看看。

大概思路:标记需要热更的资源,打包构建AssetBundle资源(包括lua脚本),上传到服务器,客户端通过服务器下载读取AssetBundle资源,执行lua脚本即可。

这里的测试 Demo 运行时 点击鼠标左键原本应该是创建的Cube,通过热更新 成功后,应该是创建一个 红色的Sphere

实践

一. Xlua及其HotFix的环境配置

  1. 到 GitHub - XLua 下载最新版本的xlua工程,解压并复制该文件中的 Tools文件夹工程根目录 下 , Assets 下的 Plugins、XLua文件夹工程对应的Assets
  2. 打开HotFix的宏。在Unity菜单栏找到File -> Build Setting -> Player Setting ->Scriptsing Define Symbols ,在里面输入宏 HOTFIX_ENABLE,按ENTER后,Unity后台会编译一下。编译过后会在编译器XLua下面多一个“Hotfix Inject in Editor”(XLua -> Hotfix Inject in Editor)。

二. 创建一个打包AssetBundle资源的脚本并放在Editor文件夹下

BuildAssetBundles.cs 脚本如下:

using System.Net;
using UnityEditor;
using System.IO;
using System;
//-----------------------------【构建AssetBundles资源包】-----------------------------
public class BuildAssetBundles
{
    
    // 菜单选项目录
    [MenuItem("Assets/Build AssetBundles")]
    static public void BuildAllAssetBundles()
    {
    
        // 创建文件目录
        string dir = "AssetBundles";
        if (!Directory.Exists(dir))
        {
    
            Directory.CreateDirectory(dir);
        }
        // 构建
        // 参数1:路径
        // 参数2:压缩算法,none 默认
        // 参数3:设备参数,ios,Android,windows等等
        BuildPipeline.BuildAssetBundles(dir, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows64);
        UnityEngine.Debug.Log("AssetBundle资源打包完成!");
    }
}

此时可以在 编辑器菜单栏中看到 Asset -> Build AssetBundles 按钮。

三. 创建Demo场景及其资源脚本

首先创建一个基本的UI界面,有一个Button、Slider 和 Text 就行,用来显示热更新进度。

例如:

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值