feat(ui): 资源归属骨架 + 修复 .gitignore 无锚点模式吞业务目录
framework/ui 建八个资源目录(按加载时机=图集划分)并落地归属规则文档。 根 .gitignore 的 **/native/ 与 YouleNexus 的裸 native 会静默吞掉 assets/framework/**/native/ 等业务目录; 改为各工程 .gitignore 用锚定 路径负责生成物, 根只管仓库级条目。种子补 .gitignore 使新子游戏继承。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
+7
-8
@@ -17,14 +17,13 @@ yarn-error.log*
|
|||||||
# ---------- Node 依赖 ----------
|
# ---------- Node 依赖 ----------
|
||||||
**/node_modules/
|
**/node_modules/
|
||||||
|
|
||||||
# ---------- Cocos Creator 工程生成物(可由编辑器重建,勿入库) ----------
|
# ---------- Cocos Creator 工程生成物 ----------
|
||||||
# 适用于 cocoscreator_projects/ 下所有工程
|
# 由各工程自己的 .gitignore 用锚定路径负责(YouleNexus/.gitignore、templates/game-seed/.gitignore)。
|
||||||
**/library/
|
# 此处**不得**再写 **/library/ 这类无锚点模式——它会连 assets/framework 下的
|
||||||
**/temp/
|
# native/ local/ profiles/ 等业务目录一起吞掉(已踩过,见 plan 2026-08-27 Task 1)。
|
||||||
**/local/
|
|
||||||
**/build/
|
# 构建流水线的临时工程(build-game 产生,可随时重建)
|
||||||
**/native/
|
cocoscreator_projects/build-workspace/
|
||||||
**/profiles/
|
|
||||||
|
|
||||||
# ---------- 子游戏共享框架的 junction(指向 YouleNexus 真源,按机器重建) ----------
|
# ---------- 子游戏共享框架的 junction(指向 YouleNexus 真源,按机器重建) ----------
|
||||||
# 由 scripts/setup-links 在每台机器上重建,不入库
|
# 由 scripts/setup-links 在每台机器上重建,不入库
|
||||||
|
|||||||
@@ -2,12 +2,12 @@
|
|||||||
#///////////////////////////
|
#///////////////////////////
|
||||||
# Cocos Creator 3D Project
|
# Cocos Creator 3D Project
|
||||||
#///////////////////////////
|
#///////////////////////////
|
||||||
library/
|
/library/
|
||||||
temp/
|
/temp/
|
||||||
local/
|
/local/
|
||||||
build/
|
/build/
|
||||||
profiles/
|
/profiles/
|
||||||
native
|
/native/
|
||||||
#//////////////////////////
|
#//////////////////////////
|
||||||
# NPM
|
# NPM
|
||||||
#//////////////////////////
|
#//////////////////////////
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
# framework/ui — 平台界面资源(框架真源)
|
||||||
|
|
||||||
|
> 完整设计见 `docs/superpowers/specs/2026-08-27-ui-asset-and-skin-design.md`。
|
||||||
|
> 本文件是该 spec §2「资源归属规则」的落地速查,改动前先读 spec。
|
||||||
|
|
||||||
|
## 唯一判定标准
|
||||||
|
|
||||||
|
**凡是放进 `framework/` 的,都会出现在每一个子游戏的包里。**
|
||||||
|
|
||||||
|
## 四条规则
|
||||||
|
|
||||||
|
1. **框架带完整一套默认皮肤**,不是占位图。依据:旧项目 444 个可比对平台资源中 73.9%
|
||||||
|
在子游戏间完全相同;框架不带默认,这部分就要在每个子游戏各存一份且改了不会传播。
|
||||||
|
2. **只放「所有子游戏都需要」的平台界面资源**。判定问句:*下一个子游戏还需要它吗?*
|
||||||
|
「部分子游戏共用」**不构成**进框架的理由——放进去等于让其余子游戏白背包体。
|
||||||
|
3. **目录划分 = 图集划分**。Cocos 的 Auto Atlas 只对同目录散图生效,故目录结构是性能设计:
|
||||||
|
| 目录 | 用途 |
|
||||||
|
|---|---|
|
||||||
|
| `atlas-common/` | 全程常驻:按钮、面板底、图标、通用弹窗 |
|
||||||
|
| `atlas-login/` / `atlas-hall/` / `atlas-room/` | 各场景专用,按加载时机切分 |
|
||||||
|
| `standalone/` | 超图集尺寸上限的大图、整屏背景(不进图集) |
|
||||||
|
| `spine/` | Spine 骨骼动画,**每个资源一个子目录**,含骨骼数据/atlas/贴图 |
|
||||||
|
| `audio/` / `font/` | 平台音效 / 字体 |
|
||||||
|
4. **图片资源统一用 PNG**。非 PNG 图片不做尺寸校验(`scripts/lib/skin.mjs`),会削弱保护。
|
||||||
|
|
||||||
|
## 子游戏怎么换肤
|
||||||
|
|
||||||
|
在 `games/<name>/assets/game/override/` 下放**同路径同名**文件即可,例如
|
||||||
|
`override/atlas-hall/btn_start.png` 覆盖 `framework/ui/atlas-hall/btn_start.png`。
|
||||||
|
|
||||||
|
- 只换图片内容,**不要带 `.meta`**(UUID 在 meta 里,换了会断引用)
|
||||||
|
- 因此**替换图必须与默认图同尺寸**;确需改尺寸时才连 `.meta` 一起提供(例外通道,合成脚本会覆写 uuid)
|
||||||
|
- Spine 必须**整套**覆盖,缺件报错;Spine 贴图豁免同尺寸约束
|
||||||
|
- 自检:`npm run check-skin <name>`
|
||||||
|
|
||||||
|
**自定义 Prefab 不走 override**,放 `game/prefabs/`(组件替换通道,另见后续 spec)。
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
# Cocos Creator 工程生成物(锚定到本工程根,勿用无锚点模式——会吞掉 assets 下同名目录)
|
||||||
|
/library/
|
||||||
|
/temp/
|
||||||
|
/local/
|
||||||
|
/build/
|
||||||
|
/profiles/
|
||||||
|
/native/
|
||||||
|
|
||||||
|
node_modules/
|
||||||
|
.vscode/
|
||||||
|
.idea/
|
||||||
Reference in New Issue
Block a user