论坛首页 移动开发技术论坛

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

浏览 1191 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2014-11-25  

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工程。

生成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是需要修改的内容,此外其他的文件我们不需要修改。

 

Windows Phone 8工程



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



运行工程



 

运行在模拟器上

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


[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  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()可以显示内存使用信息。

 

 

更多内容请关注国内第一本Cocos2d-x 3.2版本图书《Cocos2d-x实战:C++卷》
本书交流讨论网站:http://www.cocoagame.net
更多精彩视频课程请关注智捷课堂Cocos课程:http://v.51work6.com
欢迎加入Cocos2d-x技术讨论群:257760386
欢迎关注智捷iOS课堂微信公共平台

论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics