zoukankan      html  css  js  c++  java
  • cocos2dx游戏开发必备工具之PhysicsEditor【ZT】

    来自http://socol.iteye.com/blog/1771167

    今天收到PhysicsEditor作者发过来的license key,所以顺便把PhysicsEditor也尝试了一下。主要是尝试将PhysicsEditor与cocos2dx,box2d结合开发的一些步骤。之前大概网络检索了一下,知道PhysicsEditor的功能其实很简单。一句话就是给图片的边缘定位,并且指定图片对齐(重心?)位置,然后导出成plist文件。用来快速给box2d提供图片边缘设定的工具,懒人利器 。废话不多说,我们一步一步开始探索吧。

      1. 从官网下好安装文件,在安装包里找到Examples文件夹。选中Cocos2d-X中的工程,导入xcode。

    可以看到,其中有其他各类框架的例子程序。选择自己熟悉的框架目录,简单通过这些程序就能知道PhysicsEditor的大致使用方式。

     

      2. 可以看到,GB2ShapeCache-x.cpp中实现了自己的解析类。主要是用来解析PhysicsEditor所生成的plist文件。在HelloWorldScene.cpp中,通过一行代码就能将plist导入进来。



     

       3. HelloWorldScene.cpp中其他代码都是标准的cocos2dx和box2d语法,暂不介绍。这里主要找一下如何将plist中的配置应用到box2d具体的一个body中去。如下图所示,只需要在创建body时调用GB2ShapeCache系列函数,将对应边缘和对齐位置追加到body中就行了。


     

      4. 接下来,看一下实际效果



     

      5. 这样物体下落时就会根据PhysicsEditor设定的边缘,进行边缘碰撞检测。

      6. 还缺少什么?是的,我们来看一下PhysicsEditor的真正界面,了解如何生成对应的plist。

    进入工程目录,可以看到有一个.pes后缀的文件,就是PhysicsEditor的工程文件,双击打开。



     

     

      7. 边缘设定和中心点都是可以手动调整的,也可以使用工具栏中的魔棒工具,自动帮你设定好边缘。

    最后,选择Publish导出成box2d plist文件格式就OK了。

  • 相关阅读:
    SpringBoot之旅第三篇-日志
    SpringBoot之旅第二篇-配置
    SpringBoot之旅第一篇-初探
    394. 字符串解码
    1190. 反转每对括号间的子串
    921. 使括号有效的最少添加
    Leetcode 1171. 从链表中删去总和值为零的连续节点
    设计模式之过滤器模式——Java语言描述
    MySQL查询执行的基础
    设计模式之桥接模式——Java语言描述
  • 原文地址:https://www.cnblogs.com/ziyouchutuwenwu/p/3138153.html
Copyright © 2011-2022 走看看