Cocos v2.3.3 插件示例工程编译失败的解决办法

Cocos v2.3.3 推新版本了,更新一个,用一下,挺不错的,增加了很多功能。赞一个!

当然,这不是重点,重点是下面要说的插件示例工程编译失败的问题。

插件示例工程位于 Cocos 文档目录的 Cocos\CocosStudio2\Samples\Addins 这里。
拷贝出来,VS2013 打开解决方案,编译成功,很好,没问题。
既然没问题,重点也就不是它了,重点来了。
把 Lua 相关的文件都添加到工程里,编译,失败,可以看到很多的错误信息。

重点来了,以下是解决方法。
赶时间的同学可以直接跳到最后。

看看有什么编译错误。
提示 CocoStudio.ToolKit 命名空间找不到,找不到就把 using CocoStudio.ToolKit; 命名空间干掉。
嗯,好,少了些编译错误。

提示 EngineClassName 找不到,根据 VS 智能提示,添加如下命名空间试试。
using Modules.Communal.PropertyGrid;
还行,解决了。

提示 Catagory 找不到,找来找去不知道怎么回事,删除之。解决了。

提示 Sprite3DObject 找不到了,这是怎么回事儿?
提示命名空间 CocoStudio.Model3D.Lua.Templates; 找不到,这又是怎么回事儿?
一看上面都有 3D 的标志,看看 DLL 那个库目录 Library 里,果然没有 3D 模样的 DLL 。
不怕,我们安装了 Cocos ,到它的安装目录里拷贝两个 DLL 过来就好了。
默认 Cocos 会安装在这里 C:\Program Files (x86)\Cocos\Cocos Studio 。
我们把如下两个 3D 相关的 DLL 拷贝到 Library 目录里:
CocoStudio.Model3D.dll
CocoStudio.Model3D.Lua.dll
解决了。

如果你一开始就把所有这些文件都添加到工程了,应该没有下面的问题。
在下手贱,一开始没有添加,所以才有了下面的问题。
CustomObjectData 怎么也找不到了,添加到工程就好了。
CustomObjectData.cs 文件里显示 CustomObject 找不到的。
添加命名空间 using Addins.Sample.Templates; 解决之。
ViewModel 里的 CustomObject.cs 怎么没有了?
也把文件 CustomObject.cs 添加进来。解决。

提示 ResourceFile.DefaultFileMarker 找不到了,代码后面敲个点试下,原来改名字了。
改为 ResourceFile.DefaultMarker 了。

LuaCustomObject.cs 文件里的 data.MixedColor.ToLuaString() 也没有了,改个名字试试,不行。
算了,直接把 ToLuaString 删掉试试,好了。

编译一下,成功。
把编译好的 DLL 放到 Cocos 的插件目录里去,可以正常工作。
完美!

总结:
算了,把我修改好的工程放一份,遇到同样问题的同学直接用就好了。
感兴趣的同学请主要参考工程文件的修改。其它的大部都可以根据 VS2013 的提示处理。
或者用个文件对比工具就可以看到具体修改了些什么(就是上面的那些解决步骤了)。

另外,问题已经反馈给开发了。
下个版本就没这些问题了,应该会有更好的解决方案。

PS : 附件传不上去,放个网盘地址自己下吧。
http://yunpan.cn/cLnKya3I2SmUa 访问密码 ae64