XLua热更新
文章平均质量分 84
LixiSchool
这个作者很懒,什么都没留下…
展开
-
xLua笔记(热更新框架设计之Xlua基础)
热 更新的 基本原理 C#脚本不能直接热更新的原因:下载的图片与模型都没有问题,如果是Unity逻辑代码,无论是以前的Mono AOT 还是后面的il2cpp , 都是编译成native code, IOS下是运行不起来的。 解决方法就是不用native code ,改为解释执行。包括Xlua在内所有热更新就是这个思路来实现。 Xlua插件的GitHub 下...原创 2018-11-27 14:59:58 · 3832 阅读 · 0 评论 -
Unity热更新_lua实体类
--编号 标题 状态 描述内容DataTableEntity = {Id = 0, Title = "", Status=0, Content=""}--这句是重定义元表的索引,就是说有了这句,这个才是一个类。DataTableEntity.__index = DataTableEntity--构造体,构造体的名字是随便起的,习惯性改为New()function Dat...原创 2019-08-08 14:15:59 · 154 阅读 · 0 评论 -
Unity热更新_Lua写的UI窗口控制类和视图类
一个UI窗口的 控制器类和视图类用 Lua 来写的话,应该如何对应上呢?如果某个窗口的控制器类叫:MessageCtrl 它对应的视图类叫:MessageView--首先外界调用MessageCtrl.New()函数持有这个脚本的引用--其次外界通过调用MessageCtrl.Awake()函数加载ui窗口--最后加载出来的ui窗口会对应上Mes...原创 2019-08-08 15:50:20 · 1071 阅读 · 1 评论 -
Unity热更新_Unity调用Lua脚本
使用的lua插件是:XLua1.与 lua通信首先要先把所有的lua脚本初始化加载进来2.执行 lua的启动脚本GameInit.lua,在这个启动脚本里会执行相关的lua调用GameInit.Init(),例如:初始化3.在lua脚本GameInit的启动函数里加载UI窗口加载,执行lua的LuaManager脚本,如下:using UnityEngine;usin...原创 2019-08-08 17:18:08 · 354 阅读 · 0 评论 -
Unity热更新_Lua中使用DOTween插件
要想在Lua中使用DOTween插件,必须把在 Lua中会使用到的DOTween类型经过下面处理,其实就是增加这么一个类型就行,如果不这样做,则在lua中调用到DOTween Api的时候会出错:using System;using System.Collections.Generic;using System.Linq;using System.Reflection;usin...原创 2019-08-09 10:28:04 · 2235 阅读 · 1 评论 -
Unity热更新_lua文件自动获取常用的unity生命周期函数
主要功能:使得"UI预设"同名的lua文件,自动获取常用的unity生命周期函数(eg:Awake()、Start()、Update()....)详细描述:使用委托技术,与特定的(lua文件)lua函数,进行映射。C#代码:/*** * * Title: “纯lua框架”,C#与lua文件映射调用 * ...原创 2019-08-12 15:14:11 · 555 阅读 · 0 评论