找了一圈发现都是opengl,dx的。sdlrenderer的一个没有。这个renderer才是跨平台的啊,渲染封装到libsdl了,有没有gpu都能干活。
准备imgui和sdl
一。去www.libsdl.org左下角sdl releases列表找到最新版本
window下用SDL2-devel-2.30.1-mingw.zip,因为vc跨平台不优雅。
解压后有i686-w64-mingw32和x86_64-w64-mingw32二种cpu版本,我用w64
window下不用编译,官方提供了sdl2.dll,但ubuntu下官方没有提供,所以得自己编。
下载sdl代码SDL2-2.30.1.tar.gz解压到ubuntu上去。
解压后有INSTALL.txt,里边有说明
Linux and other UNIX systems:
* Run './configure; make; make install'
改权限,照着做,最后编译完成得到
这个libSDL2.a是个静链库,什么x11,Xcursor什么都被包含在里边
到此window下的libSDL2.dll和ubuntu下的libSDL2.a都有了,接下来搞imgui。
imgui使用sdlrenderer2做后台,测试代码还是用官方main
目录结构如下
Cmakelists如下
window下vscode记得选mingw进行编译
代码整个复制到ubuntu
window下运行
ubuntu下运行