我的古董店

我要开发同款
姜还2024年03月14日
67阅读
开发技术laya、egret、小游戏开发、h5游戏开发、javascriptJavaScript
所属分类小游戏、cocos creator

作品详情

项目描述:模拟考古冒险与经营类游戏,地图上多个店铺、景观,店铺里有多个古董,古董旁有多个参观点,位置均是固定的。主要玩法:解锁店铺、解锁景观及升级店铺、升级店铺内的伙伴,人物进入店铺观赏获得金币,通过墓室关卡获得古董等。
我负责:经历整个项目的开发,负责核心玩法逻辑开发,根据开发需求仿制Thenjs实现链式控制库;使用tiled配置点位以及npc层级,使用行为树完成npc的移动、状态及阶段事件;使用异步A*库完成寻路;使用fairyGui组件溢出滚动完成地图的拖动放大缩小。探险功能:使用自定义算法实现背景由远到近有小到大的移动效果。
重点/难点:1、性能问题:npc变多、以及npc与物件的交错,使得计算量和DrawCall噌噌上涨。最后分了15个组件层,物件根据表顺序配置在双数层,npc根据tiled配置在单数层,以减少渲染及计算量,排序计算仅计算npc之间的层级。设置A*的搜索迭代次数、存储寻路路径、使用分帧计算减少游戏的卡顿与发热。2、npc状态问题:最开始使用状态机,因不便于管理及扩展后面学习使用了行为树。3、地图缩放问题:普通的改变scale可以实现,但是锚点在左上角导致缩放效果不好,但又不能实时改变锚点,所以记录了点击位置,计算通过缩放的大小移动地图保证手指初次触碰的视图在屏幕内。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论