在cocos2dx3.15中引入FairyGUI的运行库,修改部分FairGUI运行库源代码以便成功编译。
1:先下载运行库:https://github.com/fairygui/FairyGUI-cocos2dx/projects
还有coocs2dx-3.15;
注意,fairGUI必须支持3.14以上的,我推荐就是3.15以上。
很多都是需要自己调整的,而且他的Example项目的配置和你也可能很不一样。所以不要过于依赖他的项目配置,自己新建项目;自行配置各种要点。
1.1:先修改一下:
打开fairgui的目录的readme,然后看到下面,照着做就可以了。
就是修改virtual void updateBMFontScale();
其他的不用管,就修改这个就行。
1.2:继续修改:那个GLoader3D.cpp文件;
找到GLoader3D::onChangeSpine
然后注释掉这个方法的代码;这个方法有些bug。这是spine模块的;
不过现在不需要。
2:用cocos new搞一个lua项目或者C++,具体看看命令行即可。
至于减少编译时间只需要搞对应的lib,dll复制过来,
或者直接干脆就编译一下吧。记得,必须用VS2015以上!
注意,先编译好,再看下面
3:下面是重点了。
3.1:
把fairgui文件拷贝到
C:\你的VS项目目录\cocos2d\cocos\editor-support下面;
然后打开VS项目,在解决方案下添加这个项目。
其中,添加一定会出错,
打开libfairygui.vcxproj。
删除一些东西:
找到下面这个代码块:
把“”删除“”中间的代码删除了。然后就可以把ibfairygui.vcxpro加入项目中!
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
/删除
<Import Project="..\..\Examples\cocos2d\cocos\2d\cocos2dx.props" />
<Import Project="..\..\Examples\cocos2d\cocos\2d\cocos2d_headers.props" />
/删除//
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
/删除//
<Import Project="..\..\Examples\cocos2d\cocos\2d\cocos2dx.props" />
<Import Project="..\..\Examples\cocos2d\cocos\2d\cocos2d_headers.props" />
//删除//
</ImportGroup>
3.11:
3.2:设置你的项目头文件路径:这是你的项目的路径,因为要引用fairgui的头文件,不是fairgui项目的
3.3:libfairygui项目的项目管理器中,加入下面这两个。
他们在cocos/2d目录下;自己加即可很简单
3.4:在上面的cocos2dx(两个都是)右击属性,
链接器输入添加libfairygui.lib,
编译ibfairygui
一般会通过的!!
3.5:集成Example的cpp文件到你的项目。
这里只需要把cpp,和文件,拷贝到你的项目就可以了。
这个Example文件
3.6:编译你的项目:
就会得到FairGUI的美丽的test了;
好好享受,FairGUI比cocosStuido强多了。
以后再把FairGUI的运行库源代码好好搞一下;还有上面的我觉得fairgui和spine的集成好像出了问题;那个gloader3d.cpp文件。
理解的朋友可以给我提个意见。