日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

UE4 + UnLua + VSCode + LuaPanda调试

發布時間:2025/3/15 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UE4 + UnLua + VSCode + LuaPanda调试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

虛幻4 UnLua調試教程

  • 0、寫在前面
  • 1、下載所需環境
    • UnLua
      • UnLua簡述
      • 查看UnLua中的Lua版本
    • Lua
    • LuaSocket
    • LuaPanda
  • 整理
    • 已準備的環境
    • 調試

0、寫在前面

本次教程,使用的demo為UnLua提供。下載UnLua源碼后,解壓出來的就是UnLua的demo工程了。

1、下載所需環境

UnLua

下載unlua:unlua倉庫

UnLua簡述

UnLua是由Tencent提供的,是針對虛幻運行Lua的解決方案。

查看UnLua中的Lua版本

由于后續需要編譯LuaSocket,因此在此需要知道UnLua所用的Lua版本是多少。

步驟:

  • 解壓UnLua,打開uproject工程。
  • 在任意的關卡中,例如:Tutorials/HelloWorld關卡,在Script/Tutorials目錄下找到01_HelloWorld.lua,修改腳本如下。
  • 運行游戲,查看控制臺中Lua的版本(非常關鍵)
  • require "UnLua"local Screen = require "Tutorials.Screen"local M = Class()-- 所有綁定到Lua的對象初始化時都會調用Initialize的實例方法 function M:Initialize()print("unlua version ===> ".._VERSION)local msg = [[Welcome to zzw Unreal!]]print(msg)Screen.Print(msg) endreturn M

    Lua

  • 下載Lua環境:Lua下載官網,需要與UnLua版本一致。
  • 編譯Lua的動態庫和靜態庫,此步驟自己搜索教程。
  • LuaSocket

  • 下載LuaSocket環境:LuaSocket倉庫。
  • 使用剛剛編譯過的Lua(要Lua版本和UnLua的版本是一致的)去編譯LuaSocket。這里的坑比較多,可能會遇到UnLua版本比較高,而LuaSocket版本較低等一系列的問題。
  • LuaPanda

  • 下載LuaPanda代碼:LuaPanda倉庫。
  • 在VSCode中安裝LuaPanda插件。
  • 將LuaPanda倉庫中Debugger/LuaPanda.lua文件拷貝到與demo中的Script/UnLua.lua同級。
  • 插件的launch.json配置如下:

    {"version": "0.2.0","configurations": [{"type": "lua","request": "launch","tag": "normal","name": "LuaPanda","description": "通用模式,通常調試項目請選擇此模式 | launchVer:3.2.0","cwd": "${workspaceFolder}","luaFileExtension": "","connectionPort": 8818,"stopOnEntry": false,"useCHook": true,"autoPathMode": true},{"type": "lua","request": "launch","tag": "independent_file","name": "LuaPanda-IndependentFile","description": "獨立文件調試模式,使用前請參考文檔","luaPath": "","packagePath": [],"luaFileExtension": "","connectionPort": 8820,"stopOnEntry": true,"useCHook": true}] }

    整理

    已準備的環境

  • Lua的靜態庫和動態庫以及頭,并且Lua的版本與UnLua版本保持一致。
  • LuaSocket編譯出來的socket文件夾下的core,此socket版本與UnLua版本保持一致。
  • VSCode已經配置好LuaPanda環境。
  • UnLua的demo中的LuaPanda.lua與UnLua.lua同級。
  • 調試

  • 將LuaSocket編譯出來的socket文件目錄拷貝到一個比較方便的地方,例如:D:/luasocket目錄下。
  • 在需要被調試的lua文件中加入:package.cpath = package.cpath .. ";D:/luasocket/?.dll"和require("LuaPanda").start("127.0.0.1",8818)。筆者是將這兩行直接寫入到UnLua.lua文件的首部。
  • 與50位技術專家面對面20年技術見證,附贈技術全景圖

    總結

    以上是生活随笔為你收集整理的UE4 + UnLua + VSCode + LuaPanda调试的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。