HuldaGnodim 发表于 2022-4-8 10:58

Qt中嵌入Unity3D程序的方法

初始地址在这里
https://gist.github.com/jbltx/db1f4df72654e2b2339956758ee0ce34

自己新建QT项目要注意:
1: 由于用到Window32API,因此pro文件中需要
LIBS += User32.LIB
2:如果出现Unicode的编译问题,再添加
msvc{
    QMAKE_CFLAGS += /utf-8
    QMAKE_CXXFLAGS += /utf-8
}

核心思想是这句
    UnityWindow unityWindow("tg.exe", &mainWindow);
    splitter.addWidget(&unityWindow);

将你的Unity程序的Exe放在Qt程序输出的目录,或者找得到的地方。调用即可。
原则上外围的程序嵌入引擎渲染的部分,会较多代码,比如处理键盘鼠标事件等。但是这里貌似就用SendMessage转发搞定了。貌似会有些功能缺失。
我这边的效果预览图如下:
页: [1]
查看完整版本: Qt中嵌入Unity3D程序的方法