Cocos2d-x 3.x的Windows Phone 8工程

Cocos2d-x 3.x中我们使用的Cocos2d-x 3.2,它提供了Windows Phone 8平台的支持。下面我们介绍一下在Cocos2d-x 3.2中如何生成Cocos2d-x的Windows Phone 8工程,以及如何使用等问题。

生成Windows Phone 8工程
我们可以通过Cocos2d-x提供的cocos new工具生成多平台模板工程。如果我们的工程名为HelloCpp,则生成之后的目录结构如下图所示,其中的proj.wp8-xaml文件夹内容,如后图所示,其中HelloCpp.sln可以启动Cocos2d-x Windows Phone 8工程。

Cocos2d-x 3.x的Windows Phone 8工程
生成Windows Phone 8工程
Cocos2d-x 3.x的Windows Phone 8工程
proj.wp8-xaml文件夹

提示 如果你使用的是cocos2d-x-3.2alpha0版本,解决方案编译的过程中会发生CCSprite3DDataCache.cpp文件无法找错误, 请在Visual Studio打开libcocos2d工程在3d目录下右键删除CCSprite3DDataCache.cpp和CCSprite3DDataCache.h。
成功启动工程后,看到如下图所示的工程结构,其中HelloCpp启动工程,它是一个Window Phone 8工程,使用的C#代码编写。HelloCppComponent中的Classes是需要修改的内容,此外其他的文件我们不需要修改。

Cocos2d-x 3.x的Windows Phone 8工程
Windows Phone 8工程

运行Windows Phone 8工程
设置HelloCpp为启动工程,如下图所示,选择想要运行到的设备或模拟器,然后点击启动按钮运行工程。如后图所示是在模拟器上运行结果。

Cocos2d-x 3.x的Windows Phone 8工程
运行工程
Cocos2d-x 3.x的Windows Phone 8工程
运行在模拟器上

我们在模拟上除了可以看到帧率信息,还可以看到内存使用信息。隐藏内存使用信息输出与隐藏帧率信息输出不同,如果Debug部署模式运行会有显式,如果是Release部署模式运行会有隐藏。这是通过在HelloCpp工程中的MainPage.xaml.cs定义的预编译指令实现的,相关下部分代码如下:

  1. #if DEBUG
  2. #define DISPLAY_MEMORY
  3. #endif
  4. … …
  5. // Constructor
  6. public MainPage()
  7. {
  8. InitializeComponent();
  9. #if DISPLAY_MEMORY
  10. StartTimer();                                           ①
  11. #else
  12. MemoryDisplay.Visibility = Visibility.Collapsed;
  13. #endif
  14. }
  15. … …

上述第①行代码StartTimer()可以显示内存使用信息。

更多内容请关注最新Cocos图书《Cocos2d-x实战 C++卷》

本书交流讨论网站:http://www.cocoagame.net

更多精彩视频课程请关注智捷课堂Cocos课程:http://v.51work6.com
欢迎加入Cocos2d-x技术讨论群:257760386

《Cocos2d-x实战 C++卷》现已上线,各大商店均已开售:

京东:http://item.jd.com/11584534.html

亚马逊:http://www.amazon.cn/Cocos2d-x%E5%AE%9E%E6%88%98-C-%E5%8D%B7-%E5%85%B3%E4%B8%9C%E5%8D%87/dp/B00PTYWTLU

当当:http://product.dangdang.com/23606265.html

互动出版网:http://product.china-pub.com/3770734

《Cocos2d-x实战 C++卷》源码及样章下载地址:

源码下载地址:http://51work6.com/forum.php?mod=viewthread&tid=1155&extra=page%3D1

样章下载地址:http://51work6.com/forum.php?mod=viewthread&tid=1157&extra=page%3D1

欢迎关注智捷iOS课堂微信公共平台

Cocos2d-x 3.x的Windows Phone 8工程

上一篇:Js获取当前日期时间


下一篇:[SQL]oracle 的to_char、to_number、to_date用法