功能简介
bklua基于 VS Code 开发的 beautykit特效lua脚本编辑调试工具。支持windows、macos。目前主要提供以下功能:
- beautykit引擎中lua脚本调试器(debugger)
- lua代码补全(code completion)
安装
- 在线安装:在vscode插件界面,输入BeautykitScriptingTools,搜索安装。
- 离线安装:在vscode插件界面,点击右上角“…”,在弹出菜单中选择”从VSIX安装”,选择vsix插件进行安装.
使用
vscode
- 创建项目: 使用vscode打开一个文件夹,然后在vscode资源管理器界面右键,点击“初始化BK特效项目”菜单,插件会自动创建项目初始文件。
- 编辑脚本: 在vscode中编辑项目中的lua文件,插件自动启动代码补全,定义跳转,格式化等编辑辅助功能。
- 调试lua: 使用vscode左侧调试面板里的调试按钮,启动预览模块,自动加载特效模块,并在断点处中断,此时可通过左侧变量视图、监视视图、调用堆栈视图、断点视图使用相应的调试功能。
- pc端调试: 在调试面板,选择local选项,点击三角形按钮,或使用默认调试快捷键F5,启动调试。
- 移动端调试: 使用手机端远程调试,首先需要在移动端程序里面打包LuaPanda.lua文件(或者通过特效同步功能,可以自动在项目文件夹生成lLuaPanda.lua文件),并启动调试功能,代码如下(以android端为例):
mBKCustomCollectionEffect.setLuaDebuggerEnable(true);
然后在vscode端选择bklua:remote调试配置,并按F5启动调试。
- 特效同步:主要用于移动端调试同步特效文件,可以在移动端加载调试特效模块之前,等待vscode端同步相应的特效项目文件。
BKRenderWrapper renderWrapper = new BKRenderWrapper(context);
HBKCustomCollectionEffect remoteEffect = renderWrapper.createCustomCollectionEffectWithGroupName("remote_effect");
String path = "/storage/emulated/0/Android/data/com.stoneus.bksimple/files/resources/AR/remote_debug";
//这里也可以使用同步阻塞的接口waitRemoteEffectFileSync
int port = remoteEffect.waitRemoteEffectFileAsync(path,9920,new HBKCallback1() {
@Override
public void hbkcallback(String str, int param) {
if(param != 0){
Log.i("remote_effect_debug", str);
//此处可以进行加载特效的后续流程
}
}
});
beautykit预览程序
- 启动预览程序支持-h查看参数说明(下面参数可能会随版本有所调整)。
usage: light_render.exe [options] ...
options:
-t, --title 窗口标题
-w, --width 窗口宽度
-h, --height 窗口高度
-c, --camera 启动摄像头
-f, --fps 帧率设置
-r, --retina 视网膜屏幕
-d, --debug 开启调试
-q, --debuggerdir 调试器路径
-i, --ip 远程调试ip
-p, --port 远程调试端口
-a, --asclient 作为客户端调试
-e, --effect 特效模块路径
-?, --help 帮助
构建
环境搭建
- 安装vscode
- 安装Node.js
- 安装打包工具:npm i vsce -g
- 登录vscode发布者账号:vsce login your-publisher-name (待公司注册微软账号),登录须输入令牌,令牌在微软账号里创建。
编译及打包
- 下载依赖包:npm install
- 发布到市场:vsce publish
- 打离线包:vsce package -o ./vsix
发布自动构建系统编译的插件
环境搭建
- 安装node.js环境.
- 安装vsce插件:npm install -g vsce
- 登录微软开发发布者账号: vsce login alexleo ->输入令牌(找刘成申请令牌)
发布插件
- 修改package.json中version字段,修改CHANGELOG.md中更新说明,提交git。因为发布插件不允许发布相同版本号插件。
- 使用构建系统中流水线Beautykit-Lua-VSC-Pipeline构建。
- 下载构建系统Beautykit-LuaDebug-VSC项目构建完成的包,解压获取到实际插件.vsix文件。
- 使用vsce插件发布插件vsce publish --packagePath ./vsix/beautykitscriptingtools-1.3.11.vsix(此处使用实际vsix路径)。