最近用到这个强大的工具 PhysicsEditor (转)
今天收到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了。
跟TexturePacker一样,PhysicsEditor是一个简单,但是非常实用的工具。对于cocos2dx快速开发来说确实都是很好的辅助工具。
最近用到这个强大的工具 PhysicsEditor (转)的更多相关文章
- 发一个比trace功能更强大debug工具,MonterDebugger
经常看到兄弟说trace不出东西啊,这样给你调试会带来很多不便:加入说我们需要将运行时的debug信息和之前某个版本的进行比对:又加入说我们需要在运行时通过debug动态调整显示对象的属性:查看当前整 ...
- strace 命令是一种强大的工具,它能够显示所有由用户空间程序发出的系统调用。
strace 命令是一种强大的工具,它能够显示所有由用户空间程序发出的系统调用. http://bbs.51cto.com/thread-1106891-1.html
- Ubuntu 10.04里安装强大抓图工具Shutter
Shutter 原名叫GScrot,是一款Linux下很强大的抓图工具,支持截取全屏幕,窗口,自选区域以及网页的图像,并且截取后的图像还可以简单编辑,Shutter还支持插件功能,矩齿,边缘化,碎纸, ...
- DevOps时代,企业数字化转型需要强大的工具链
伴随时代的飞速进步,中国的人口红利带来了互联网业务的快速发展,巨大的流量也带动了技术的不断革新,研发的模式也在不断变化.传统企业纷纷效仿互联网的做法,结合DevOps进行数字化的转型. 通常提到Dev ...
- python 强大的工具
numpy Python科学计算的基础包 安装工具 pip3 install numpy pandas包含了高级的数据结构和操作工具,它们使得Python数据分析更加快速和容易. 安装工具 pip3 ...
- java中有个很强大的工具jconsole.exe
这个工具可以监控java程序的线程,cpu和内存使用情况.
- 强大生产力工具Alfred
今天要给大家介绍的工具是Alfred,一款Mac下的高效生产力产品.它能做什么呢?简单的说就是:让你能够通过打几个字,就可以完成原本需要一顿操作的事情.举一个简单的栗子:如果我们要在Google搜索一 ...
- 强大的工具(一):Capslock+ 2.x版本
2020.07.09 更新 作者更新了3.x版本,因此更新了3.x版本的博客,可以戳这里. 本篇文章介绍的是2.x版本. 1 Capslock+简介 Capslock+利用了键盘少用的Capslock ...
- 比 Navicat 还要好用、功能更强大的工具!
DBeaver 是一个基于 Java 开发,免费开源的通用数据库管理和开发工具,使用非常友好的 ASL 协议.可以通过官方网站或者 Github 进行下载. 由于 DBeaver 基于 Java 开发 ...
随机推荐
- Spring事务注解@Transactional回滚问题
Spring配置文件,声明事务时,如果rollback-for属性没有指定异常或者默认不写:经测试事务只回滚运行时异常(RuntimeException)和错误(Error). <!-- 配置事 ...
- Windows 7 驱动开发
本文是对Win7(64)+VS2010+WDK7.1.0(WinDDK\7600.16385.1)开发驱动的小结. 一.系统工具 1.Win7(amd64位)系统 注:已装系统后,管理员身份运行cmd ...
- codeigniter db操作方法
链接数据库 ——- $this->load->database();//手动连接数据库 //连接多数据库 $DB1 = $this->load->database(‘group ...
- 20145227 《Java程序设计》实验五实验报告
20145227 <Java程序设计>实验五实验报告 实验内容 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.设计安全传输系统. 实验过程 1.先运行TCP代码,一人服务 ...
- vnc里鼠标拖动终端就会产生ctrl+c终端
然后把有道词典给关了就好了...
- CSS选择器及其优先级
一:一些普通的选择器 <!DOCTYPE html> <html> <head lang="en"> <meta charset=&quo ...
- Codeforces Round #370 (Div. 2) A
Description There are n integers b1, b2, ..., bn written in a row. For all i from 1 to n, values ai ...
- SQL 数据库的备份,还原,分离和附加以及聚合函数
数据库备份 数据库备份可以手动备份和语句备份 一.手动备份数据库 1.鼠标右键选择你要进行备份的数据库-任务-备份 可以在常规选项页面你可以选择备份类型是进行完整数据库备份还是差异数据库备份 2.点击 ...
- Objective-C学习笔记_Xcode模拟命令行填入参数执行
菜单Product->Edit Scheme 左边找到run xxx,点击后再邮编选择Arguments面板中就可以设置Xcode在运行命令行app时模拟输入参数. 设置完成后再次run就会自动 ...
- MSComm函数说明(来自网络)
CommPort 设置并返回端口号 void CMSComm::SetCommPort(short nNewValue) short CMSComm::GetCommPort() RThreshold ...