职位ID:107167

UE4 lib插件开发

  • 合作方式:
  • 项目制 全国远程
  • 预估日薪:
  • 1000
  • 预估总价:
  • 2000元
  • 预估工时:
  • 2天
  • 所在区域:
  • 全国远程

需求描述

根据现有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;
}

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

投递职位 已有9人投递,发布人 点此登录 后查看。

信用行为

  • 发布项目
    2
  • 订单总数
    1
  • 退款单数
    0

完善简历

工程师完善技术能力和项目经验,更易接到订单

发布任务

企业点击发布任务,工程师会在任务下报名,招聘专员也会在1小时内与您联系,1小时内精准确定人才

微信客服

需求方请加聘用方端客服沟通需求,工程师请加工程师端客服浏览推送职位

聘用方端客服
工程师端客服
联系聘用方端客服