Add AIServer, character art pipeline, and Art package boot integration.
Bring in MaleExplorer assets/shaders, model tooling and Hunyuan updates, plus boot/YooAsset Art package support. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+30
-10
@@ -51,7 +51,7 @@ python Tools/gpt_image_generate.py --json "{\"prompt\":\"UI图集\",\"output\":\
|
||||
|
||||
### 能力说明
|
||||
1. 首期仅 **图生3D → GLB**。文生请先用上文「文/图生图」出图,再交给本脚本。
|
||||
2. 未登录或凭证失效时,会 **弹出 Edge 微信扫码**(同步阻塞,最长 `--login-timeout` 秒),成功后自动续跑。
|
||||
2. 未登录、凭证失效或**当前账号额度/次数用尽**时,会 **弹出 Edge 微信扫码页**(同步阻塞,最长 `--login-timeout` 秒);额度满时提示换号登录,成功后自动续跑。
|
||||
3. 面数:`--faces 50k|500k|1m`(默认 `50k`)。
|
||||
4. 任务中间文件在 `Tools/data/hunyuan/jobs/<job_id>/`;最终 GLB 写到 `-o`。
|
||||
5. 生成完成后须在 `Doc/ResDesc_Model.md` 登记资源(索引见 `Doc/ResDesc.md`)。
|
||||
@@ -64,7 +64,10 @@ python Tools/hunyuan_3d_generate.py --status
|
||||
# 预登录(弹出微信扫码)
|
||||
python Tools/hunyuan_3d_generate.py --login
|
||||
|
||||
# 图生3D(未登录则中途自动弹微信)
|
||||
# 强制换号登录(忽略本地凭证 / 额度满换号)
|
||||
python Tools/hunyuan_3d_generate.py --login --force-login
|
||||
|
||||
# 图生3D(未登录或额度满则中途自动弹登录页)
|
||||
python Tools/hunyuan_3d_generate.py -i ref.png -o Tools/output/prop.glb --faces 50k
|
||||
|
||||
# JSON / Agent
|
||||
@@ -77,6 +80,7 @@ python Tools/hunyuan_3d_generate.py -i ref.png -o out.glb --no-interactive-login
|
||||
### 流程回调 / 事件
|
||||
- `--callback-url` / `--callback-file` / NDJSON 与文生图脚本同模式
|
||||
- 典型事件:`login_required` → `login_waiting` → `login_ok` → `stage` → `succeeded` / `failed`
|
||||
- `login_required.reason`:`auth`(未登录/失效)或 `quota`(额度满需换号)
|
||||
|
||||
## 高模减面与贴图烘焙
|
||||
- 来源:复刻 `ClientTrunk/Tools/ModelTools`(`model_decimate` + `model_bake`)
|
||||
@@ -89,23 +93,39 @@ python Tools/hunyuan_3d_generate.py -i ref.png -o out.glb --no-interactive-login
|
||||
高模(FBX / GLB / glTF)
|
||||
-> 减面 + 重展 UV -> <名>_low.fbx
|
||||
-> Cycles selected-to-active 烘焙
|
||||
-> 低模 FBX + color / normal / ao / metallic / roughness PNG
|
||||
-> 五通道 PNG + 低模 FBX
|
||||
-> model_translator(默认)-> XPbr 两张图 + .mat/.meta
|
||||
<名>_base.png RGB=Albedo A=AO/透明
|
||||
<名>_mix.png RG=球面法线 B=Metallic A=Roughness
|
||||
```
|
||||
|
||||
### AI / 命令行调用
|
||||
```bash
|
||||
# 一键(推荐):减面 + 烘焙
|
||||
# 一键:减面 + 烘焙 + XPbr 打包(默认)
|
||||
python Tools/model_tools/model_lowpoly_bake.py Tools/output/prop.glb -o Tools/output/prop_game --tris 5000 --size 2048
|
||||
|
||||
# 分步
|
||||
python Tools/model_tools/model_decimate.py prop.glb --tris 5000 -o Tools/output/prop_low
|
||||
python Tools/model_tools/model_bake.py prop.glb Tools/output/prop_low/prop_low.fbx -o Tools/output/prop_bake --size 2048
|
||||
# 仅五通道、跳过 XPbr
|
||||
python Tools/model_tools/model_lowpoly_bake.py prop.glb -o Tools/output/prop_game --no-xpbr
|
||||
|
||||
# JSON / Agent
|
||||
python Tools/model_tools/model_lowpoly_bake.py --json "{\"high\":\"prop.glb\",\"out\":\"Tools/output/prop_game\",\"tris\":5000,\"size\":2048}" --result-only
|
||||
# 单独 XPbr 转换(输入为烘焙后的 FBX 目录旁贴图)
|
||||
python Tools/model_tools/model_translator.py Tools/output/prop_game/prop/prop.fbx -o Tools/output/prop_xpbr
|
||||
```
|
||||
|
||||
与混元衔接:先 `hunyuan_3d_generate.py` 出高模 GLB,再对本脚本做低模烘焙;完成后登记 `Doc/ResDesc_Model.md`。
|
||||
与混元衔接:
|
||||
|
||||
```bash
|
||||
python Tools/hunyuan_3d_generate.py -i ref.png -o Tools/output/{actor}_3d/{actor}.glb --faces 50k
|
||||
python Tools/model_tools/model_lowpoly_bake.py Tools/output/{actor}_3d/{actor}.glb -o Tools/output/{actor}_game --tris 5000 --size 2048
|
||||
python Tools/install_character_bundles.py -a {ActorName} -b Tools/output/{actor}_game/{actor}_xpbr -c ref.png
|
||||
# Unity: AIGame/M3/Setup Character Prefab + Art Collector(挂 Test/XPbr 生成预设)
|
||||
```
|
||||
|
||||
### 与 AIC#Project ModelTranslator 对比(减面/烘焙)
|
||||
- **更优(AIC#)**:默认 Quad Remesher 四边拓扑、更深 seam 扫描;本仓库未捆绑 QR 引擎。
|
||||
- **已对齐**:自适应烘焙射线、UV 最大单岛门限、XPbr base/mix 打包与 `Test/XPbr` 材质。
|
||||
- **本仓库优势**:高模直接吃 GLB/glTF(混元产物),一键流水线含 XPbr。
|
||||
|
||||
游戏目录:`AIClient/Assets/Bundles/Characters/{ActorName}/`;高模中间件留在 `Tools/output/`。完成后登记 `Doc/ResDesc_Model.md`。
|
||||
|
||||
## UI 自动生成(JSON → Prefab)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user