三、【易 AI】Live2d 移植 QT

且举世誉之而不加劝,举世非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。

——《逍遥游·北冥有鱼》庄周

零、文件清单(Release X64环境)

文件源于官方 SDK 、生成的 Demo 项目、以及操作系统,

1、系统库

需要找到项目生成的四个库以及对应的头文件,Framework.lib、glew32.lib、glfw3.lib、libglew32.lib,

1.1、Framework

Framework 库把 src 下 .hpp .cpp 文件以及文件夹全部拷贝,

1.2、GLFW 与 GLEW

注意保留 GLFW 目录,

注意保留 GL 目录,

2、官方库

官方 SDK 提供的 Core 库(D:\CubismSdkForNative-4-r.7\Core\lib),根据生成项目时选择 MD 或者 MT,

2.1、Core

Live2DCubismCore_MT.lib、Live2DCubismCore_MTd.lib,

备注:v143是Vs2022,v142是Vs2019,v141是Vs2017,

3、系统库

从项目->属性->链接器中,可以看到项目需要引入的系统库,

Framework\Release\Framework.lib
glfw\src\Release\glfw3.lib
opengl32.lib
glu32.lib
-NODEFAULTLIB:libcmt.lib
D:\CubismSdkForNative-4-r.7\Samples\OpenGL\Demo\proj.win.cmake\..\..\..\..\Core\lib\windows\x86_64\143\Live2DCubismCore_MT.lib
lib\Release\libglew32.lib
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
comdlg32.lib
advapi32.lib

主要需要引用下面这五个库,

opengl32.lib
glu32.lib
kernel32.lib
user32.lib
gdi32.lib

4、第三方库

stb_image.h,

5、源代码

Demo 下的源代码,包括头文件,

源代码统一打包到 live2d 文件夹下,

6、文件清单

整合好的文件清单目录结构如下,

├───inc
│   ├───Core
│   ├───Framework
│   │   ├───Effect
│   │   ├───Id
│   │   ├───Math
│   │   ├───Model
│   │   ├───Motion
│   │   ├───Physics
│   │   ├───Rendering
│   │   │   ├───Cocos2d
│   │   │   ├───D3D11
│   │   │   ├───D3D9
│   │   │   ├───Metal
│   │   │   └───OpenGL
│   │   ├───Type
│   │   └───Utils
│   ├───GL
│   ├───GLFW
│   └───stb
├───libs_debug
│   ├───Core
│   │   └───lib
│   │       └───windows
│   │           └───x86_64
│   │               └───142
│   ├───Framework
│   │   └───lib
│   ├───GL
│   │   └───lib
│   └───GLFW
│       └───lib
├───libs_release
│   ├───Core
│   │   └───lib
│   │       └───windows
│   │           └───x86_64
│   │               └───142
│   ├───Framework
│   │   └───lib
│   ├───GL
│   │   └───lib
│   └───GLFW
│       └───lib
└───live2d

一、移植思路

QT 封装了 OpenGL 类 QOpenGLWidget、QOpenGLWindow,我们通过自定义实现该类将模型渲染到自定义的窗口上,

二、QOpenGLWidget

1、QT 工程

注意这里编译器使用 MSVC 对应的版本,

2、配置 QT

配置文件清单里面的链接库、源文件、头文件,

在 mainwindow.h 中手动链接系统库,

#pragma comment(lib, "kernel32.lib")
#pragma comment(lib, "user32.lib")
#pragma comment(lib, "gdi32.l
  • 26
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

余衫马

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值