专栏名称: COCOS
Cocos引擎官方账号,第一时间为您送上引擎动态、精品教程、达人专访等干货,还会定期举办有奖活动喔!
目录
相关文章推荐
贵州省文化和旅游厅  ·  “遵”好吃,遵义会议会址周边美食攻略来啦! ·  昨天  
始室  ·  首发 . TOURISTS 宁静质朴的自然心境 ·  昨天  
始室  ·  首发 . TOURISTS 宁静质朴的自然心境 ·  昨天  
阳光海南网  ·  2025年春节假日海南旅游稳步发展,8天接待 ... ·  昨天  
上饶新闻  ·  这桌万年菜,一口入魂的家乡美味 ·  3 天前  
上饶新闻  ·  这桌万年菜,一口入魂的家乡美味 ·  3 天前  
51好读  ›  专栏  ›  COCOS

Cocos Creator v1.6支持Camera剔除功能!

COCOS  · 公众号  ·  · 2017-08-23 00:00

正文

众所周知,当处理大型游戏时,一个场景中可能会同时存在几百上千个渲染对象,但是这些渲染对象却不一定都在屏幕中出现。而渲染一个对象是比较耗时的,如果我们能把这些不在屏幕中的渲染对象从渲染列表中剔除,性能势必能得到很大的提升。


假如我们在场景使用了100个精灵,但是目前只有50个精灵出现在屏幕中,剩余的 50个精灵玩家是看不到的,那么我们就没有必要花时间在这一帧上对这50个精灵进行渲染,这样就可以省下一半的性能来处理其他事情。


Cocos Creator逐步支持了比较常用的组件的剔除功能,比如Sprite、Label、RichText、DragonBones。一个游戏的表现基本上都是这些渲染组件组合而成的,如果能做到支持这些组件的剔除功能,游戏开发过程基本够用了。其他的渲染组件,比如粒子效果、绘画组件的剔除功能目前还没有进行支持,后续我们可以根据需求再进行讨论。


引擎团队早在v1.5版本就添加了Camera组件, 而在上周刚正式发布的v1.6版本中则进一步完善了各组件在使用Camera组件情况下的剔除功能支持。 假如我们在场景中使用了Camera组件,那么剔除功能将会按照Camera组件的视口来进行剔除。


测试例


这些渲染组件的剔除功能我们可以在example_cases/culling中找到相关测试。


支持剔除功能的组件我们在生成相关对象的时候可以观察到GL calls的变化,而不支持剔除功能的组件GL calls则不会发生变化。




从这两幅图中可以看到GL calls是完全不一样的。


点击Enable Camera则可以测试在使用摄像机的情况下剔除功能是否仍然正常。


TiledMap







请到「今天看啥」查看全文