国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity中使用Xlua調(diào)用lua相關(guān)

這篇具有很好參考價(jià)值的文章主要介紹了Unity中使用Xlua調(diào)用lua相關(guān)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

//引用命名空間
using XLua;
public class L1 : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        //Lua解析器 讓我們?cè)赨nity中使用lua
        LuaEnv env = new LuaEnv();

        //執(zhí)行
        env.DoString("print('OK')");
        //執(zhí)行一個(gè)Lua腳本 在resource文件夾下
        env.DoString("require('Main')");
        //垃圾回收
        env.Tick();

        //銷毀Lua解析器
        env.Dispose();


    }
}

這樣只能讀取Resources文件夾下的腳本,但是我們做熱更新需要從AB包中讀取,所以需要自定義加載路徑

public class L2 : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        LuaEnv env = new LuaEnv();
        //XLua提供的路徑重定向方法
        //自定義加載Lua文件的規(guī)則
        env.AddLoader(MyLoader);

        env.DoString("require('Main')");
    }
    /// <summary>
    /// 
    /// </summary>
    /// <param name="filePath">Lua腳本文件名</param>
    /// <returns></returns>
    private byte[] MyLoader(ref string filePath)
    {
        //在這里自定義加載邏輯
        string path = Application.dataPath + "/Lua/" + filePath + ".lua";
        //得到路徑后加載文件
        //引用命名空間
        if (File.Exists(path))
        {
            return File.ReadAllBytes(path);
        }
        else
        {
            print("MyLoader加載失敗,文件名為"+path);
            return null;
        }
    }
}

require尋找文件的邏輯是,先找AddLoader中自定義的路徑(可以有多個(gè)路徑)中有沒有相應(yīng)文件,再去Resources下查找文章來源地址http://www.zghlxwxcb.cn/news/detail-717949.html

