易玩(上海)网络科技有限公司
公司地址:上海市静安区灵石路 718 号 B1 北楼
注册地址:上海市闵行区紫星路 588 号 2 幢 2122 室
投诉举报邮箱:kefu@taptap.com
地形交界处过渡不够自然丝滑
我:能否让交界处像沙滩与海浪一样,你中有我我中有你是不是就是类似于你说的噪声梯形,也就是边界更不规则自然嗒:渐变参数已调整为 v4 平衡值:版本 depth alpha 效果v1 0.45 0.85 (实心) 绿色条带明显v2 0.30 0.70→0 条带仍可见v3 0.15 0.35→0 过渡完全消失v4 0.25 0.55→0 平衡点v4 取 v2 和 v3 的中间值 — de
桌面开发环境的GM入口
找到根因了。看客户端 IsAdmin() 逻辑:lua复制-- Web 端 + myId == 0 → 视为管理员(编辑器预览)if plat == "Web" and myId == 0 then return trueend分享链接是 Web 平台。当 WallClient 还没同步到 userId,或者 myUserId 为 0 时,客户端会把这个用户当作管理员,显示"管理员入
滚动缩放地图是以NPC角色位置缩放
鼠标在屏幕哪个位置滚动缩放地图大小之后,屏幕会自己移动至NPC为中心的位置,视觉上感觉屏幕自己移动了一下。嗒:问题分析:当前 MapCanvas:OnWheel() 缩放时,以鼠标光标位置为锚点调整 panX_/panY_。但在游戏模式下,PlayerController:_CenterCamera() 每帧都在通过 lerp 把相机拉回玩家中心。这两者产生了冲突——缩放瞬间把视口偏移到鼠标
【BUG经验】下面地图被“吃”了
我:下面地图被“吃”了,怎么回事,查清原因。嗒:我发现了关键问题。看第 670-676 行的可见范围计算(无旋转时):local viewB = viewT + layout.h * invZoom当有 isoScaleY 时,layout.h 需要除以 isoScaleY 才能得到正确的内容空间高度。但这里没有考虑 isoScaleY_,导致可见行范围 rowMax 计算偏小,底部的行根
按住空格就近捡拾地上资源
空格键拾取功能已实现,变更总结:DropSystem.lua — 新增 FindNearest(worldX, worldY, maxRadius) 方法在指定位置、自定义半径范围内查找最近的落地掉落物默认半径使用 PICKUP_RADIUS(60px),空格拾取传入 TILE_SIZE * 1.5 的更大范围main.lua — 新增空格键持续拾取新增 pickupCooldown_
大地图卡顿分析
当前架构的好消息和坏消息已有的优化(好消息):地形渲染 _RenderTerrain 已经做了视口裁剪。Render() 函数在 1460-1500 行计算了 rowMin/rowMax/colMin/colMax,区分了无旋转(精确裁剪)和有旋转(四角包围盒)两种情况。地形层不是瓶颈。没有优化的部分(坏消息):渲染层 是否有视口裁剪 遍历方式_RenderTerrain 有 只遍历可见
【BUG经验】边缘地形内容又溢出到调色板
继续修BUG:边缘区域的地形内容又溢出到调色板 UI 上面了嗒啦啦:nvgScissor → nvgIntersectScissor:不再替换父级 scissor,而是与父级 Panel 的 overflow="hidden" 设置的 scissor 取交集这个 scissor 调用在旋转/缩放变换之前,当前坐标空间没有旋转,不会有之前的 AABB 膨胀问题父级 scissor 限制了整个
【BUG经验】地形盖住了编辑器面板
网格是在地图编辑器的下面一层,但地形(如 草地等)却在地图编辑器的上面一层交给嗒啦啦:截图确认了关键信息:绿色边框正确框住了画布区域(x≈140 起始),说明 layout 坐标正确地形纹理溢出了绿色边框,延伸到了左侧调色板网格线被正确裁剪在绿色边框内这说明外层 nvgScissor 对网格有效但对地形无效。根因找到了:网格在内层 nvgRestore 之后渲染(使用外层 sciss
一直是“正在保存”,保存不了新地图
根因分析问题 1(PC端重启后不自动加载云端地图):EnterEditor() 和 EnterGame() 的加载策略是 内存缓存 → 本地文件 → 资源缓存,没有"从云端加载"这一步。重启后内存缓存消失,本地文件如果没写过也为空,所以加载不到保存在 serverCloud 里的地图。问题 2(分享链接保存卡死):服务端 HandleWallSaveMapCloud 检查 ADMIN_IDS[
树和树重叠时,注意层叠显示关系
现在我清楚了完整的修复方案。让我实施:问题 1(排斥区失效):SpawnInitialTrees 在建筑从云端同步之前调用,此时 mapData.buildings 为空。需要在云端同步后清除冲突的树。问题 2(深度排序):树和建筑分别在两个渲染步骤绘制(建筑先、NPC 后),树总是覆盖在建筑上面。需要让树也参考建筑的行位置来决定遮挡关系。建筑 9 格排斥区 — BUILDING_BUFFE
空空如也
也许宝藏只是换了个藏身之处