xLua_001

xLua下载

1、HelloWrold 代码

cs 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using XLua;   // 引入XLua命名空间 

public class Helloworld01 : MonoBehaviour
{
    //声明LuaEnv对象  
    private LuaEnv luaenv;

    void Start()
    {
        //实例化LuaEnv对象
        luaenv = new LuaEnv();
        //执行lua代码 外面的双引号里面的是lua代码
        luaenv.DoString("print('Hello world')");
    }

    private void OnDestroy()
    {
        //释放LuaEnv对象
        luaenv.Dispose();
    }
}

输出结果:

2、环境管理规范

一个unity 项目最好只有一个 LuaEnv 实例

输出结果:

3、建立单独的Lua文件

单独的lua文件:

把lua程序放到resources文件夹里面,来加载这个程序,获取里面的字符串,把字符串当做一个参数放在C#文件中执行

  • resources文件中

引用脚本:

cs 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using XLua;   // 引入XLua命名空间 

public class Helloworld02 : MonoBehaviour
{

    void Start()
    {   
                                     //文件名:helloworld.lua.txt
        TextAsset ta = Resources.Load<TextAsset>("helloworld.lua");     
        LuaEnv env = new LuaEnv();
        env.DoString(ta.text);   // env.DoString(ta.ToString());
        env.Dispose();
    }
}

输出结果:

4、使用系统内置加载Lua的方式

5、自定义Loader

相关推荐
毛甘木4 小时前
Unity MonoPInvokeCallback 使用教程
c++·unity
心疼你的一切5 小时前
Unity开发Rokid应用之离线语音指令交互模型
android·开发语言·unity·游戏引擎·交互·lucene
Sator17 小时前
Unity使用OpenXR时,初始化失败的问题
unity·游戏引擎·vr
雨泽‎19 小时前
Unity在URP中开启后处理导致RenderTexture存在背景
unity·游戏引擎·图形渲染
冒泡P1 天前
【Unity】TextMeshPro富文本中使用精灵图集
ui·unity·c#·游戏引擎
世洋Blog1 天前
开发思想-(数据驱动+组合模式)VS 继承
unity·组合模式·数据驱动
B0URNE1 天前
【Unity基础详解】(9)Unity核心:UI系统
ui·unity·游戏引擎
jtymyxmz1 天前
《Unity Shader》7.3 渐变纹理
unity·游戏引擎
这人很懒没留下什么2 天前
SpringBoot2.7.4整合Oauth2
开发语言·lua
ThreePointsHeat2 天前
Unity 关于打包WebGL + jslib录制RenderTexture画面
unity·c#·webgl