到了這里,關(guān)于Unity中使用Xlua調(diào)用lua相關(guān)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • [游戲開發(fā)][Unity] Xlua與C#互相調(diào)用規(guī)則

    [游戲開發(fā)][Unity] Xlua與C#互相調(diào)用規(guī)則

    靜態(tài)方法無需獲取類對(duì)象,獲取到類直接執(zhí)行 例1: 例2 調(diào)用非靜態(tài)方法一定要獲取到具體的C#類對(duì)象?。?! 例1:獲取單例對(duì)象并調(diào)用非靜態(tài)方法,Singleton是單例的一種寫法,網(wǎng)上源碼很多 下面是Lua調(diào)用C#的代碼,我這是模擬Xlua的工程,以類的方式實(shí)現(xiàn)交互 看Log日志發(fā)現(xiàn):

    2024年02月07日
    瀏覽(33)
  • 【Lua in Unity】詳解與和C#互相調(diào)用示例

    目錄 Lua在Unity中的主要作用 如何創(chuàng)建 Lua與C#互相調(diào)用 C#和Lua的使用場(chǎng)景區(qū)分 完整示例 游戲邏輯編寫:Lua可以作為一種腳本語言,用于游戲中的邏輯編寫,例如定義游戲角色的行為、AI邏輯,處理游戲的戰(zhàn)斗邏輯和流程控制,等等??梢詫ua代碼通過Unity的API來實(shí)現(xiàn)與引擎的交

    2024年02月11日
    瀏覽(31)
  • 【Unity】xLua及熱更新

    【Unity】xLua及熱更新

    ????????本文主要講xLua的基本使用??赐暧袀€(gè)基本認(rèn)識(shí)還是可以了,簡(jiǎn)單的熱更操作還是可以做到的,但更多細(xì)節(jié)內(nèi)容依舊需要從官方文檔中了解、學(xué)習(xí)。 ????????xLua是由騰訊維護(hù)的一個(gè)開源項(xiàng)目,我們也可以將其看做一個(gè)插件。xLua為Unity、 .Net、 Mono等C#環(huán)境增加L

    2024年02月03日
    瀏覽(17)
  • unity打造基于xLua熱更新框架

    xLua是一款基于Lua的熱更新框架,它可以在游戲運(yùn)行時(shí)動(dòng)態(tài)加載Lua腳本,實(shí)現(xiàn)游戲邏輯的更新。在使用xLua框架之前,我們需要先了解一些基礎(chǔ)知識(shí)。 對(duì)啦!這里有個(gè)游戲開發(fā)交流小組里面聚集了一幫熱愛學(xué)習(xí)游戲的零基礎(chǔ)小白,也有一些正在從事游戲開發(fā)的技術(shù)大佬,歡迎你

    2024年02月16日
    瀏覽(18)
  • Unity HybridCLR + Xlua + Addressable 要點(diǎn)記要

    Unity HybridCLR + Xlua + Addressable 要點(diǎn)記要

    老工程原本是C#,想做熱更,于是接入了Xlua和Addressable。由于工程老,人手也不夠,只是新代碼使用Xlua,老功能(尤其是核心戰(zhàn)斗還是C#)。大半年后覺得并不能達(dá)到預(yù)期需求。于是通過再接入Hybrid來解決最終問題。 HybridCLR 的接入,以及原理這里就不重復(fù)說明了,在官網(wǎng)上有

    2024年02月09日
    瀏覽(25)
  • Unity xLua開發(fā)環(huán)境搭建與基礎(chǔ)進(jìn)階

    Unity xLua開發(fā)環(huán)境搭建與基礎(chǔ)進(jìn)階

    Unity是一款非常流行的游戲開發(fā)引擎,而xLua是一個(gè)為Unity開發(fā)者提供的Lua框架,可以讓開發(fā)者使用Lua語言來進(jìn)行游戲開發(fā)。在本文中,我們將介紹如何搭建Unity xLua開發(fā)環(huán)境,并進(jìn)行基礎(chǔ)進(jìn)階的學(xué)習(xí)。 環(huán)境搭建 首先,我們需要下載xLua框架,可以在GitHub上找到最新的版本。下載

    2024年02月22日
    瀏覽(94)
  • Unity Xlua熱更新技術(shù)學(xué)習(xí)指南

    Unity Xlua熱更新技術(shù)學(xué)習(xí)指南

    熱更新是商業(yè)網(wǎng)絡(luò)游戲必不可少的一項(xiàng)技術(shù),而基于lua的熱更新技術(shù)又是Unity商業(yè)網(wǎng)游項(xiàng)目中的一個(gè)主流選擇。 部分同學(xué)近期表示自己在面試中被面試官提問熱更新相關(guān)知識(shí),但由于對(duì)熱更新能力有所缺失,最后遺憾的與心儀工作失之交臂。 由此可見,還是有一部分同學(xué)不了

    2024年04月23日
    瀏覽(24)
  • Unity3D xLua開發(fā)環(huán)境搭建詳解

    xLua是一種基于Lua語言的開發(fā)框架,可以幫助開發(fā)者在Unity3D中使用Lua腳本來開發(fā)游戲。 對(duì)惹,這里有一 個(gè)游戲開發(fā)交流小組 ,希望大家可以點(diǎn)擊進(jìn)來一起交流一下開發(fā)經(jīng)驗(yàn)呀! 在本文中,我們將詳細(xì)介紹如何搭建Unity3D xLua開發(fā)環(huán)境,包括安裝Unity3D和xLua插件,配置環(huán)境變量

    2024年02月22日
    瀏覽(26)
  • VsCode使用EmmyLua插件調(diào)試Unity工程Lua代碼

    VsCode使用EmmyLua插件調(diào)試Unity工程Lua代碼

    一、VSCode安裝EmmyLua ?二、添加配置文件 三、設(shè)置配置文件 執(zhí)行完第二步會(huì)彈出添加好的launch.json配置文件,這個(gè)文件只需要修改“ideConnectDebugger” = false,其他一般不用修改。 ? ?四、添加Lua斷點(diǎn)調(diào)試入口 luaEnv變量必須為全局唯一 路徑標(biāo)紅的地方配上你的正確路徑名 var p

    2024年02月13日
    瀏覽(24)
  • Unity中如何使用Rider調(diào)試C#和lua代碼

    Unity中如何使用Rider調(diào)試C#和lua代碼

    工作中經(jīng)常需要調(diào)試lua代碼,之前使用VS調(diào)試C#代碼,使用Intellij Idea來調(diào)試lua代碼,這樣其實(shí)比較麻煩,所以查了一下,可以直接使用Rider來統(tǒng)一的調(diào)試C#和lua代碼 Rider下載:Rider官網(wǎng)下載,根據(jù)需要選擇對(duì)應(yīng)的版本,建議使用Rider2020.1.0,參考鏈接 打開Unity,在preference中設(shè)置為

    2023年04月13日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包