CEGUI全称Crazy Eddie's GUI System,Logo是一个疯狂的科学家,它是一款很强大的游戏GUI工具,同时也是Ogre游戏引擎默认的GUI工具。这回我将使用VS2010来尝试构建CEGUI0.8.3。
原创文章,反对未声明的引用。原博客地址:http://blog.csdn.net/gamesdev/article/details/21552115
首先去下载CEGUI以及CEGUI依赖的库。CEGUI官网下载地址:这里。去下载Source Package和Dependencies(Windows / Apple OS X Only),我自己也共享一份,图个方便嘛:
下载后解压文件到一个不含中文名的目录下,这里我选择了E:/Develop
然后打开cmake-2.8.12.1-win32-x86/bin/cmake-gui.exe,首先构建cegui-deps-0.8.x-src,并设置VS2010的编译器,如下图:
随后进入configure阶段,configure成功后点击Generate按钮即可产生VS2010项目文件了。
打开VS2010,使用Ctrl+Shift+O打开CEGUI-DEPS解决方案(.sln)文件,选择MinSizeRel方式进行构建,保证产生的lib和dll文件最小(话说cmake生成的Makefile若不采用MinSizeRel的话,产生的二进制文件大得离谱)。成功后,关闭项目,将生成的dependencies文件夹从E:/Develop/cegui-deps-0.8.x-src复制到E:/Develop/cegui-0.8.3中。
同样的方法用于cegui-0.8.3。下面是设置的截图:
这里有一个问题,因为CEGUI默认的XML解析器并没有设置,我们需要手动设置,这里采用的是CEGUI默认的expatXML解析器,也就是设置CEGUI_BUILD_XMLPARSER_EXPAT为checked。
如果要采用Irrlicht作为CEGUI的渲染框架,那么需要设置一些环境变量,下面是如何设置Irrlicht为CEGUI的渲染框架,同样的方法还可以让CEGUI采用OpenGL、OpenGL3、Direct3D11来进行渲染。
当configure和generate都成功后,就可以关闭cmake-gui了。打开VS2010,对cegui项目进行构建。下面是VS2010的截图:
如果在编译的过程中出现无法打开头文件以及无法链接到库的情况,那么可能cmake的路径没有设好。其实很多编译不成功的问题都来自于没有设置好路径。那么在Visual Studio里面的每一个项目中设置路径就能够顺利地编译了。
此外如果编译过程中出现“常量中含有换行符”提示,那是因为字符编码格式可能不一样,我的做法是将有问题的字符串后面添加一个空格,这样的话就不会报类似的错误了,结果也不影响显示。
生成完毕后,将dependencies/bin里面的文件全部复制到bin中,即可顺利运行CEGUISampleFramework-0.8.exe浏览CEGUI的例子。
后记:可能是静态编译这一块不太完善,我测试了很多次的静态编译,但总是出现链接的错误,真是非常难以解决,如果大家对CEGUI静态编译这一块有经验,希望留言告知之。