续ShaderEditor、Inspector之后又一成功爆品,2周260+单!
01 前言
大家好,我是98K!五一前,我上架 Cocos Store 的『高性能割草框架』增加 Cocos Creator 2.4.x 引擎,已经支持的老铁可免费更新!
后续的更新计划是:完善2D游戏案例、增加3D案例、支持RVO和群聚,让框架更实用,应用范围更广。
感谢大家的支持,『98K Cocos 技术交流群』开3群了,进群可领取50优惠券,欢迎大家一起交流、学习、共同成长!
最近弹幕,割草非常的火爆,从独立开发吸血鬼幸存者大火,到大赚 10 亿的弹壳特工。
还有后起的成绩喜人的通神榜、土豆兄弟、黎明前20分钟......相信没人能会拒绝,满屏小怪被弹雨突突的击杀的快感,还有超武的爽快激动。
这次在 ChatGPT AI 的加持下,我为大家提供一个支持1000怪同屏,通用高性能2D/3D动态碰撞检测方案。
02 性能测试
在开始介绍之前,我先公布一下性能测试结果,如果你觉得还不够用,那就不浪费时间,继续往下看了。
AABB 2D碰撞测试
设置设备:小米10 骁龙865
浏览器:系统自带浏览器
测试数据:2000节点,平均5ms
AABB 3D碰撞测试
设置设备:小米10 骁龙865
浏览器:系统自带浏览器
测试数据:2000节点,平均8ms
2D割草DEMO测试
设置设备:小米10 骁龙865
浏览器:系统自带浏览器
测试数据:400节点,平均2ms
这里是 H5 链接,您也可以在自己设备上测试体验:
http://learncocos.com/rougelike/
下面我再讲讲,具体的碰撞优化思路与ChatGPT给予我的一些帮助,希望能对你有所帮助。
03 技术要点
碰撞系统分为动态和静态两种,不同的情形会使用不同策略。
动态碰撞检测
动态碰撞检测,主要针对运动物体、例如角色、子弹、技能等,基于智能分轴扫掠优化方案,使用了(优化版SAP + OBB等......)适用各种2D/3D、运动物体检测,如:角色、弹幕、子弹、攻击。
静态碰撞检测
静态碰撞检测,主要针对静止物体,例如:场景、物品、障碍等。基于空间静态分割优化方案,使用了(octree + kdtree + gjk + epa等算法) 适用于 3D 世界行走、3D表面行走、边界检测(FPS、MMO、RPG等类型的游戏)。
动态碰撞检测系统组成
AABB 包围盒更新
粗略碰撞算法筛选
最后形状精确碰撞
最近 AI 很火,听说它要来抢我饭碗。我到要看看,能不能先跟他交个朋友,助我实现,上面所说的三件套。
04 ChatGTP 能力加持
先科普一下,这次为什么会挑选 SAP ?因为各大物理引擎都能看它的身影,存在即是理由。
SAP全名:Sweep And Prune,是一种对轴向排序扫掠算法,有种SAT剪枝的味道。
对 X 轴投影可以快速分离排除相交
优点如下:
1. 物体更新快(物体实时更新位置)
由于要对分轴排序,你可能会想到用快排 nlogn。
但是 SAP 有个真正灵魂的地方,由于运动物体相邻帧情况下排序是相对稳定,所以实际中使用插入排序会更快,大部分情况接近 O(n) 的性能,整体上会比nlogn 快很多。
其他树状如四叉、八叉、BVH等算法,更新物体需要调整树结构是消耗成本不低的。
2. 物体间相互检测快(常说的 trigger)
由于使用的是顺序存取结构,读写性能比其他树形结构要高。
同时轻易进行相互 trigger 检测,而且这顺序结构天生就带去重检测功能。
例如:四叉树、八叉树、格子等,这一类多次分割,还要进行去重标记检测,无形增加性能消耗。
3. 支持2D/3D无范围限制 (兼容性)
由于是对轴向排序分割检测,所以不存在空间大小限制,也不受维度的限制,很好的支持全范围的2D/3D 空间检测。
像四叉,八叉,格子,可能会受到空间范围大小限制。
本着人生第一信条,谁提出问题就让谁来解决问题。我决定让 AI 它解决自己抛出的问题。
好家伙,一声音不哼地啪啪啪打起代码来了,感觉流程可以!但是,还是缺少点灵魂,武功心法掌握的是十足,但打起功夫来,还是差了点。
兄弟这不太行啊!看来,老哥我只能循循诱导,给它提起优化建议。
经过一轮交谈,也收集得差不多了。本着个人第二信条对技术负责的态度,在 AI 编写的框架上进行自己的精准的改造。
同时结合自己的优化方式,对 SAP 算法进行了深入的改造,为后面碰撞检测提供最大的效力。
05 AABB与Shape
粗略筛选完成了,成功了一大半,还有两个环节:AABB、Shape 如何实现呢?
1. AABB 包围盒更新
本着个人第三信条,能不动手坚决不动手,于是再次唤醒 AI 起来啪啪啪写代码。
求算旋转后的 AABB,提供给 SAP 筛选。
What? 打住,你给我整 8 个顶点的来算运动中的 AABB,老板看到不得血压爆表,行行行,再好好规劝一下。
好家伙,你是知道得挺多的就是不给我,AI兄弟你这不厚道啊,行行赶紧给我写出代码。
兄弟(看样子快成形了,我心里暗喜,再求求它)再帮忙优化一下,游戏优化飞起,老板看到一开心,就发我薪水啦!!!
行吧,这代码算是到点子上,本着个人第二信条对技术负责,最后优化细节简化由我再进行处理。
这样 AABB 旋转更新完成,可以交付到SAP进行粗略碰撞筛选。
2. Shape形状精确碰撞
目前暂时支持 Box、Sphere 检测(后续会支持其他常用),支持3D旋转操作的碰撞。
所以我们要实现OBB vs OBB 和 OBB vs Sphere 的检测。本着个人第三信条,厚着脸皮再次唤醒了 AI。
Sphere vs Sphere 的碰撞检测,不为难它了
OBB vs Sphere (旋转方体与球体 精确碰撞)有这个检测,只需要把Sphere转到OBB 旋转坐标系下,就可以转化为AABB求交。
OBB vs OBB (旋转方体之间精确碰撞)
本着个人第三信条,再次让AI啪啪啪的工作起来。
本着个人第二信条原则,最后优化细节简化由我再进行处理。
自此,三大件在 AI 的协助下,得到了很好解决。
最后在我的组装修改下,碰撞系统终于运行了起来,AI是可以写代码,但是它不一定完美,需要从业者有一定知识储备,才能更好地发挥它效力。
假以时日,在不断地训练下,和全球广大的知识网库的加持下,它终究会成为那个巨人。
06 小结
今天分享的内容,而非 98K 大佬本人的极限,98K高性能割草框架,未来还会继续迭代更新,内容如下:
增加实用Shape
支持群聚的优化
增加高性能查询
各位老铁们,敬请期待!后续更新免费升级~
如果你对 Cocos 游戏开发、技术、变现感兴趣,欢迎加晓衡微信:z6346289。
往期精彩
CocosStore卖家成长指南
Creator 3.x 入门修炼指南
用ChatGPT做一款二次元卡牌游戏
坚持做一个长期主义者
一个公式35岁让自己过的越来越好!
《我的世界》体素类游戏完整解决方案!
续ShaderEditor、Inspector之后又一成功爆品,2周260+单!相关推荐
- 小红书爆品3大公式+12个卖点,让你的产品更有吸引力
小红书推广过程中,品牌想要更好更快地抓住用户注意力,必须要聚焦某一卖点,从打造爆品开始,让消费者产生强烈的心智认知,从而提高品牌影响力. 01 3个可复制的爆品公式 透视一核多元逻辑 一款产品如何让自 ...
- 回顾小米公司的成功过程,用五个层次的问题阐述,小米的成功基础、小米的爆品特点、小米生态链模式的根本原因。
万建峰老师 非常网赢课程 茶叶191 朱上涛 回顾小米公司的成功过程,它的成功模式可以这样总结:他抓住了智能手机行业性价比这个本质,高配低价是核武器.利用性价比炒作,获取了大量关注,充分利用互联网时代 ...
- 伙伴云CEO戴志康:Discuz !之后,打造数字化武器,助力元气森林们做爆品
"像元气森林CEO唐彬森这样带着做游戏的思路去做气泡水的互联网人,已经不在少数 ",伙伴云董事长戴志康说. "像元气森林CEO唐彬森这样带着做游戏的思路去做气泡水的互联网 ...
- 百万互动出圈爆品复盘,小红书品牌如何高效打造爆品?
在激烈的市场竞争中,成功培育出热销爆品,是每个品牌都渴望并竭力想要达成的目标.如何成功打造爆品?是摆在每个品牌面前的难题.本文将结合某染发品牌和某洗地机品牌具体案例,从产品种草关键词.投放人群.投放达 ...
- 电子计算机行业爆品打造,二类电商|爆品打造,不是你想造就能造
本文来源:大串想 在商界,几乎 没有哪一个厂家.没有哪一个经销商不想打造爆品,打造爆品的好处实在太多了. 一.爆品决定江湖地位 1. 手握爆品,特别是独一无二,甚至是遥遥领先于友商的爆品,成为行业细分 ...
- 社群团购到底有哪些优势?为什么社群团购很容易打造爆品?
社群团购到底有哪些优势? 很多人一听社群团购,就会自动打上低价乱价仿货劣质标签,事实上,社群团购已经开始泾渭分明了,慢慢辐射高端用户群体,大部分社群团购平台年流水过亿,利润在20%左右.社群团购平台未 ...
- 单品销量破百万+,登顶天猫类目第一!摇滚动物园的爆品打造攻略你学会了吗?
4 月 12 日,天猫在其官博公布今年天猫金妆奖入围的 100 件商品名单,并宣布评审正式开始,此次金妆奖集结了 100 多位美妆界顶级意见领袖,每人只能在 100 件入围的美妆单品中投出 3 票,十 ...
- 新物种打造爆品,总共分几步?DeepTalk vol.1
主笔:邹小困 主持人:增长黑盒CEO Shimiao 出品:增长黑盒研究组 众所周知,无论什么消费领域,做品牌的核心都是产品. 我们在做行业调研时发现,到底开发怎样的产品.如何高效地开发出产品以及现有 ...
- DeepTalk vol.1 新物种打造爆品,总共分几步?
主笔:邹小困 主持人:增长黑盒CEO Shimiao 出品:增长黑盒研究组 众所周知,无论什么消费领域,做品牌的核心都是产品. 我们在做行业调研时发现,到底开发怎样的产品.如何高效地开发出产品以及现有 ...
最新文章
- ABP Zero示例项目问题总结
- centos7 利用 crontab 执行 定时任务 计划任务
- python为什么中文要encoding-python中encoding是什么意思
- 如何给网站制作一个favicon.ico图标
- 员工发布“宏颜获水”广告引争议 苏宁回应:系个人行为
- Linux基础命令---间歇执行命令watch
- Minix、UNIX、Linux的区别与联系
- linux系统镜像iso文件下载
- Java贪吃蛇游戏开发
- C# PDF操作之-PDF转WORD
- 飞凌单片机解密_干货:芯片解密方法大全
- android直播刷礼物特效,Android直播送礼物发消息页面(仿印客直播)
- 学生用计算机如何算角度,如何用windows计算器计算角度的正弦值?
- mac上 网易mumu模拟器在打开代理后无法使用键盘 解决办法
- 【元宵节】中国人民大学与加拿大女王大学金融硕士项目与你的那份“缘”
- Tables[0].Rows.count什么意思?
- 山狮来临,Notes何往
- 《GIT视频教程》(p41~p44)
- 最近组织游泳社的体会
- Crowd Control