在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

[插件脚本] UE4 lib插件开发

泰***发布 已通过手机认证
任务编号:5218509 悬赏任务4100元 悬赏任务 : 按雇主需求进行任务后提交稿件,被采纳后即获得佣金。

UE4 lib插件开发

距截止: 任务已圆满完成 雇主已托管赏金:4100
雇主发布需求 雇主托管佣金 服务商投稿 雇主开始选稿 任务完成

任务大厅共需1个合格投稿 | 每稿将获得4100| 每人交稿次数不限 可多次任务

投诉举报 联系Ta 我来承接 已有1 个投稿 | 已采纳1 稿 | 拒绝0 稿 | 目前中标名额已满

任务需求:
根据现有C++的属性树lib库,编译UE4所用蓝图库。版本是4.19和4.25。
Lib库文件目录如下:

代码调用示例如下:

#include <iostream>
#include <Main/globals.hxx>

#include <Scripting/NasalSys.hxx>
#include <LuaScripting/LuaSys.hxx>
#include <simgear/lua/lua.hpp>

//分系统模块
class MgrTest : public SGSubsystem
{
public:
MgrTest() {};
virtual ~MgrTest() {};

void init() {};
void bind() {};
void unbind() {};
void update(double dt) {
std::cout << "分系统模块更新函数" << std::endl;
};
private:
};

//属性树简监听器
class TestListener : public SGPropertyChangeListener {
public:
virtual void valueChanged(SGPropertyNode* node) {
std::cout << "属性值被改变:"<< node->getFloatValue() << std::endl;
}
};
int main()
{
//初始化全局控制系统
globals = new FGGlobals;
//写入属性树值
const char* treeTest ="fdm/oops/test";
globals->get_props()->setFloatValue(treeTest, 200);
//获开属性树值
float ret=globals->get_props()->getFloatValue(treeTest);
//往属性树添加监听器,无节点时候创建该节点
globals->get_props()->getNode(treeTest, true)->addChangeListener(new TestListener);
//写入值,触发监听器运行
globals->get_props()->setFloatValue(treeTest, 402);
//分系统注册和运算更新
globals->get_subsystem_mgr()->add("MgrTest", new MgrTest);
//运行LUA系统模块
globals->get_subsystem_mgr()->add("MGLuaSys", new MGLuaSys);
globals->get_subsystem_mgr()->bind(); //优先运行
globals->get_subsystem_mgr()->init();//优先运行
globals->get_subsystem_mgr()->update(0.0);//每帧运行



std::cout << ret << std::endl;
}

需要将属性树读取、写入、初始化、创建、监听等函数制作为蓝图节点,方便蓝图程序调用。

使用道具 举报

全部参与1

已采纳

使用道具 举报

发新帖
国内首家创新型IT技术需求众包服务平台,软件需求就上天盟网! 立即登录 立即注册