江南才子 发表于 2021-6-27 15:12:49

cocos2d-x自制工具07:打印cocos2d-x的节点树

都说cocos2d-x是基于节点树渲染的2D引擎(还有一种是用指令方式进行绘制的引擎,在功能机时代很常见)。

但是节点树是神马玩意,节点树是神马概念。最近市面上cocos2d-x的书比较多,如果你有幸买了一本的话,上面大约会写上因为opengl的绘制方式xxx,所以我们xxx,然后xxx。恩。但是这非常抽象。很不直观。



而且,关于节点树的引擎,其实在进行绘图位置调试时,是有缺陷的。因为用的全是相对坐标,你经常搞不清楚把东西到底画哪去了,是跑屏幕外面了,还是被神马东西盖住了。这块就不如指令方式绘制的代码来的直观。
为了让大家能实际的看到这颗树,也为了方便你调试绘图位置。我做了一个简单的代码,可以在控制台输出整棵树,当然根节点是由你来选择的。代码如下:


很简单的递归输出,然后我们只有打印一下输出变量s就行。
但是要注意,因为在渲染时可能存在对子节点的重排序,所以为了保证输出的结果正确,你要先强制重排序一把。
下面是调用代码:


我们来打印helloworld例子里面的那颗节点树。下面是输出结果:这个代码可以做很多功能,当然你可以自己扩充一下咯。
代码下载在底下:(引擎版本2.13)
页: [1]
查看完整版本: cocos2d-x自制工具07:打印cocos2d-x的节点树