\
.webp +└─ 02_AI深度姿势库\ depth set (same paths, same filenames) +``` + +The two sets are path-for-path identical, so the node indexes one and resolves the other by the +`source` switch. Drop a new folder in and it shows up in the dropdowns within ~15 seconds — no restart, +no page refresh. + +**Inputs** + +| Name | What | +|---|---| +| `category` | 上半身单人 / 全身单人・标准系 / 全身单人・性感系 / 双人缠绵 | +| `group` | pose group, e.g. 站姿 / 坐姿 / 蹲姿 (30 in total) | +| `pose` | `P###_名称`, 288 in total. P-numbers repeat across categories, so the full folder name is the key | +| `view` | 正面 / 侧面 / 斜侧 / 俯视 / 仰视 | +| `source` | `线稿` (default) or `深度` | +| `long_edge` | output long edge, default 1024 — the source sheets are only 300×400. The result is down-aligned to a multiple of 16 (VAE requirement), so the real long edge can be up to 15 px smaller | +| `flip` | mirror horizontally, so you do not need a second sheet for the mirrored pose | + +The first three dropdowns cascade: picking a category narrows `group`, picking a group narrows `pose`. +**Changing any dropdown repaints the node in place** — the thumbnail of the selected sheet appears right +below the widgets, no prompt needs to be queued. The node grows itself on first load to make room; +drag its lower-right corner if you want the picture bigger. + +**Wiring** + +``` +[Pose Reference] ──image──▶ [TextEncodeQwenImage21] .images ─┐ + ├─▶ KSampler ─▶ VAEDecode ─▶ SaveImage +[UNet loader] [CLIP loader] [VAE loader] ──────────────────┘ +``` + +1. Double-click the canvas and search `Pose Reference` (category `Toggle-Pass`). +2. Pick 类别 → 姿势组 → 姿势 → 视角. The sheet shows up on the node as you click. +3. Wire `image` into the `images` input of your edit encoder (`TextEncodeQwenImage21`, + `TextEncodeFibo2`, …). The rest of the graph is your usual txt2img / edit graph. +4. `长边` sets the resolution fed to the encoder — 1024 is plenty, the sheets are only 300×400. The output is aligned down to a multiple of 16 so `VAEEncode` never has to pad or crop it (a half-pixel shift is very visible on line art). +5. Set `翻转` to `开` when you need the mirrored version of the same pose. + +**⚠️ Editing models (2511 / FLUX.2 / MOSS-Image / FIBO 2.0) need two images** + +Wiring a single sheet into these models **runs fine and produces an image, but the pose never changes**. +This is not a compatibility problem, it is semantics: the model treats `image1` of the edit encoder as +"the picture to be modified", so a lineart sheet in `image1` degrades the task into "redraw this lineart +photorealistically" and nothing in the prompt can bring the original subject back. + +Use multi-image editing instead: the **source photo goes to `image1`**, the **pose sheet goes to `image2`**. + +``` +[Load Image] ────image───▶ .image1 ┐ + ├─▶ [TextEncodeQwenImageEditPlus] ─▶ KSampler +[Pose Reference] ─image──▶ .image2 ┘ prompt: keep the subject and outfit of image1, + change the pose to the one in image2 +``` + +`image1 / image2 / image3` on `TextEncodeQwenImageEditPlus` are all plain `IMAGE` inputs, so the node +drops straight in with no converter. Verified on both 2511 and FLUX.2 — the subject is re-posed from +the `image2` skeleton. + +MOSS-Image and FIBO 2.0 work the same way, only the slots are the auto-growing +`image_0/image_1` (MOSS) and `image_1/image_2` (FIBO): + +``` +[Load Image] ────image───▶ .image_0 ┐ + ├─▶ TextEncodeMOSSImageEdit ─▶ KSampler +[Pose Reference] ─image──▶ .image_1 ┘ edit_format must match the edit LoRA's training format +``` + +Measured: both turn a standing photo into the seated pose of the sheet (MOSS 20.2 s, FIBO 16.1 s) +while keeping face, hair, outfit and background. ⚠️ MOSS only edits when +`moss_image_edit_lora_bf16` is loaded — without it you get the SFT base and the instruction barely moves. + +**Krea 2 — our own nodes can do it; two external packs exist if you need them** + +**Start here: no external pack required.** `Ref Image Encode` with `模型类型 = Krea2` reproduces what +`ComfyUI-krea2Edit` does with two nodes, because ComfyUI's native krea2 `_forward` *already has* the +in-context reference path (`ref_latents` → clean tokens at frame 1..N, target at frame 0) that +`Krea2EditModelPatch` rebuilds by hand. Two conditions must hold, and the node now handles both: + +1. `reference_latents_method = index` — **not** `index_timestep_zero` (that splits the adaLN + modulation into two timesteps and the reference gets traced into the frame). +2. Every reference latent is fitted to the output grid before VAE encoding — `h/w` identical to the + sampling start, so the RoPE positions differ only on the frame axis. + +``` +[Pose Reference] ─image─▶ .image1 ┐ + ├─▶ Ref Image Encode (模型类型 = Krea2) ─cond─▶ ToggleSampler ─▶ VAEDecode +[Load Image] ────image─▶ .image2 ┘ └latent (all-zero, 16 ch) ┘ +prompt: the woman from image 2, kneeling upright leaning back, chest lifted, back arched, + both hands reaching down and back to touch her heels, three-quarter rear-side view; + keep face / hair / outfit / background — see the warning below, do NOT shorten this +``` + +It also has a dedicated `negative` output (empty-text encode from the same CLIP) — wire that into the +sampler's negative input, so raising CFG later never corrupts the frame. + +⚠️ **Order is a hard convention: the LAST reference is the subject.** Sheet in `image1`, photo in +`image2`. Swapped, the model renders a line-art mannequin (measured) — the sheet is treated as the +thing to draw rather than the condition. Measured 8 steps at 720×1440: 70 s, seated pose, clean frame, +likeness kept, no external nodes. + +⚠️⚠️ **The prompt must describe the pose concretely — this is the easiest trap.** +A vague line like `图二美女参考图一的姿势,重新摆pose` ("the girl in image 2, follow the pose in +image 1, re-pose") does not make the model *read* the sheet. Measured with identical parameters and +seed: it treats the mannequin as a **second subject** and outputs a side-by-side collage of +"real person on the left + line-art mannequin on the right". The pose does not move at all. + +Same pose (P068 kneeling, leaning back, hands to heels, three-quarter view), three prompts: + +| Prompt | Result | +| --- | --- | +| `图二美女参考图一的姿势,重新摆pose` | ❌ person + mannequin collage, pose unchanged | +| `让图二中的女人摆出图一那个姿势:跪立、身体向后仰、胸部抬起、背部拱起,双手向后下方伸去触摸脚跟,头部微微后仰,采用四分之三侧后方视角。保持她的脸、发型、深蓝色泳装和海滩背景不变。` | ✅ single subject, pose correct | +| Same in English | ✅ single subject, pose correct (hands slightly closer to the heels) | + +Three mandatory parts: +1. **Name the subject** — "the woman from image 2", not "image 2's beauty" +2. **Anatomically describe the pose** — torso direction, where each limb goes, where the hands land, + head tilt, camera angle. "Follow the pose in image 1" alone conveys nothing +3. **List what must stay** — face, hair, outfit, background, item by item + +Chinese works fine; you do not have to write English. The point is specificity, not language. + +⚠️ Use `DynamicRefImageEncode` (`Ref Image Encode`), not `DynamicRefIndependent`: the latter encodes +each image into its **own** conditioning (that is the design for Qwen 2.1's per-image index planes), +and merging those does not give Krea2 one coherent reference sequence — measured line-art bleed plus a +wrong pose. + +**If you do reach for an external pack**, these two are mutually incompatible with each other and with +the two-input semantics above. Mixing them up gives "no error, but the line art gets painted into the +picture" — a wasted run: + +| Node pack | Encoder | Patch node | Where the pose sheet goes | Result | +| --- | --- | --- | --- | --- | +| `ComfyUI-Krea2-Ostris-Edit` | `TextEncodeKrea2OstrisEdit` | `Krea2OstrisEditModelPatch` | `image2` (with `image1` = photo) | ✅ skeleton-driven, no line art bleed | +| `ComfyUI-krea2Edit` | `Krea2EditGroundedEncode` | `Krea2EditModelPatch` | `image_b` + `source_latent_b` | ❌ the sheet is treated as a *second subject* and rendered | + +**The Ostris pack is the one that takes a skeleton:** + +``` +[Load Image] ─image─▶ [FluxKontextImageScale] ─▶ .image1 ┐ + ├─▶ TextEncodeKrea2OstrisEdit ─┐ +[Pose Reference] ─image─▶ [FluxKontextImageScale] ─▶ .image2 ┘ (one encoder each, pos/neg) │ + ▼ +[Load Diffusion Model] ─▶ [Krea2OstrisEditModelPatch] ─▶ [Load LoRA] ─▶ KSampler (8 steps, euler/simple, CFG 1) +``` + +`image1 / image2 / image3` are plain `IMAGE`, so the pose output drops straight into `image2`. +Measured with `krea_outfittransfer` + `kv_cache` on, same beach photo and sheet `P017`: 8 steps in +36.1 s, seated on the sand, **no line art left in frame**, face / hair / swimsuit / background intact. + +⚠️ Three things that have to match: +1. **`kv_cache` must match how the LoRA was trained.** LoRAs trained with ai-toolkit's `kv_cache` + kwarg (e.g. `krea_outfittransfer`) need it on; normally trained edit LoRAs drift when it is on. +2. **The LoRA must match the node pack.** Feeding `krea2_identity_edit_v2` (a krea2Edit-weight) into + the Ostris nodes also bleeds the sheet into the image — measured; the two use different geometry. +3. **Wrap both conditionings in `FluxKontextMultiReferenceLatentMethod`** (`index_timestep_zero`), + as the official workflow does. + +With only krea2Edit-family LoRAs you can still change the pose, but **by prompt only** — no skeleton image: + +``` +[Load Image] ─▶ source_latent / image ─▶ Krea2EditModelPatch ─▶ KSampler (8 steps, euler/simple, CFG 1) +prompt: have her sit on the sand, chest lifted and leaning back, hands braced beside her hips +``` + +Measured: `krea2_identity_edit_v2` took that prompt and turned the standing photo into a seated one, +but wiring the sheet into `image_b` renders the mannequin too. So: **need a skeleton → Ostris pack; +only krea2Edit weights → describe the pose in words.** + +**Can krea2Edit take a skeleton at all? Four wirings tested, none of them works** + +| Wiring | Pose follows the sheet? | Clean frame? | +|---|---|---| +| Sheet → `image_b` (+ `source_latent_b`) | yes | ❌ a white mannequin / transparent wireframe gets rendered into the shot, worse as `ref_boost` rises | +| `source_latent_b` only (no `image_b`, the TE never sees it) | ❌ no effect at all | yes | +| Sheet as the **main** image, photo as `image_b` (swapped roles) | yes | ❌ outline lines stay on the body | +| Convert the sheet to a **grey silhouette** (PIL) then feed `image_b` | ❌ pose unchanged | yes | + +Rows 2 and 4 were control experiments — the pose sentence was deleted from the prompt entirely, +and the output stayed in the photo's standing pose, proving all pose change came from the prompt +and not from the skeleton. Row 4 only fixes the dirty frame, not the driving. + +**The likeness difference is measured**: same source photo, same pose target — +`krea2Edit + krea2_identity_edit_v2` keeps the **same face**, while +`Ostris + krea_outfittransfer` clearly swaps the person (that LoRA is for outfit transfer). +So they are not interchangeable: + +- **Both at once** — identity kept *and* the pose driven by a sheet → `Ref Image Encode` + (`模型类型 = Krea2`) exactly as shown at the top of this section. No external pack, no second pass. +- **Identity preserved**, text-only edit (restage, outfit change, local edit) → this plugin's Krea2 path + or `krea2Edit` + describe the pose in words; both keep the face +- **Hardest possible skeleton lock**, and you can trade likeness → the `Ostris` pack +- Only if you already work in the krea2Edit pack and cannot switch → Ostris for the pose, then one + `krea2Edit` pass to recover the face + +⚠️ `ref_boost` / `grounding_px` are not "higher is better": `ref_boost=1.3` with `grounding_px=1024` +actually replaced the beach background with seaside rocks. Keep 1.0 / 768 and only nudge up if the face drifts. + +**Where the sheets live — three layers, merged at runtime** + +| Layer | Location | Ships with the plugin | +| --- | --- | --- | +| Built-in | `custom_nodes/ComfyUI-Toggle-Pass/pose_assets/` | yes — 1,530 sheets, only the two non-sensitive categories (`上半身单人`, `全身单人・标准系`) | +| Private | `ComfyUI/models/pose_reference/` | no — recommended home for your own and private sheets; it travels with your `models` backup | +| Custom | the `TP_POSE_ROOT` env var | no — only when you keep them somewhere else entirely | + +Lookup order is **`TP_POSE_ROOT` → `models/pose_reference` → built-in**, so a sheet of yours wins over +the built-in one of the same name. Installing the node is enough to browse and generate with the +built-in set; anything you drop into the private folder is picked up automatically: + +- **Drop a new pose group into `models/pose_reference` and the dropdown grows within ~15 s** — no page + reload. Deleting it makes it disappear just as fast (the node polls a cheap fingerprint of the library). +- Need it right now? Right-click the canvas → `🔄 刷新姿势素材库`. +- A root that does not exist is simply skipped: the node reports where it looked instead of failing + silently. + +**The workflow carries the sheet with it.** The selected file is inlined into the node as a data URI +(`properties.tp_pose`), so the graph is self-contained: + +- Someone who downloads your workflow **sees the picture and can run it without any local library**; +- Cost is roughly **+8–14 KB per node** (the sheets are 300×400 webp, 5–10 KB each); +- When a local library exists it always wins — the inlined copy is only a fallback; +- If the parameters were changed while the library was missing, the node keeps showing the inlined + sheet and says so, rather than going blank. + +**Output**: `image` (`IMAGE`) — connect straight to the `images` input of `TextEncodeQwenImage21`, +`TextEncodeFibo2`, or any other edit encoder. + +A ready-made graph ships as `example_workflows/Pose Reference Editing.json` (Qwen-Image-2.1 turbo, +8 steps). **It carries the selected sheet inside the node** (`properties.tp_pose`, a ~8 KB data URI), +so it opens and generates even on a machine that has no pose library at all. Together with the built-in +`pose_assets/`, a fresh install can browse 153 sheets across 12 groups out of the box. + +**Why lineart is the default.** Measured on FIBO 2.0 and Qwen-Image-2.1, one pose, two camera angles: +the depth set fabricated footwear or pads in **3 of 3** runs, the lineart set in **1 of 3**. A depth map +has no boundary line — the sole and the floor sit at nearly the same brightness, so the model fills the +bright area in with an object that is not there. Lineart carries an explicit black contour, and +`lineart → photoreal` is a transform these models saw in training. Depth keeps one advantage: volume, +which disambiguates occlusion when limbs overlap. Switch to it only for tightly intertwined poses. + +--- + + +### Qwen Image 2.1 Support + +`DynamicRefImageEncode`, `DynamicRefIndependent` and `OneImageMultiPrompt` all support **Qwen-Image-2.1** +image editing / multi-view generation. Select `Qwen Image 2.1` in `模型类型` and these parameters appear: + +| Parameter | Meaning | +|---|---| +| `宽高比` (Aspect ratio) | Preset ratios (1:1 / 3:2 / 16:9 / 21:9 ...), or `自定义(用输出宽度/高度)` | +| `百万像素` (Megapixels) | Total pixel budget, e.g. `1.0` ≈ 1024×1024, `2.6` ≈ 2016×1344. Range 0.1~16, **do not fill 1024 here** | +| `倍数` (Multiple) | Alignment step, fixed ≥ **32** (16 will break shapes) | +| `参考图分辨率` (Ref resolution) | How large the *reference* image is fed to the model (area target). `0` = keep original size | +| `尺寸适配` (Ref fit mode) | `参考图保比例` (default, no distortion) / `参考图裁剪` / `参考图拉伸` | + +Key rules learned from aligning with the official `TextEncodeQwenImage21`: + +- **Output size and reference size are independent.** `qwen_image` uses `default_ref_method = "index"`, + so the reference and the output live on separate RoPE planes and need not be the same shape. + Changing `参考图分辨率` does **not** change the output size. +- **Instructions must go into the prompt text, not the `instruction` field.** + `comfy/text_encoders/qwen_image21.py` drops the system turn, so anything written into `instruction` + is silently discarded for 2.1 — the node merges it into the user text automatically. + The default Flux-era English instruction is ignored (it would pollute the prompt). +- **The latent output is all-zero.** Feeding the reference image's real latent turns editing into img2img + (nothing changes). The real latent only goes into `reference_latents` in the conditioning. +- Images must be multiples of **32**; RGBA reference images are composited on white for the vision tower. + +Recommended setup for editing: `匹配原图尺寸` = **OFF**, `尺寸适配` = `参考图保比例`, +`百万像素` = 1.0, `倍数` = 32, `参考图分辨率` = 1024. + +✅ **The negative is already solved — `Ref Image Encode` has a dedicated `negative` output.** +Wire it straight into the sampler's negative input. It is a real empty-text encode from the same CLIP, +so it stays correct at **any** CFG (verified pixel-identical to a plain empty `CLIPTextEncode`). + +⚠️ Do **not** zero out the positive conditioning with `ConditioningZeroOut` and use that as the +negative. At CFG = 1.0 the negative is never evaluated, so it looks harmless; raise CFG and the frame +comes out **fully corrupted** (measured: green/purple blotches at 20 steps / CFG 2.5, both fp8 and +int8). Older builds of this node only had two outputs and the example workflow used +`ConditioningZeroOut` — that is exactly what bit people. + +**For pose editing, add `VNCCS_QI2_PoseStudioV2`** (`models/loras/Qwen/`, 152 MB, ai-toolkit, +base = `qwen_image_2`; `LoraLoaderModelOnly` is enough — pure `diffusion_model` keys). +Same prompt, across the Qwen 2.1 LoRAs on this machine: + +| LoRA | Result | +| --- | --- | +| bare model | works, 15 s at 8 steps | +| `VNCCS_QI2_PoseStudioV2` | ✅ **best**: pose tracked most accurately, richest detail, no line-art bleed | +| `QI2.1_AnyAngle` | ❌ line-art bleed on face/neck (reference gets painted into frame) | +| `qwen_image_2.1_turbo_lora_avg_rank_178` | usable but skin texture degrades; little pose help | + +Two verified setups: +- **turbo int8 + 8 steps + CFG 1.0** → 16.7 s, fast, good enough +- **`qwen-image-2.1-UC-fp8` + 20 steps + CFG 2.5** → 43.9 s, full body, best detail (empty-text negative) + +--- + + +### Krea2 Support + +`ToggleUnifiedLoader`, `DynamicRefImageEncode`, `DynamicRefIndependent` and `OneImageMultiPrompt` +all support **Krea2**. The loader detects `Krea2` from the UNet automatically and picks +`CLIPType.KREA2` + the `Krea2TEModel` text encoder; the three encoding nodes just need +`模型类型` = `Krea2`. + +⚠️ **VAE must match the model.** This is the single most common failure — mixing them up does not +fail at load time, it fails deep inside `VAEDecode`: + +| Model | VAE file | latent | +|---|---|---| +| Qwen-Image **2.1** | `qwen_image_2.1_vae_bf16.safetensors` | 64 ch / 16x / RGBA | +| **Krea2** | `qwen_image_vae.safetensors` | 16 ch / 8x / RGB | + +A wrong VAE is silently padded by `fix_empty_latent_channels` (16 → 64), sampling still finishes, and +then decode dies with `IndexError: tuple index out of range` from the Wan 2.1 branch. +The loader now compares `latent_channels` / `latent_dimensions` at load time and prints the exact file +you should use instead. + +Key rules learned from aligning with the official `TextEncodeQwenImageEditPlus`: + +- **Reference latent size = output size.** References are centre-cropped to the output aspect ratio and + resized to the exact output pixel grid *before* VAE encoding, so the reference latent matches the + sampling start dimension-for-dimension and the RoPE positions differ only on the frame axis — which is + the geometry the krea2_edit LoRAs were trained on. The vision tower still gets a ~384 px thumbnail. +- **The VAE only takes RGB** — alpha is dropped, not composited. +- **Vision placeholders must be written by hand.** With an explicit `llama_template` the Qwen3-VL + tokenizer does *not* auto-insert them, so the node emits + `Picture N: <|vision_start|><|image_pad|><|vision_end|>`. Without it the reference image is + completely invisible to the model. +- **`reference_latents_method` is mandatory, and it must be `index`.** Krea2's `default_ref_method` is + `None`, so references are *silently ignored* unless the method is set. `index_timestep_zero` runs but + is wrong for krea2_edit LoRAs: it splits the adaLN modulation into two timesteps (target = current t, + references = t=0) while training used a single shared tvec — a line-art reference then gets traced + into the frame. `index` keeps one tvec for the whole sequence and is the one that matches training. +- **The latent output is all-zero** (16 ch / 8x) — same "editing, not img2img" rule as 2.1. +- **Sigma curve:** Krea2 turbo uses the `自动(按步数 + 调度器)` scheme in `采样器(一体)`. + The `Qwen-Image-2.1 turbo 8步` table is *not* interchangeable with it. + +--- + + +### MOSS-Image / FIBO 2.0 Support + +`ToggleUnifiedLoader` picks both up automatically — `clip_type` now offers `moss_image` and `fibo2` +directly (`auto` also detects them from the UNet). Both are **Flux2-latent** models +(128 channels / 16x, `flux2-vae`), which is why `Ref Image Encode` needs **no extra model type: +just pick `Flux2`**. + +Measured with the pose sheet as the second image (standing beach photo → seated sheet): + +| Model | Native encoder | `Ref Image Encode` (Flux2) | +|---|---|---| +| MOSS-Image, 20 steps / CFG 4 | 19.6 s — seated, hands on the sand | 16.7 s — seated ✅ | +| FIBO 2.0, 4 steps / CFG 1 | 15.4 s — kneeling | 10.6 s — kneeling ✅ | + +No sketch figure leaked into either frame. What you give up by not using the native encoders: + +- **MOSS `edit_format`** — the reference method must match how the edit LoRA was trained + (`ai-toolkit` → `index_timestep_zero_isolated`, `ai-toolkit (kv_cache off)` → `index_timestep_zero`, + `Moss-Image-Edit` → `index_timestep_zero_text_start`). Picking the wrong one runs fine but edits + nothing. `Ref Image Encode` sets no method at all. +- **MOSS `image_strength`** and **FIBO `negative_prompt`** — neither is exposed there. +- Both native encoders take **AUTOGROW** image inputs, so a node output still plugs straight in: + `TextEncodeMOSSImageEdit` → `images.image_0 / image_1 …`, `TextEncodeFibo2` → `images.image_1 … image_16`. + +⚠️ `TextEncodeMOSSImageEdit` has a **single** conditioning output — encode the positive and the +negative with two separate nodes (the official template does exactly that). Writing `["node", 1]` +throws `list index out of range`, and the error points at the sampler rather than at the encoder. + +Sampler presets: `MOSS-Image(30步·CFG4)` and `FIBO 2.0 turbo(4步)`. + +--- + + +### Which dropdown do I pick? (`模型类型` vs `clip_type`) + +Two dropdowns look like they mean the same thing but are not: + +- **`模型类型`** lives on the reference-image encoders. It only decides **which latent shape comes out** + (and, for Krea 2, which `reference_latents_method` is used). +- **`clip_type`** lives on `Toggle Unified Loader`. It decides **how the text encoder is built**. + +Getting either one wrong usually fails silently (wrong channel count, wrong conditioning width, or a +clean-looking image with the prompt ignored). + +| Loading | `模型类型` (encoder) | `clip_type` (Unified Loader) | VAE | +|---|---|---|---| +| Qwen-Image **Layered** | `Qwen Layered` (+ `图层数`) | `qwen_image` | `qwen_image_layered_vae.safetensors` | +| Qwen-Image **2.1** | `Qwen Image 2.1` | `qwen_image` | `qwen_image_2.1_vae_bf16.safetensors` | +| **Krea 2** | `Krea2` | `krea2` | `qwen_image_vae.safetensors` | +| **FLUX.2 / MOSS-Image / FIBO 2.0** | `Flux2` | `flux2` / `moss_image` / `fibo2` | `flux2-vae.safetensors` | +| **Z-Image** | `SD / SDXL / Z-Image` | `stable_diffusion` (or `auto`) — **never `flux` / `flux2`** | `ae.safetensors` | +| **SD 1.5 / SDXL / Pony** | `SD / SDXL / Z-Image` | `stable_diffusion` | the checkpoint's own VAE | + +`SD / SDXL / Z-Image` is the *generic* slot on purpose: whenever the encoder takes an image anyway the +latent comes from `ref_latents[0]`, so this setting behaves the same for SD, SDXL, Pony, Z-Image and +Qwen-Image 1.0. It only means something ("4-channel all-zero latent") when nothing is connected. + +**Qwen-Image Layered specifics** (read off the official `image_qwen_image_layered.json`): + +- Text encoder is `qwen_2.5_vl_7b_fp8_scaled` — the **same** encoder as Qwen-Image 1.0 ⇒ `clip_type` = `qwen_image` +- VAE is **`qwen_image_layered_vae`**, not `qwen_image_vae`. Both are 16-channel, so a mismatch is + invisible until `VAEDecode` +- Latent is 5-D: `[B, 16, layers+1, h/8, w/8]` — exactly what `模型类型 = Qwen Layered` emits, + i.e. it replaces the official `EmptyQwenImageLayeredLatentImage` +- The bundled template actually runs **20 steps / CFG 2.5 / euler / simple / denoise 1** at 640 px with + `layers = 2`; its on-canvas note says the *original* settings were 50 steps / CFG 4.0 (even slower). +- Two variants ship: one starts from `EmptyQwenImageLayeredLatentImage`, the other from `VAE Encode(photo)`. + Both use `denoise 1`, so the start latent gets overwritten either way — what actually changes the + result is the `layers` count (latent dim 2 = `layers + 1`). **Only** when you want partial-denoise + refinement does the start latent matter, and then the encoder's all-zero latent is not what you want. + +**Z-Image warning:** do **not** set `clip_type` to `flux` / `flux2`. Z-Image's TE is Qwen3-4B, and +`comfy/sd.py` routes Qwen3-4B to the Flux encoder when `clip_type` is FLUX/FLUX2 — you get a different +TE class and the prompt is encoded wrong, with no error. + +Measured 2026-11-06 (same Z-Image unet, same `qwen_3_4b` + `ae`, only `clip_type` changed): + +| `clip_type` | text encoder actually built | | +|---|---|---| +| `stable_diffusion` | `ZImageTEModel_` | ✅ recommended | +| `auto` | `ZImageTEModel_` | ✅ (detects the class as `Lumina2`) | +| `qwen_image` | `ZImageTEModel_` | ⚠️ works by luck — Qwen3-4B is dispatched by TE type, not by this value | +| `flux` | `Flux2TEModel_` | ❌ wrong encoder class, silently bad prompt encoding | + +So `qwen_image` will *not* break Z-Image, but pick `stable_diffusion` (or `auto`) so the setting means +what it says. + + +### Is `clip_type = auto` reliable? + +**All 5 local models verified correct by real loading; 106 of 108 model classes agree in a static sweep.** +`auto` does not guess: + +1. It **actually loads the UNet** (not a header sniff) and reads the real class name — Qwen-Layered + comes out as `QwenImage`, Z-Image as its parent class `Lumina2`; +2. It resolves `CLIPType` in three layers — **exact table → MRO (base classes) → prefix rules**: + - the exact table only lists models where `clip_type` **actually changes the outcome** (table below); + - MRO catches subclasses: `FluxSchnell → Flux`, `KOALA_1B → SDXL`, `ZImagePixelSpace → ZImage`; + - prefix rules catch variants: `WAN21_I2V` / `WAN22_S2V` / `WAN_Animate2` … 16 WAN classes → `wan` (2 more are in the exact table); +3. Anything left falls back to `stable_diffusion` — **which is not a wrong guess**, because for that + third of the model set ComfyUI never looks at `clip_type` (the TE weights themselves already + determine which encoder gets built). + +**`clip_type` only matters when one TE weight file can go several ways.** Reading +`load_text_encoder_state_dicts` in `comfy/sd.py`, only these families are affected: + +| TE weights | Needs `clip_type` to distinguish | What you get if it's wrong | +|---|---|---| +| T5-XXL | SD3 / LTXV / WAN / CHROMA / PIXART / COGVIDEOX / MOCHI | falls into the `else` branch → **Mochi** TE | +| Qwen3-VL-8B | QWEN_IMAGE / IDEOGRAM4 / BOOGU / JOYIMAGE | generic `Qwen3VLTEModel_`; Qwen-Image 2.1 loses `image_slots` | +| Qwen3-VL-4B | KREA2 / FIBO2 / FLUX3 / MAGE / MINIMAX | same, generic Qwen3-VL | +| Qwen3-4B | FLUX / FLUX2 | Flux-family `Flux2TEModel_` (this is the Z-Image trap) | +| CLIP-G | SD3 / STABLE_CASCADE / HIDREAM | `SDXLRefinerClipModel` | +| Qwen2.5-7B | HUNYUAN_IMAGE / LONGCAT_IMAGE | the `qwen_image` TE | + +Everything else (Anima / AuraFlow / Cosmos / Lens / OmniGen2 / StableAudio / SAM / the 3D ones) +behaves identically whatever you pass, so the `auto` fallback is harmless there. + +**Measured 2026-11-06 (`clip_type = auto`, real loading):** + +| Model | What `auto` decided | TE actually built | | +|---|---|---|---| +| Qwen-Image Layered | exact `QwenImage` → `QWEN_IMAGE` | `QwenImageTEModel_` | ✅ | +| Z-Image | exact `Lumina2` → `STABLE_DIFFUSION` | `ZImageTEModel_` | ✅ | +| Krea2 | exact `Krea2` → `KREA2` | `Krea2TEModel_` | ✅ | +| FIBO 2.0 | exact `Fibo2` → `FIBO2` | `Fibo2TEModel_` | ✅ | +| MOSS-Image | exact `MOSSImage` → `MOSS_IMAGE` | `MOSSImageTEModel_` | ✅ | + +**Second safety net: the TE is validated right after loading.** If `auto` ever decides wrong (or +upstream adds a model class), it will not fail silently — the loader asks the model itself which +encoder it wants (`model_config.clip_target()`; answerable for 106 of 108 classes) and compares that +with the class actually built: + +``` +[ToggleUnifiedLoader] ⚠️ CLIP 校验失败:模型是 Krea2,但文本编码器建成了 Qwen3VLTEModel_ +(预期 Krea2TEModel,依据 手工表)。... +``` + +That check is not decoration: when `auto` gets it wrong, you see it **immediately**, instead of +discovering later that prompts "just don't work". + +**When not to use `auto`:** only if you deliberately want to pair a model with a mismatched encoder +for testing. In normal use `auto` beats hand-picking, which requires memorising the six rows above. + + +--- + + +### Z-Image: text-to-image only — pick `SD / SDXL / Z-Image`, never connect a reference image + +⚠️ Bottom line: **Z-Image has no reference-image capability. Leave `image1`–`image10` empty.** + +Evidence (measured, not guessed): + +- Of the five official `z_image` templates, `image_z_image` / `_int8` / `_turbo` / `_turbo_int8` + contain **no `LoadImage` at all** — pure text-to-image. The only one taking an image, + `image_z_image_turbo_fun_union_controlnet`, drives it through **ControlNet (Canny 0.1 / 0.32)**, + a line-art conditioning path completely different from reference-image editing. +- Z-Image is Lumina2 / NextDiT based and was never trained on reference tokens. If you do connect + `image1`, `reference_latents` is still injected into the conditioning, but the model has no matching + `reference_latents_text_embeds`, and the output becomes **a full frame of blocky mosaic** — + same result across seeds, size buckets and sampling start latents. + +**Correct usage:** `模型类型` = `SD / SDXL / Z-Image`, `image1` empty. + +This is not a workaround. With no reference images that branch emits a 4-channel all-zero +latent, which the core `fix_empty_latent_channels` pads to 16 channels — exactly the empty start Z-Image +needs. At a fixed seed it is pixel-identical to the native +`UNETLoader + CLIPLoader + VAELoader` graph (all four metrics equal: 51.5 / 214.5 / 46.9). + +**If you want Z-Image img2img:** use the native `LoadImage → VAE Encode → sampler (denoise < 1)` +instead. Prompt and denoise control the amount of change; the photo is the starting latent. + +**Reminder built in:** wire it wrong and the log says so (informational only, nothing is changed): + +``` +[Toggle-Pass][Ref Image Encode] ⚠️ 文本编码器 = ZImageTEModel_,已接入 1 张参考图, +但这个底座没有参考图通路。 +``` + +Z-Image has no separate entry in the `模型类型` dropdown by design — its behaviour is identical to the +generic `SD / SDXL` one, so the two were merged into the single name `SD / SDXL / Z-Image` instead of +adding an entry that would imply "pick this one and you can attach images". + +> Renamed 2026-11-06: the old value was `SD / SDXL`. Saved workflows are migrated automatically on +> load (front-end rewrites the widget value, back end also normalises the alias), so old graphs keep +> working unchanged. + +--- + +### Canvas Menu Entry + +All Toggle-Pass nodes are also reachable from the canvas menu (same place as KJNodes / rgthree entries): + +``` +🔄 Toggle-Pass ▸ + ├ 采样器(一体) + ├ Image Batcher + ├ Multi Ref Latent Input + ├ One Image Multi Prompt + ├ Ref Image Encode + ├ Ref Independent + └ ... +``` + +- The list is **collected at runtime** — new nodes show up automatically, no code change needed +- Clicking an item spawns the node **at your pointer position** + +--- + +### Privacy Mask + +SaveLoadImage, ToggleLoadImage, and TogglePreviewImage support privacy mask: +- Title bar shows 👁 (show image) / 🫣 (hide image) icon +- Click icon to toggle privacy state; when hidden, image preview area is blank +- Privacy state is saved/restored with workflow, does not affect image generation + +--- + +### Example Workflows + +Ready-to-load graphs live in [`example_workflows/`](example_workflows/) — drag a `.json` onto the +canvas, or open it from the workflow menu. + +| File | What it demonstrates | Extra deps | +| --- | --- | --- | +| `All-in-One Demo.json` | Every Toggle-Pass node in one graph: `ToggleUnifiedLoader`, `ToggleSampler`, `ToggleLoadImage` ×2, `ToggleImageCompare`, `TogglePreviewImage`, `DynamicRefImageEncode`, `SaveLoadImage` + `VAEDecode`. **Best place to start** — needs no third-party nodes. | — | +| `Graphic-Text Integration Editing.json` | Text + single reference image editing through `DynamicRefImageEncode`, saved by `SaveLoadImage`. | — | +| `Batch Editing.json` | Six input images batched into one reference set for batch editing. | `RTXVideoSuperResolution` | +| `Lazy Person's Multi-angle View.json` | One image + `OneImageMultiPrompt` ("一图多视角") to generate several camera angles in one run. | `CR Upscale Image` | +| `Pose Reference Editing.json` | `PoseReference` feeding a Qwen-Image-2.1 turbo edit graph (8 steps). **The selected sheet is embedded in the node**, so it opens and runs with no pose library installed. | — | +| `Krea2 Pose Editing.json` | 9 nodes, **7 of them from this plugin and zero external packs**: `ToggleUnifiedLoader` (UNet + CLIP + VAE + `krea2_identity_edit_v2` LoRA in one node) + `ToggleLoadImage` + `PoseReference` → `Ref Image Encode` (`模型类型 = Krea2`; pose sheet into `image1`, photo into `image2`, latent and negative both taken from its own outputs) → `ToggleSampler` on the `Krea 2 turbo(8步)` preset → `ToggleImageCompare` / `SaveLoadImage`. Measured 8 steps / 720×1440: ~70 s, standing → seated, no line-art bleed, likeness kept. | none | +> The model filenames inside these graphs reflect the author's local setup. If a loader shows red +> after loading, point it at your own checkpoint / text encoder / VAE. + +--- + +### Notes + +- When `num_images` changes, input/output slots auto-adjust, **existing connections are not broken** +- Switching pages and back, nodes auto-restore to correct slot count +- Requires Qwen2.5-VL or compatible CLIP model; Qwen-Image-2.1 requires Qwen3-VL 8B + `qwen_image` clip type +- Default instruction is for Qwen-Image-Edit models, modify as needed +- Only parameters relevant to the selected `模型类型` are shown; the rest are hidden +- Illegal widget values (e.g. `倍数 = NaN`) fall back to safe defaults on load. **After upgrading, + restart ComfyUI and hard-refresh (Ctrl+F5) once**, then save your workflow +- ⚠️ Modern node design (Vue nodes) breaks `widget.hidden` and custom drawing — with it enabled every + parameter stays visible and the privacy icon disappears. Turn it off in ComfyUI settings. +- ⚠️ On quantized checkpoints (INT8/FP8) a LoRA still takes effect, but it comes out "blurrier": ComfyUI + dequantizes → patches → re-quantizes with stochastic rounding, so the delta keeps its magnitude + (~115%) while its direction picks up noise (cosine 0.4–0.7). Pose/structure LoRAs stay visible, + very subtle style LoRAs may not. This is upstream behavior — official `LoraLoader` is identical + (A/B with the same seed gave **pixel-identical** output, meanAbsDiff = 0.00) +- The loader reports how many patches each LoRA actually wrote **plus module coverage** + (`192/224p`) — see the button labels above. A missing fraction usually means the checkpoint was + repacked and those layers don't exist in it, not that the LoRA failed to load +- ⚠️ **CLIP check (split mode)**: after loading, the loader verifies the text-encoder class it actually + built (e.g. `QwenImage21TEModel_` vs a wrong `QwenImageTEModel_` / `Flux2TEModel_`). A mismatched CLIP + file still runs silently but makes the conditioning useless; the button then shows `⚠️CLIP不符` + and the log prints the expected class + what to do +- ⚠️ **VAE check (split mode)**: the loader also compares latent channels / dimensions against the model. + A mismatched VAE never fails at load time — it dies later inside `VAEDecode` + (`IndexError: tuple index out of range`), so the loader now warns immediately and names the file to use +- Hiding/collapsing a LoRA group **reclaims the node height**, so the node never stays as a long empty box +- **Selection box on canvas follows the mouse again**: ComfyUI 1.57.x clamps the drag-selection rectangle to + `.graph-canvas-panel`, which only covers the lower part of the canvas — dragging in the upper half pushed the + box's top edge down (and squashed its height to 0), so the box seemed to appear "somewhere else". + `js/selection_rect_fix.js` rewrites that box's position from the real mouse points. Disable it with + `localStorage.setItem("tp_selrect_fix", "off")` in the browser console + refresh +- Python changes require a **ComfyUI restart**; pure JS changes only need Ctrl+F5 + +--- + + +## 中文 + +Toggle-Pass 系列节点——开关控制、图片加载/保存/预览、隐私遮罩、多参考图动态编码、统一模型加载、一体化采样器。 + +### 节点说明 + +#### ToggleUnifiedLoader — 统一模型 + LoRA 加载器 + +一体化模型加载节点:UNet + CLIP + VAE + 多 LoRA 整合到一个节点中。 + +**加载模式**(`加载模式`)— 一个节点,两种加载方式: + +| 模式 | 作用 | 显示的参数 | +|---|---|---| +| `分离组件 (UNet+CLIP+VAE)`(默认) | UNet / CLIP / VAE 分别指定 | `unet_name`、`clip_name`、`vae_name`、`clip_type` | +| `Checkpoint 一体包` | 加载一体化 checkpoint(等同官方 **CheckpointLoaderSimple**):自动猜配置,UNet + CLIP + VAE 一次出齐 | 只显示 `ckpt_name` | + +- **加载模式做成了一个两段式开关 `UNet | Checkpoint`**(不再是下拉框):点左半是分离组件、点右半是一体包, + 当前档高亮。开关位于**节点顶部第一行,与输出插槽 `模型 / MODEL` 同一行**,左端与**下方所有下拉框的 + 左边缘对齐** +- 底层 `加载模式` 的值照常保存与序列化,**旧工作流与 API 调用完全不受影响** —— 开关只是接管了绘制与点击 +- 「现代节点设计」(Vue 节点渲染)下,开关会改为画在下拉框内部 +- 选 `Checkpoint 一体包` 时,分离的三个模型下拉会自动隐藏,界面不眼花 +- **两种模式都能加 LoRA** —— LoRA 组在加载完成后统一应用 +- VAE 用一体包自带的(与官方简易版一致) +- **参数顺序:模型在最前** —— `ckpt_name` → `unet_name` → `clip_name` → `vae_name` → `clip_type` + → `加载模式` → LoRA 组 → 按钮。一体包模式下第一行就是 checkpoint 下拉框 +- 旧工作流能正常加载:加载时会按**参数名**把保存的值对回去,不会串位 +- 缺失的值仍然回退到默认模式(分离组件) + +**输入**: +- `ckpt_name` — `models/checkpoints` 里的 checkpoint 文件(只在「Checkpoint 一体包」模式下显示) +- `unet_name` — UNet 模型文件 +- `clip_name` — CLIP 文本编码器文件 +- `vae_name` — VAE 模型文件 +- `clip_type` — CLIP 类型(支持 auto 从 UNet 自动检测,也可手动选择:SD、SD3、FLUX、FLUX2、`qwen_image` 等) + - 自动检测能识别 Qwen-Image-2.1 的 UNet 类名(`QwenImage21`)并映射到 `qwen_image` + - ⚠️ **这是 2.1 的必备条件**:只有 `CLIPType.QWEN_IMAGE` 才能加载 2.1 专用文本编码器(Qwen3-VL 8B), + 它会生成 `image_slots`;否则会退回通用 Qwen3-VL 编码器,**参考图被静默丢弃** + - 也支持手动指定:怀疑自动检测没生效时直接选 `qwen_image` + - 现已支持 `fibo2` / `moss_image`(按 UNet 类名 `Fibo2` / `MOSSImage` 自动识别)。 + 这两个和 `krea2` **共用同一批权重文件**(FIBO 2.0 用 Qwen3-VL-4B,MOSS-Image 用 Qwen3.5-**9B**), + 但**取层方式完全不同** —— 选错不是「效果差一点」,而是 conditioning 维度对不上。 + 加载器同时校验文本编码器类名(`Fibo2TEModel_` / `MOSSImageTEModel_`)和 VAE + (两者都走 Flux2 latent,必须用 `flux2-vae*`,不能用任何 qwen VAE)。 +- `+ 添加 LoRA` 按钮 — 点击逐个添加 LoRA 槽位(最多 10 组) +- `- 移除 LoRA` 按钮 — 点击从最后一组开始移除(最多 10 组) + +**LoRA 控件**(通过按钮添加,最多 10 组): +- 选择 LoRA 文件 → 自动展开**一个**「强度」滑块 +- 选择 "none" → 自动隐藏滑块 +- 多个 LoRA 按顺序依次应用 + +> **只有一个强度滑块是有意为之**:CLIP 侧**始终跟随 MODEL 侧**,保证「看到的强度 = 实际生效强度」。 + +**跑完之后按钮上直接告诉你 LoRA 到底写没写进去**(后端回传,不用再猜): + +| 按钮文案 | 含义 | +|---|---| +| `· 224p` | LoRA **确实写进了模型**,共 224 个 patch(数字是 Python 侧统计的真实值) | +| `· 192/224p` | 这份 LoRA 的 224 个模块里只落下 192 个,剩下 32 个在当前底座上**没有对应层**。典型于**被 repack 过的 INT8 一体包**(如 `img_mlp.gate_layer` 被融进 `gate_up`),不是节点的问题 | +| `· ⚠️未写入` | 一个 patch 都没挂上 —— 架构不匹配 / 文件不对 | +| `· ⚠️N不匹配` | N 个 LoRA 的键名跟底座完全对不上(拿错底座的 LoRA) | +| `· ⚠️N跳过` | N 个 LoRA 被跳过(文件找不到) | +| `· ⚠️N个强度0` | 有 N 个已选 LoRA 强度是 0 —— 等于没加 | +| `· ⚠️CLIP不符` | 建出的文本编码器与模型不配套(分体模式下换错 CLIP 文件 / 选错 clip 类型)—— 提示词会被错误编码,跑得通但什么都不生效 | + +按钮文案故意写得很短(太长会溢出窄节点),鼠标悬停在按钮上能看到**每个 LoRA 的完整明细** +(模块覆盖率、CLIP 校验结果、每个槽位实际写入的 patch 数); +另外只要增删/切换 LoRA,上一次运行的数字会立刻清掉,不会留一个过期读数误导你。 +注意它反映的是「patch 有没有写进去」,不等于「画面上一定看得出来」——量化底座、参考图主导的编辑、过于细微的 LoRA,都会让效果不明显。 + +**输出**:`MODEL`、`CLIP`、`VAE` + +**全局广播**(节点自带开关,不需要装任何额外插件): + +打开后,点「运行」时会把这三个输出**自动接到图里所有空着的** `MODEL` / `CLIP` / `VAE` 输入上, +不用再横跨半张画布拉线。关掉(默认)就完全保持原样,自己连线。 + +- 这些线**只在提交的那一刻真实存在**,提交完立刻拆掉 —— 不会被存进工作流 +- **开关打开时,画布上会用紫色曲线画出「运行时会自动接上的每一条线」**,起点/终点各有一个小圆点, + 精确落在输出口和输入口上。曲线只是视觉预览:不创建真实连线、不参与序列化,关掉开关立刻消失 +- **会被接上的槽位会「点亮」**:这些口还是空的(没有真实连线),官方按「未连接」画成空心圈, + 所以广播开着时会给它们补一个**实心点**,颜色就是该槽位类型的官方配色 —— 和手动连线后的观感一致, + 一眼就能看出「哪些口会被自动接上」、哪些本来就连好了。关掉开关就恢复空心 +- **曲线和圆点都从节点背后穿过**:画在节点下层,节点之间的空白处正常显示,穿过节点的地方(含端点圆点 + 被节点压住的那半边)被节点自然遮住,所以永远不会盖住节点标题和参数,也不会在你拿节点当遮罩时透出来 + (节点排得密时可见部分会少一些,这是刻意的取舍) + - 想回到「圆点永远画在最上层」的旧观感:控制台执行 `localStorage.tp_dots_layer = "front"` 再刷新 +- **只补空位**:凡是已经手连的输入一律不动,所以「自动」和「手动」可以在同一张图里混用 +- 只覆盖 `MODEL` / `CLIP` / `VAE`(也就是本节点的三个输出) +- 如果图里有多个加载器都开了广播,同一类型只取第一个,并在控制台给出提示 +- **开关在节点顶部**:就在 `加载模式` 那个 `UNet / Checkpoint` 胶囊的**正下方、左半边**(一个小胶囊, + 左边写「广播」)—— 点一下切换。它不再占用节点底部一整行,底部只剩 LoRA 那两个按钮 +- 开关状态存在节点的 `properties` 里,**不占 `widgets_values`** —— 旧工作流的每一项参数位置都不变, + 开关默认关闭 +- 与 `cg-use-everywhere` 共存,不碰它那套 `ue_convert` 标记 + +> **限制**:广播发生在前端,所以「界面里点运行」和「从界面导出 API 格式」都算数; +> 但直接 `POST /prompt` 提交手写的 API JSON 不经过前端,就不会自动接线 —— +> 需要的话在界面里导出一次 API 格式,导出的 JSON 里线已经带好了。 + +--- + +#### SaveLoadImage — 保存/加载切换 + +图片保存节点,支持 Save/Load 模式切换。 +- **Save 模式**:保存图片到 output 目录,同时输出 IMAGE 和 MASK +- **Load 模式**:直接复用上次保存的图片,跳过保存流程 +- 点击标题栏 👁 图标可切换隐私遮罩(隐藏/显示图片预览) + +#### ToggleLoadImage — 加载图片 + +自定义加载图像节点,和原生 LoadImage 功能一致,额外支持隐私遮罩。 +- 点击标题栏 👁 图标可切换隐私遮罩(隐藏/显示图片预览) + +#### TogglePreviewImage — 预览图片 + +自定义预览图像节点,不保存到 output 目录(保存到 temp),支持隐私遮罩。 +- 点击标题栏 👁 图标可切换隐私遮罩(隐藏/显示图片预览) + +#### ToggleEmptyLatent — 开关空 Latent + +可切换的空 Latent 生成节点。 +- **ON**:使用 width/height 参数生成 +- **OFF**:使用 fallback_width/fallback_height 参数(可用于 A/B 尺寸对比) +- **`latent类型`** — 通道数与空间压缩比,必须和底模的 `latent_format` 对齐: + | 选项 | 通道 | 压缩比 | 适用模型 | + |---|---|---|---| + | `SD / SDXL(4 通道 · 8×)` | 4 | 8× | SD 1.5 / SDXL / Pony | + | `SD3 / Flux / Krea 2(16 通道 · 8×)` | 16 | 8× | SD3、Flux.1、**Krea 2**(走 Wan21 格式,`latent_dimensions=3`)| + | `Qwen-Image 2.1(64 通道 · 16×)` | 64 | 16× | Qwen-Image 2.1 | + | `Flux2(128 通道 · 16×)` | 128 | 16× | FLUX.2 | + + 默认是 `SD / SDXL`,老工作流行为不变。选错**不会报错** —— K采样器发现 latent 全零时 + 会用 `fix_empty_latent_channels` 悄悄补齐通道,但绕过采样器直接用 latent 的节点拿到的形状就是错的。 + 选对时输出与官方 `EmptySD3LatentImage` 完全一致(实测 shape、dtype、`downscale_ratio_spacial` 全等,张量差为 0)。 + +--- + +#### DynamicRefIndependent — 多参考图独立编码(核心节点) + +每张参考图独立 VAE 编码,输出各自独立的 CONDITIONING 和 LATENT,适合多图各自控制风格/内容的场景。 + +**输入**(动态,由 `num_images` 控制): +- `clip` — CLIP 模型 +- `vae` — VAE 模型 +- `num_images` — 参考图数量(1~10) +- `instruction` — 系统提示词(可留空使用默认) +- `image1` ~ `imageN` — 参考图 +- `prompt1` ~ `promptN` — 每张图对应的提示词(控件在节点内,可折叠) + +**模型类型**:`Flux2` / `Qwen Layered` / `Qwen Image 2.1` / `SD / SDXL / Z-Image` +- 选择 `Qwen Image 2.1` 会展开 2.1 专属参数组(见 [Qwen Image 2.1 支持](#qwen-image-21-支持)) +- 选择 `Qwen Layered` 会展开「图层数」 +- `SD / SDXL / Z-Image` 是通用档;**纯文生图模型(如 Z-Image)用它,且参考图槽别接**(见 [Z-Image 用法](#z-image-用法)) +- 每种模型只显示自己用得上的参数,其余自动隐藏,界面不会眼花 + +**输出**(动态,N×2 个): +- `cond_1`, `latent1`, `cond_2`, `latent2`, ... `cond_N`, `latentN` + +**用法**: +1. 拖入节点,默认 1 张参考图 +2. 调整 `num_images` 到需要的数量(1~10),输入槽和输出槽自动增减 +3. 每张图连接自己的参考图,填写对应 prompt +4. `cond_N` 连到 sampler 的 conditioning,`latentN` 连到 VAE Encode 的 latent(供参考图编码使用) + +--- + +#### DynamicRefImageEncode — 动态参考图编码 + +单张 prompt 控制,动态增删参考图输入槽。 + +**输入**:`clip`, `num_images`, `prompt`, `image1` ~ `imageN` +**输出**:`CONDITIONING`, `LATENT`, `NEGATIVE`(所有图共享同一份 conditioning,分别输出 latent)。 +第二个输出是**现成的空文本负条件**(用同一个 CLIP 编码),直接接采样器的「负面条件」即可。 +用它替代「把正面条件 `ConditioningZeroOut` 清零当负面」:CFG=1.0 时两者完全一样, +但 CFG 一超过 1,清零版会把整张图弄花。 +这个输出只在 `Ref Image Encode` 上有;`Ref Independent` / `一图多视角` 要用 CFG>1 时, +请自己接一个空文本的 `CLIPTextEncode` 到负面。 + +**模型类型**:`Flux2` / `Qwen Layered` / `Qwen Image 2.1` / `SD / SDXL / Z-Image` / `Krea2` +- `SD / SDXL / Z-Image`:通用档,输出 4 通道全零 latent,由官方 `fix_empty_latent_channels` 补到模型需要的 + 通道数。**纯文生图模型(如 Z-Image)就用这个档,参考图槽一个都别接** —— Z-Image 没有参考图通路, + 接上必出方块马赛克,详见 [Z-Image 用法](#z-image-用法) +- `Qwen Layered`:增加「图层数」参数;输出的 latent 为分层格式(`[1, 16, layers+1, h/8, w/8]`),可直接接到 K采样器的 latent 输入(省掉 `EmptyQwenImageLayeredLatentImage` 节点) +- `Qwen Image 2.1`:增加 2.1 专属的分辨率参数组(详见下方小节) +- `Krea2`:latent 走 Wan21(16 通道 / 8x,VAE 是 `qwen_image_vae`);参考图只进 `reference_latents`, + 采样起点是全零 latent,并自动补 `reference_latents_method=index`(不给就会被静默忽略)。 + **故意不用 `index_timestep_zero`** —— 那会给参考图单独一套 t=0 的 adaLN 调制,与 krea2_edit 系 LoRA + 的训练方式(全序列共用一个 tvec)不符。实测:用 `index_timestep_zero` 时参考线稿会被「描」进画面 + (脸上出现轮廓线),用 `index` 则干净。参考图的 latent 还会 fit 到出图网格,详见下方 Krea 2 小节 +- **`MOSS-Image` / `FIBO 2.0` 请直接选 `Flux2`** —— 三者 latent 完全同族(128 通道 / 16x,都用 `flux2-vae`)。 + 实测把参考姿势节点接成第二张图能正常改姿势(MOSS 16.7s / FIBO 10.6s,画面内无线稿残留)。 + 但 MOSS 的 `edit_format`(三档训练格式,必须与 LoRA 配对)、`image_strength`, + 以及 FIBO 的 `negative_prompt` 本节点都不提供 —— 需要精确控制这三项时, + 请改用官方编码器 `TextEncodeMOSSImageEdit` / `TextEncodeFibo2`(它们是多图 AUTOGROW,本节点接哪个都能直接插) +- 每个模型类型只显示自己需要的参数,切换下拉框即自动隐藏其余的 +- 「匹配原图尺寸」= ON 时,使用图片实际尺寸;= OFF 时,2.1 走分辨率参数组,其他模型仍用「输出宽度/高度」(旧行为不变) + +#### DynamicRefLatentInput — 动态 Latent 输入 + +动态增删 LATENT 输入槽,配合 DynamicRef 系列使用。 + +#### ImageBatcher — 图像批处理 + +动态增删 IMAGE 输入槽,将多张图打包成批次。 + +#### ToggleImageCompare — 图片对比 + +把多张「原图」与多张「结果」拼成一张对比图,节点内直接预览。 + +**输入**:`num_sources`、`num_results`、`source1`~`source10`、`result1`~`result10` +- `num_sources` / `num_results` — 每组显示几个槽(1~10),两组各自独立, + 所以 **N 张原图 + 1 张结果** 和 **N 张原图 + N 张结果** 都支持 +- `source1`~`source10` — 原图(before) +- `result1`~`result10` — 结果(after) + +> 节点上显示为 `原图1`~`原图10` / `结果1`~`结果10`、`原图数` / `结果数`、输出 `对比图`; +> 上面这些英文 key 保持不变,为了兼容已保存的工作流。 + +**参数** +- `排版` — `自动` / `成对并排` / `上下两排` / `自动网格` + - `自动`:两组数量相等时用「成对并排」,不等时用「上下两排」 +- `标签` — 在每张图上烧 `原1 / 结1 …` 角标,或隐藏 + +**输出**:`comparison` —— 一张合成图(可直接接 `SaveLoadImage` 或预览节点) + +排版按**实际接上的图**算,而不是你开了几个槽,所以数量变了也不用改设置。尺寸不一样的图会 +按行统一高度缩放(保持宽高比)。 + +#### OneImageMultiPrompt — 单图多提示词(一图多视角) + +一张参考图对应多个提示词,分别输出各自的 conditioning(最多 8 组),共享同一个 latent。 + +**输入**:`clip`、`image`、`prompt数量`、`prompt1` ~ `prompt8` +- `prompt数量` — 用几个提示词(2~8),多余的 prompt 框会自动隐藏 +- `模型类型` — `Flux2` / `Qwen Image 2.1` / `SD / SDXL / Z-Image` / `Krea2`。选 `Qwen Image 2.1` 会展开完整的分辨率参数组, + 适合「一张图出多个视角 / 多种编辑」。纯文生图模型(如 Z-Image)选 `SD / SDXL / Z-Image` 且不接参考图, + 见 [Z-Image 用法](#z-image-用法)。 + +**输出**:`cond_1` ~ `cond_8`、`latent` + +--- + +#### ToggleSampler — 采样器(一体) + +把官方四件套收进一个节点: + +``` +随机噪波 + CFG引导器 + K采样器选择 + (基础调度器 | 手动Sigmas) -> SamplerCustomAdvanced +``` + +**输入**:`模型`(MODEL)、`正面条件` / `负面条件`(CONDITIONING)、`Latent图像`(LATENT) +**参数**(按节点上的显示顺序):`⚡预设`、`Sigma 曲线`、`采样器`、`调度器`、`步数`、`CFG`、`降噪`、`噪波随机种`、`自定义Sigma表` +**输出**:`Latent`、`降噪Latent` + +> 控件的**显示名**和内部参数名是分开的:`⚡预设` 的内部名是 `模型预设`,`Sigma 曲线` 的内部名是 +> `采样方案`。之所以只改 label 不改 name —— 存档的 `widgets_values_named` 和 `/prompt` 的 `inputs` +> 都按 name 走,改 name 等于让所有已存工作流失联。 + +模型 / 条件 / Latent **故意保留成插槽**——真正随模型变的只有 sigma 曲线,所以换模型不用换节点。 +`Sigma 曲线` 分三类: + +| 方案 | 作用 | 生效参数 | +|---|---|---| +| `自动(按步数 + 调度器)` | 现场算 sigma,与官方 `BasicScheduler` 数值完全一致 | `步数` + `调度器` | +| 预置表:`Qwen-Image-2.1 turbo 8步`、`LTX-2 视频 8步(蒸馏)`、`LTX-2 视频 3步(低噪)` | 蒸馏模型专用的固定轨迹 | 无——步数已写进表里 | +| `自定义表` | 手填一串 sigma | `自定义Sigma表` | + +sigma 表规则:逗号分隔、**严格递减**、**末值必须是 0**、`N` 个点 = `N-1` 步(9 个点 = 8 步)。 + +选了预置表之后失效的参数会自动变灰**并锁住**:`步数` 会跳到该表真实的步数(看得见但改不动), +切回 `自动` 会还回你自己设的步数。`降噪` < 1.0 会裁掉表的尾部,所以预置表也能做低降噪细化。 + +蒸馏 turbo 模型推荐 `采样器` = `euler`、`CFG` = `1.0`。 + +#### ⚡预设(一键填好常用参数) + +节点**最上面**的 `⚡预设` 是一个快捷填充:选中某个模型,它会把 +`Sigma 曲线 / 采样器 / 调度器 / 步数 / CFG` 五项一次性改好,不用每次手动调。 +`降噪` 和 `噪波随机种` 不归它管(那两项取决于任务,不是模型)。 + +放在最上面而不是最下面,是因为真实顺序就是「先定模型、再微调」;两个下拉挨着也容易 +被误认为重复,所以名字也分开了:`⚡预设` 管一整套参数,`Sigma 曲线` 只管噪声轨迹。 + +| 预设 | Sigma 曲线 | 采样器 | 调度器 | 步数 | CFG | +|---|---|---|---|---|---| +| Qwen-Image 2.1(25步) | 自动 | euler | simple | 25 | 1.0 | +| Qwen-Image 2.1 turbo(8步·固定表) | 预置表 | euler | simple | 8 | 1.0 | +| Krea 2 turbo(8步) | 自动 | euler | simple | 8 | 1.0 | +| Krea 2 turbo・细节增强(12步) | 自动 | euler | simple | 12 | 1.0 | +| FLUX.2 klein(4步·beta) | 自动 | euler | beta | 4 | 1.0 | +| FLUX.2 klein・高清修复(4步) | 自动 | euler_ancestral | simple | 4 | 1.0 | +| Z-Image turbo(8步) | 自动 | euler_ancestral | simple | 8 | 1.0 | +| Qwen-Image Layered(9步·CFG2.5) | 自动 | euler | simple | 9 | 2.5 | +| Qwen-Image Edit 2511 AIO(4步) | 自动 | euler_ancestral | beta | 4 | 1.0 | +| FIBO 2.0 turbo(4步) | 自动 | euler | simple | 4 | 1.0 | +| MOSS-Image(30步·CFG4) | 自动 | euler | normal | 30 | 4.0 | +| 手动(不套用) | — | — | — | — | — | + +**语义是「一键填充」,不是「持续锁定」**:套完预设后你手动改这五项里的任何一个, +下拉会自己退回 `手动(不套用)`——所以控件显示的永远是真实状态, +不会出现「写着 Qwen 预设、其实在跑 40 步」。 + +预设表只写在 `sampler.py` 的 `MODEL_PRESETS` 里,前端通过 +`GET /toggle_pass/sampler_presets` 拉取,**不在 JS 里另抄一份**;加模型只改 Python 一处。 +改名时请在 `PRESET_ALIASES` 里补一条「旧名 → 新名」,否则已经存过旧值的存档会显示空白。 + +数值全部取自本机 `user/default/workflows/` 里实际跑通的工作流(每个预设的上游文件 +写在 `sampler.py` 的注释里),改之前请先跑一遍再回头调这张表。 + +--- + + +### 参考姿势(Pose Reference) + +`PoseReference` 从本地姿势素材库里挑一张参考图,以普通 `IMAGE` 的形式交给任意编辑模型的图像输入—— +不需要 ControlNet,也不需要额外模型。 + +**素材目录结构**——节点会合并最多三个根目录,按名字去重,同名以靠前的为准: + +| 顺序 | 根目录 | 说明 | +|---|---|---| +| 1 | `TP_POSE_ROOT` 环境变量 | 只有你设了才生效,指向完全自定义的位置 | +| 2 | `ComfyUI/models/pose_reference/` | 推荐放自己的和私密素材——备份 `models` 时会一起带走 | +| 3 | `custom_nodes/ComfyUI-Toggle-Pass/pose_assets/` | 插件自带,随插件分发 | + +每个根目录内部结构一样: + +``` +<根目录>\ +├─ 01_AI线稿姿势\ 线稿套 +│ └─ <大类>\<姿势组>\
\
.webp
+└─ 02_AI深度姿势库\ 深度套(路径、文件名与线稿套一一对应)
+```
+
+两套完全对应,所以节点只索一套,取图时再按 `源` 决定去哪个根目录拿。
+丢一个新目录进去,约 15 秒内下拉里就会自己出现——不用重启,也不用刷新页面。
+
+**输入**
+
+| 参数 | 说明 |
+|---|---|
+| `类别` | 上半身单人 / 全身单人・标准系 / 全身单人・性感系 / 双人缠绵 |
+| `姿势组` | 站姿 / 坐姿 / 蹲姿 等,共 30 组 |
+| `姿势` | `P###_名称`,共 288 个。编号在不同大类里会重复,所以以完整目录名为准 |
+| `视角` | 正面 / 侧面 / 斜侧 / 俯视 / 仰视 |
+| `源` | `线稿`(默认)或 `深度` |
+| `长边` | 输出图长边,默认 1024——素材原始只有 300×400。缩放后会向下对齐到 **16 的倍数**(VAE 下采样要求),所以实际长边可能比设定值小最多 15px |
+| `翻转` | 水平镜像,左右相反的姿势不用另找素材 |
+
+前三个下拉是联动的:选了大类只列该类下的姿势组,选了组只列该组下的姿势。
+**任意一个下拉一改,节点下半部分立刻重画**——选中的那张素材直接显示在参数下面,不用先执行工作流。
+节点首次加载时会自动撑高给图片腾位置;想看得更大就把节点右下角往下拉。
+
+**怎么接**
+
+```
+[参考姿势 Pose Reference] ──image──▶ [文本编码器 Qwen Image 2.1] .images ─┐
+ ├─▶ K采样器 ─▶ VAE解码 ─▶ 保存图像
+[UNet 加载器] [CLIP 加载器] [VAE 加载器] ────────────────────────────────┘
+```
+
+1. 画布空白处双击,搜 `Pose Reference`(分类 `Toggle-Pass`),或用右键菜单 新建节点 → Toggle-Pass → 参考姿势。
+2. 依次选 `类别` → `姿势组` → `姿势` → `视角`,每选一次节点上的图就跟着换,选到满意为止。
+3. 把 `image` 输出接到编辑编码器(`TextEncodeQwenImage21`、`TextEncodeFibo2` 等)的 `images` 输入,
+ 其余节点跟你平时的文生图/图编辑工作流完全一样。
+4. `长边` 决定送进编码器的分辨率,1024 足够(素材本身只有 300×400)。输出会自动向下对齐到 16 的倍数,这样 `VAEEncode` 不需要自己 pad/crop——线稿对半像素位移特别敏感,错一点整个人就歪了。
+5. 需要左右镜像的同一姿势,把 `翻转` 设成 `开`,不用另找素材。
+
+**⚠️ 接「编辑模型」(2511 / FLUX.2 / MOSS-Image / FIBO 2.0)必须接两张图**
+
+单张接法在这些模型上**不报错、能出图,但人物姿势一点都不变**——这跟兼容性无关,是语义问题:
+编辑编码器的 `image1` 被模型当成「这张就是要被修改的原图」,你把线稿接到 `image1`,
+任务就退化成「把这张线稿重绘成真人」,提示词里再怎么描述动作都没用。
+
+正确画法是**多图编辑**:待修改的原图接 `image1`,参考姿势接 `image2`。
+
+```
+[加载图像] ────image───▶ .image1 ┐
+ ├─▶ [文本编码器 Qwen Image Edit 2511] ─▶ K采样器
+[参考姿势] ────image───▶ .image2 ┘ 提示词:保持 image1 的人物和服装,把姿势改成 image2 的姿势
+```
+
+`TextEncodeQwenImageEditPlus` 的 `image1 / image2 / image3` 都是 `IMAGE` 类型,本节点输出可以直接接,
+不用加任何转换节点。实测 2511 与 FLUX.2 在多图接法下都会按 `image2` 的骨架重摆人物。
+
+MOSS-Image 与 FIBO 2.0 同理,只是插槽叫自动增长的 `image_0/image_1`、`image_1/image_2`:
+
+```
+[加载图像] ──▶ .image_0 ┐
+ ├─▶ TextEncodeMOSSImageEdit ─▶ K采样器
+[参考姿势] ──▶ .image_1 ┘ edit_format 必须与 edit LoRA 的训练格式一致
+```
+
+实测这两个模型都能把一张站姿照片改成素材里的坐姿(MOSS 20.2s / FIBO 16.1s),
+人脸、发型、服装、背景均保持不变。⚠️ MOSS 的编辑能力来自 `moss_image_edit_lora_bf16`,
+不加载它就只有 SFT 底座,指令基本不生效。
+
+**Krea 2:先看本插件的节点;装了两套外部节点包的话再往下看**
+
+**本插件自己的节点就够了,不需要任何外部插件。** `Ref Image Encode` 把「模型类型」选成 `Krea2`,
+就能复现 `ComfyUI-krea2Edit` 两个节点做的事 —— 因为 ComfyUI 原生 krea2 的 `_forward` **本来就有**
+这条 in-context 参考通路(`ref_latents` → 干净 tokens 放 frame 1..N,target 放 frame 0),
+`Krea2EditModelPatch` 只是手工把它重建了一遍。两个前提,节点现在都替你处理了:
+
+1. `reference_latents_method = index`,**不是** `index_timestep_zero`(后者把 adaLN 调制拆成两个
+ 时间步,参考线稿会被描进画面);
+2. 每张参考图的 latent 在 VAE 编码前先 fit 到出图网格 —— `h/w` 与采样起点逐维相同,
+ RoPE 位置只在 frame 轴上不同。
+
+```
+[参考姿势] ─image─▶ .image1 ┐
+ ├─▶ [Ref Image Encode(模型类型 = Krea2)] ─条件─▶ [采样器(一体)] ─▶ [VAE解码]
+[加载图像] ────image─▶ .image2 ┘ └latent(全零 16 通道)┘
+```
+
+它还有一个专门的 `negative` 输出(用同一个 CLIP 编出来的空文本条件)—— 接到采样器的「负面条件」,
+这样以后想把 CFG 提上去也不会花屏。
+
+⚠️ **顺序是硬约定:最后一个参考图 = 主体。** 姿势线稿放 `image1`、原照片放 `image2`。
+反过来会直接渲成一个线稿人偶(实测)—— 因为模型会把线稿当成「要画的东西」而不是「条件」。
+实测 8 步 720×1440:70s 出图,坐姿正确、画面干净、人物一致性保持,全程不用外部节点。
+
+⚠️⚠️ **提示词必须把姿势写具体,这是最容易踩的坑。**
+只写「图二美女参考图一的姿势,重新摆pose」这种笼统句子(同参数、同 seed 实测)——
+模型不会去「理解」线稿,而是把线稿人偶当成画面里的**第二个主体**,直接输出
+「左边真人 + 右边线稿人偶」的并排拼贴图。姿势一个字都不会动。
+
+同一个姿势(P068 跪立后仰・手触脚跟 / 斜侧),三种写法实测:
+
+| 提示词 | 结果 |
+| --- | --- |
+| `图二美女参考图一的姿势,重新摆pose` | ❌ 左人+右线稿人偶的拼贴,姿势未变 |
+| `让图二中的女人摆出图一那个姿势:跪立、身体向后仰、胸部抬起、背部拱起,双手向后下方伸去触摸脚跟,头部微微后仰,采用四分之三侧后方视角。保持她的脸、发型、深蓝色泳装和海滩背景不变。` | ✅ 单人物,姿势到位 |
+| 同上的英文版 | ✅ 单人物,姿势到位(手更贴脚跟一点) |
+
+写提示词的三个必填项:
+1. **主体指认** —— 明确「图二中的女人」(不是「图二美女」)
+2. **姿势的解剖描述** —— 躯干方向、四肢位置、手放哪里、头朝哪、机位角度。
+ 光说「参考图一的姿势」等于没说
+3. **保持不变的东西** —— 脸/发型/服装/背景逐项列出
+
+中文可用,不必强行写英文;但**姿势动作词越具体越准**。
+
+⚠️ 请用 `DynamicRefImageEncode`(即 `Ref Image Encode`),不要用 `DynamicRefIndependent`:
+后者把每张图编进**各自独立**的 conditioning(那是为 Qwen 2.1 的每图独立 index 平面设计的),
+合并起来给不了 Krea2 一条连贯的参考序列 —— 实测会线稿残留 + 姿势跑偏。
+
+**如果你要用外部节点包**,本机这两套**互不兼容**,插槽语义完全不同,
+混用会得到「不报错、但线稿被画进画面」的结果。选错节点包 ≈ 白跑:
+
+| 节点包 | 编码器 | patch 节点 | 参考姿势该接哪 | 结果 |
+| --- | --- | --- | --- | --- |
+| `ComfyUI-Krea2-Ostris-Edit` | `TextEncodeKrea2OstrisEdit` | `Krea2OstrisEditModelPatch` | `image2`(配 `image1`=原图) | ✅ 骨架驱动,线稿不进画面 |
+| `ComfyUI-krea2Edit` | `Krea2EditGroundedEncode` | `Krea2EditModelPatch` | `image_b` + `source_latent_b` | ❌ 线稿被当成「第二个主体」画进画面 |
+
+**能用骨架图的是 Ostris 那套**:
+
+```
+[加载图像] ─image─▶ [FluxKontextImageScale] ─▶ .image1 ┐
+ ├─▶ TextEncodeKrea2OstrisEdit ─┐
+[参考姿势] ─image─▶ [FluxKontextImageScale] ─▶ .image2 ┘ (正/负各一个编码器) │
+ ▼
+[加载扩散模型] ─▶ [Krea2OstrisEditModelPatch] ─▶ [加载 LoRA] ─▶ K采样器(8步 euler simple CFG1)
+```
+
+`TextEncodeKrea2OstrisEdit` 的 `image1 / image2 / image3` 都是 `IMAGE`,本节点输出直插 `image2`。
+实测(同一张海边站姿照片 + 素材 `P017_正坐・挺胸后仰`):`krea_outfittransfer` + `kv_cache=开`,
+8 步 36.1s 变成沙滩坐姿,**画面里没有线稿残留**,脸/发型/比基尼/背景均保持。
+
+⚠️ 三个必须配对的点:
+1. **`kv_cache` 必须跟 LoRA 的训练方式一致**。ai-toolkit 用 `kv_cache` 训练的(如
+ `krea_outfittransfer`)要开;普通训练的编辑 LoRA 开了会跑偏。
+2. **LoRA 必须和节点包配套**。把 `krea2_identity_edit_v2`(krea2Edit 系)接到 Ostris 节点上,
+ 线稿同样会被当成主体贴上去——实测过,两者几何不一致。
+3. **条件上要包一层 `FluxKontextMultiReferenceLatentMethod`**(`index_timestep_zero`),
+ 正负各一份,官方工作流就是这么接的。
+
+只有 krea2Edit 系 LoRA 时也能改姿势,但只能**用文字描述**,不能给骨架图:
+
+```
+[加载图像] ─▶ source_latent / image ─▶ Krea2EditModelPatch ─▶ K采样器(8步 euler simple CFG1)
+提示词:让她坐在沙滩上,挺胸后仰,双手撑在身侧
+```
+
+实测 `krea2_identity_edit_v2` 靠这句文字把站姿改成了跪坐/坐姿,但把线稿接到 `image_b`
+就会连人偶一起画出来。所以:**只有 krea2Edit 那套节点时,姿势只能写字描述;
+用本插件的 `Ref Image Encode` 就能直接吃骨架图。**
+
+**krea2Edit 到底能不能吃骨架图:四条路都试过了,都不能**
+
+| 接法 | 姿势跟着骨架变? | 画面干净? |
+|---|---|---|
+| 线稿 → `image_b`(+ `source_latent_b`) | 是 | ❌ 白色人偶 / 透明线框被实打实画进画面,`ref_boost` 越高越明显 |
+| 只接 `source_latent_b`(不给 `image_b`,TE 不看它) | ❌ 完全不生效 | 是 |
+| 骨架当**主图**、原图当 `image_b`(方向对调) | 是 | ❌ 轮廓线残留在人物身上 |
+| 先用 PIL 把线稿做成**灰度剪影**再喂 `image_b` | ❌ 姿势不动 | 是 |
+
+第 2、4 条都做了控制实验(把提示词里的姿势描述整段删掉):结果图仍然是原图的站姿,
+说明姿势变化全部来自提示词,骨架本身没起作用。第 4 条只解决"脏画面",不解决"驱动"。
+
+**一致性的差异是实测的**:同一张原图、同一个姿势目标,`krea2Edit + krea2_identity_edit_v2`
+出来是**同一张脸**;`Ostris + krea_outfittransfer` 出来的脸明显换人(那张 LoRA 是换装用途)。
+所以两者不是"谁替代谁":
+
+- **两者都要**(人物一致 + 骨架图驱动姿势)→ 本插件 `Ref Image Encode`(模型类型 = Krea2),
+ 顶部那条接法就是,一个节点搞定、不用外部插件、也不用二次回收
+- 要**人物一致**、纯文字改图(换姿势/换装/局部改)→ 本插件 Krea2 通路,或 `krea2Edit` + 文字描述
+- 要**极限锁骨架**、可以接受脸飘 → `Ostris` 那套
+- 已经在 krea2Edit 那套里出不了坑 → 先 Ostris 定姿势,再用 `krea2Edit` 做一次身份回收
+
+⚠️ `ref_boost` / `grounding_px` 不是"越高越像":实测 `ref_boost=1.3` + `grounding_px=1024`
+反而把背景从海边换成了礁石。建议先保持 1.0 / 768,只在掉脸时小步上调。
+
+**素材放哪:分三层,运行时合并**
+
+| 层 | 位置 | 是否随插件分发 |
+| --- | --- | --- |
+| 插件自带 | `custom_nodes/ComfyUI-Toggle-Pass/pose_assets/` | 是 —— 1530 张,只含两个非敏感大类(`上半身单人`、`全身单人・标准系`) |
+| 本地私有 | `ComfyUI/models/pose_reference/` | 否 —— 推荐放自己的和私密素材,跟着 `models` 备份走 |
+| 自定义 | `TP_POSE_ROOT` 环境变量 | 否 —— 只有你把素材放到别处时才用 |
+
+查找顺序是 **`TP_POSE_ROOT` → `models/pose_reference` → 插件自带**,同名素材以靠前的为准。
+所以**只装节点就能用**,往私有目录里丢东西也会自己长出来:
+
+- **把新的姿势组丢进 `models/pose_reference`,约 15 秒内下拉里自动出现**,不用刷新页面;删掉同样会
+ 自己消失(节点会轮询一个很轻的素材指纹)。
+- 想立刻生效:画布右键 → `🔄 刷新姿势素材库`。
+- 不存在的那一层直接跳过,不会因此报错;真找不到素材时,报错里会列出都搜过哪些路径。
+
+**工作流自带参考图,可以直接分享。** 选中的素材会以 data URI 写进节点属性(`properties.tp_pose`),
+跟着工作流一起走:
+
+- 别人下载你的工作流,**本机完全没有素材库也能看到这张图,也能直接出图**;
+- 代价约 **+8~14KB/节点**(素材本身就是 300×400 的 webp,单张 5~10KB);
+- 本机素材库存在时永远优先读素材库,内嵌数据只做兜底;
+- 如果素材库不在了、参数又被改过,节点会继续显示内嵌的那张并给出提示,不会变成空白。
+
+**输出**:`image`(`IMAGE`)——直接接 `TextEncodeQwenImage21`、`TextEncodeFibo2` 或任何编辑编码器的
+`images` 输入。
+
+现成的工作流在 `example_workflows/Pose Reference Editing.json`(Qwen-Image-2.1 turbo,8 步)。
+**素材是跟着节点走的**(`properties.tp_pose`,约 8KB data URI):别人下载后在**完全没有姿势素材库**
+的机器上也能看到图、也能出图。再加上插件自带的 `pose_assets/`,全新安装就能直接浏览
+两个大类共 153 个姿势 / 12 个组。
+
+**为什么默认线稿。** 用 FIBO 2.0 和 Qwen-Image-2.1 各跑两组对照(同一姿势、同一指令、不同视角):
+深度套 **3/3** 都自己补出了不存在的鞋或护具,线稿套只有 **1/3** 出现小瑕疵。原因是深度图没有边界线,
+脚底和地面亮度几乎相同,模型就把亮部填成了一个物件;线稿有一圈明确黑线,而且「线稿 → 真人」这个变换
+在这类模型的训练数据里大量存在。深度唯一的优势是有体积感,肢体交叠时能分清前后遮挡关系,所以只在
+复杂缠绕姿势时切过去。
+
+---
+
+
+### Qwen Image 2.1 支持
+
+`DynamicRefImageEncode`(Ref Image Encode)、`DynamicRefIndependent`(Ref Independent)、
+`OneImageMultiPrompt`(一图多视角)均已支持 **Qwen-Image-2.1** 图像编辑 / 多视角生成。
+把「模型类型」选成 `Qwen Image 2.1`,会展开下面这组参数:
+
+| 参数 | 含义 |
+|---|---|
+| `宽高比` | 预设比例(1:1 / 3:2 / 16:9 / 21:9 …),或 `自定义(用输出宽度/高度)` |
+| `百万像素` | 总像素预算:`1.0` ≈ 1024×1024,`2.6` ≈ 2016×1344。范围 0.1~16,**别在这里填 1024** |
+| `倍数` | 对齐步长,硬下限 **32**(填 16 会算出非法形状,例如 5024×3344) |
+| `参考图分辨率` | 参考图喂给模型前被缩到多大(面积基准);`0` = 保持原尺寸 |
+| `尺寸适配` | `参考图保比例`(默认,不变形)/ `参考图裁剪` / `参考图拉伸` |
+
+对齐官方 `TextEncodeQwenImage21` 时总结出的几条关键规则:
+
+- **出图尺寸和参考图尺寸互不影响。** `qwen_image` 用的是 `default_ref_method = "index"`,
+ 参考图和输出各占独立的位置平面,不需要同形。改「参考图分辨率」**不会**让出图变大变小。
+- **指令要写进提示词文本,不能写在 `instruction` 里。**
+ `comfy/text_encoders/qwen_image21.py` 会丢弃 system 段,写进 `instruction` 的内容在 2.1 下会被静默丢弃;
+ 节点已自动把它并进 user 段(Flux 时代那句默认英文 instruction 会被忽略,免得污染提示词)。
+- **latent 输出是全零。** 如果把参考图的真实 latent 当采样起点,编辑就会退化成 img2img(内容完全不变);
+ 真实 latent 只进 conditioning 的 `reference_latents`。
+- 图片必须是 **32 的倍数**;带 alpha 的参考图会先合成到白底再送进视觉塔。
+
+推荐设置(2.1 图像编辑):`匹配原图尺寸` = **OFF**、`尺寸适配` = `参考图保比例`、
+`百万像素` = 1.0、`倍数` = 32、`参考图分辨率` = 1024。
+
+✅ **负面条件已经解决了 —— `Ref Image Encode` 现在有专门的 `negative` 输出**,
+直接连到采样器的「负面条件」即可。它是用同一个 CLIP 编出来的真·空文本条件,
+所以**任何 CFG 下都正确**(实测与手接一个空 `CLIPTextEncode` 逐像素相同)。
+
+⚠️ **不要**再用 `ConditioningZeroOut` 把正面条件清零当负面。CFG = 1.0 时负面根本不参与计算,
+所以看着没事;一提高 CFG 出图就**整张花屏**(实测 fp8 / int8、20 步、CFG 2.5、挂姿势 LoRA,
+绿紫斑块)。以前的版本这个节点只有两个输出、示例工作流接的正是 `ConditioningZeroOut` ——
+坑就是从这里来的。
+
+**姿势编辑推荐挂 `VNCCS_QI2_PoseStudioV2`**(`models/loras/Qwen/`,152 MB,
+ai-toolkit 训练、base = `qwen_image_2`,`LoraLoaderModelOnly` 即可,纯 `diffusion_model` 键)。
+同一句提示词下实测这批 Qwen 2.1 LoRA:
+
+| LoRA | 结果 |
+| --- | --- |
+| 裸模型 | 可用,8 步 15 s |
+| `VNCCS_QI2_PoseStudioV2` | ✅ **最好**:姿势跟得最准、画面最细腻、无线稿残留 |
+| `QI2.1_AnyAngle` | ❌ 脸上/脖子出现线稿残留(参考图内容被「描」进画面) |
+| `qwen_image_2.1_turbo_lora_avg_rank_178` | 可用但皮肤质感变糙,姿势帮助不明显 |
+
+两种跑法都验证过:
+- **turbo int8 + 8 步 + CFG 1.0** → 16.7 s,快,画质够用
+- **`qwen-image-2.1-UC-fp8` + 20 步 + CFG 2.5** → 43.9 s,全身完整、细节最好(负面用空文本)
+
+---
+
+
+### Krea2 支持
+
+`ToggleUnifiedLoader`(统一加载器)、`DynamicRefImageEncode`(Ref Image Encode)、
+`DynamicRefIndependent`(Ref Independent)、`OneImageMultiPrompt`(一图多视角)均已支持 **Krea2**。
+加载器会从 UNet 自动认出 `Krea2`,直接配 `CLIPType.KREA2` + `Krea2TEModel` 文本编码器;
+三个编码节点只要把「模型类型」选成 `Krea2` 即可。
+
+⚠️ **VAE 必须和模型配套。** 这是最常见的翻车点——配错不会在加载时报错,而是在 `VAEDecode` 深处炸:
+
+| 模型 | VAE 文件 | latent |
+|---|---|---|
+| Qwen-Image **2.1** | `qwen_image_2.1_vae_bf16.safetensors` | 64 通道 / 16x / RGBA |
+| **Krea2** | `qwen_image_vae.safetensors` | 16 通道 / 8x / RGB |
+
+配错时 `fix_empty_latent_channels` 会静默把 16 通道补成 64,采样照样跑完,
+然后解码落进 Wan 2.1 分支报 `IndexError: tuple index out of range`。
+现在加载器会在加载时比对 `latent_channels` / `latent_dimensions`,直接把该换哪个文件打到日志里。
+
+对齐官方 `TextEncodeQwenImageEditPlus` 后总结的几条规则:
+
+- **参考图 latent 尺寸 = 出图尺寸。** 参考图先中心裁到出图宽高比、再缩到出图像素网格,
+ **然后**才进 VAE。这样参考图 latent 与采样起点逐维相等,RoPE 位置只在 frame 轴上不同 ——
+ 正是 krea2_edit 系 LoRA 的训练几何。视觉塔仍只吃约 384 px 的缩略图。
+- **VAE 只吃 RGB** —— alpha 是丢掉,不是合成。
+- **视觉占位符必须手写。** 传了显式 `llama_template` 时 Qwen3-VL 的 tokenizer **不会**自动插占位符,
+ 节点会自己拼 `Picture N: <|vision_start|><|image_pad|><|vision_end|>`;
+ 漏了就相当于参考图对模型完全不可见。
+- **`reference_latents_method` 必须显式给,而且必须是 `index`。** Krea2 的 `default_ref_method`
+ 是 `None`,不设方法时参考图会被**静默忽略**(不报错,只是没效果)。
+ `index_timestep_zero` 能跑但是错的:它把 adaLN 调制拆成两个时间步(target 用当前 t、参考图用 t=0),
+ 而训练时全序列共用一个 tvec —— 结果参考线稿会被**描进画面**(脸上出现轮廓线)。
+ `index` 全序列统一 tvec,才对得上训练。
+- **latent 输出是全零**(16 通道 / 8x)——和 2.1 一样是「编辑而不是 img2img」。
+- **sigma 曲线:** Krea2 turbo 在 `采样器(一体)` 里用 `自动(按步数 + 调度器)` 方案,
+ `Qwen-Image-2.1 turbo 8步` 那张表不能套过来用。
+
+---
+
+
+### MOSS-Image / FIBO 2.0 支持
+
+`ToggleUnifiedLoader`(统一加载器)会自动识别这两个模型——`CLIP 类型` 里已经能直接选
+`moss_image` / `fibo2`(选 `auto` 也能从 UNet 认出来)。
+两者都是 **Flux2 latent**(128 通道 / 16x,`flux2-vae`),所以 `Ref Image Encode`(参考图编码)
+**不需要新增模型类型,直接选 `Flux2` 就行**。
+
+实测(同一张海边站姿照 + `P017_正坐・挺胸后仰` 线稿作为第二张图):
+
+| 模型 | 官方编码器 | `Ref Image Encode`(选 Flux2) |
+|---|---|---|
+| MOSS-Image,20 步 / CFG 4 | 19.6s — 坐姿、手撑沙滩 | 16.7s — 坐姿 ✅ |
+| FIBO 2.0,4 步 / CFG 1 | 15.4s — 跪坐 | 10.6s — 跪坐 ✅ |
+
+两组画面里都没有线稿残留。不换成官方编码器的代价是这几点:
+
+- **MOSS 的 `edit_format`** —— 参考方法必须与编辑 LoRA 的训练格式配对
+ (`ai-toolkit` → `index_timestep_zero_isolated`、`ai-toolkit (kv_cache off)` → `index_timestep_zero`、
+ `Moss-Image-Edit` → `index_timestep_zero_text_start`)。选错照样出图,但指令基本不生效。
+ `Ref Image Encode` 完全不设这个字段。
+- **MOSS 的 `image_strength`** 和 **FIBO 的 `negative_prompt`** 它也没有。
+- 两个官方编码器的图片输入都是 **AUTOGROW**,所以本节点的输出照样能直插:
+ `TextEncodeMOSSImageEdit` → `images.image_0 / image_1 …`,`TextEncodeFibo2` → `images.image_1 … image_16`。
+
+⚠️ `TextEncodeMOSSImageEdit` 只有**一个** conditioning 输出,正负条件必须用**两个节点**分别编码
+(官方模板就是两个)。写成 `["节点", 1]` 会报 `list index out of range`,
+而且报错位置会指向采样器、不是编码器。
+
+采样器预设:`MOSS-Image(30步·CFG4)`、`FIBO 2.0 turbo(4步)`。
+
+---
+
+
+### 该选哪个?`模型类型` 和 `clip_type` 不是一回事
+
+两个下拉长得像,作用完全不同:
+
+- **`模型类型`**(在参考图编码器上)只决定**输出什么形状的 latent**(以及 Krea2 走哪种
+ `reference_latents_method`)。
+- **`clip_type`**(在 `Toggle Unified Loader` 上)决定**文本编码器怎么建**。
+
+选错通常**不报错**:要么通道数不对、要么 conditioning 宽度不对、要么图看着挺干净但提示词没生效。
+
+| 要加载的模型 | `模型类型`(编码器) | `clip_type`(统一加载器) | VAE |
+|---|---|---|---|
+| Qwen-Image **Layered** | `Qwen Layered`(+ `图层数`) | `qwen_image` | `qwen_image_layered_vae.safetensors` |
+| Qwen-Image **2.1** | `Qwen Image 2.1` | `qwen_image` | `qwen_image_2.1_vae_bf16.safetensors` |
+| **Krea 2** | `Krea2` | `krea2` | `qwen_image_vae.safetensors` |
+| **FLUX.2 / MOSS-Image / FIBO 2.0** | `Flux2` | `flux2` / `moss_image` / `fibo2` | `flux2-vae.safetensors` |
+| **Z-Image** | `SD / SDXL / Z-Image` | `stable_diffusion`(或 `auto`)—— **千万别选 `flux` / `flux2`** | `ae.safetensors` |
+| **SD 1.5 / SDXL / Pony** | `SD / SDXL / Z-Image` | `stable_diffusion` | 用 checkpoint 自带的 |
+
+`SD / SDXL / Z-Image` 是**故意做成通用档**的:只要真接了参考图,latent 就来自 `ref_latents[0]`,
+所以这个设置在 SD / SDXL / Pony / Z-Image / Qwen-Image 1.0 上表现一致;只有当**一张图都不接**时,
+它才具体意味着「4 通道全零 latent」。
+
+**Qwen-Image Layered 的具体参数**(照官方 `image_qwen_image_layered.json` 抄的):
+
+- 文本编码器是 `qwen_2.5_vl_7b_fp8_scaled` —— 和 Qwen-Image 1.0 **同一个**编码器 ⇒ `clip_type` 选 `qwen_image`
+- VAE 是 **`qwen_image_layered_vae`**,不是 `qwen_image_vae`。两者都是 16 通道,选错了要等到
+ `VAEDecode` 才炸
+- latent 是 5 维:`[B, 16, layers+1, h/8, w/8]` —— `模型类型 = Qwen Layered` 输出的就是它,
+ 等价于官方的 `EmptyQwenImageLayeredLatentImage`
+- 官方模板里实际跑的是 **20 步 / CFG 2.5 / euler / simple / denoise 1**,640 px,`layers = 2`;
+ 画布上那段 Note 说的 50 步 / CFG 4.0 是「原始设置」(更慢)
+- 模板给了两条支路:一条从 `EmptyQwenImageLayeredLatentImage` 起步,一条从 `VAE 编码(照片)` 起步。
+ 两者都是 `denoise 1`,起点会被完全覆盖 ⇒ 真正决定结果的是 `layers`(latent 第 3 维 = `layers+1`)。
+ **只有**想做「低 denoise 精修」时起点才重要,那时编码器给的全零 latent 就不是你要的
+
+**Z-Image 特别提醒**:`clip_type` **别选 `flux` / `flux2`**。Z-Image 的 TE 是 Qwen3-4B,而
+`comfy/sd.py` 在 `clip_type` 为 FLUX/FLUX2 时会把 Qwen3-4B 建成 Flux 系的编码器 ——
+类都不一样,提示词编码全变,而且不报错。
+
+2026-11-06 实测(同一个 Z-Image unet、同样 `qwen_3_4b` + `ae`,**只改 `clip_type`**):
+
+| `clip_type` | 实际建出的文本编码器 | |
+|---|---|---|
+| `stable_diffusion` | `ZImageTEModel_` | ✅ 推荐 |
+| `auto` | `ZImageTEModel_` | ✅(模型类识别成 `Lumina2`,走同一档) |
+| `qwen_image` | `ZImageTEModel_` | ⚠️ 撞对的 —— ComfyUI 是按 TE 类型分派,跟这个值无关 |
+| `flux` | `Flux2TEModel_` | ❌ 编码器类不对,提示词静默失效 |
+
+
+### `clip_type = auto` 到底准不准
+
+**本地 5 个模型实测全对,108 个模型类静态核对 106 个一致。** auto 不是瞎猜,它做的是:
+
+1. **真加载 UNet**(不是读 header 猜),拿模型对象的真实类名 —— Qwen-Layered 加载出来是
+ `QwenImage`,Z-Image 是父类 `Lumina2`;
+2. 按「**精确表 → 继承链 → 前缀规则**」三层查 `CLIPType`:
+ - 精确表只登记「`clip_type` 真的改变结果」的模型(见下表);
+ - 继承链兜子类:`FluxSchnell → Flux`、`KOALA_1B → SDXL`、`ZImagePixelSpace → ZImage`;
+ - 前缀规则兜变体:`WAN21_I2V` / `WAN22_S2V` / `WAN_Animate2` … 16 个 WAN 类 → `wan`(另有 2 个在精确表);
+3. 剩下的用 `stable_diffusion` 兜底 —— **这不算猜错**,因为那三分之一的模型 ComfyUI 压根
+ 不看 `clip_type`(TE 权重本身就唯一确定了是哪种编码器)。
+
+**`clip_type` 只在「同一个 TE 权重能走多条路」时才真正起作用。** 读 `comfy/sd.py` 的
+`load_text_encoder_state_dicts` 可以确认只有这几族:
+
+| TE 权重 | 需要 `clip_type` 区分 | 选错的下场 |
+|---|---|---|
+| T5-XXL | SD3 / LTXV / WAN / CHROMA / PIXART / COGVIDEOX / MOCHI | 掉进 `else` 建成 **Mochi** 的 TE |
+| Qwen3-VL-8B | QWEN_IMAGE / IDEOGRAM4 / BOOGU / JOYIMAGE | 建成通用 `Qwen3VLTEModel_`,Qwen-Image 2.1 的 `image_slots` 丢失 |
+| Qwen3-VL-4B | KREA2 / FIBO2 / FLUX3 / MAGE / MINIMAX | 同上,通用 Qwen3-VL |
+| Qwen3-4B | FLUX / FLUX2 | 建成 Flux 系 `Flux2TEModel_`(Z-Image 就踩这个) |
+| CLIP-G | SD3 / STABLE_CASCADE / HIDREAM | 建成 `SDXLRefinerClipModel` |
+| Qwen2.5-7B | HUNYUAN_IMAGE / LONGCAT_IMAGE | 建成 `qwen_image` 的 TE |
+
+其余模型(Anima / AuraFlow / Cosmos / Lens / OmniGen2 / StableAudio / SAM / 3D 那些)
+`clip_type` 传什么都一样,auto 用兜底值无害。
+
+**实测(2026-11-06,`clip_type = auto`,真加载)**:
+
+| 模型 | auto 判定 | 建出的文本编码器 | |
+|---|---|---|---|
+| Qwen-Image Layered | 精确匹配 `QwenImage` → `QWEN_IMAGE` | `QwenImageTEModel_` | ✅ |
+| Z-Image | 精确匹配 `Lumina2` → `STABLE_DIFFUSION` | `ZImageTEModel_` | ✅ |
+| Krea2 | 精确匹配 `Krea2` → `KREA2` | `Krea2TEModel_` | ✅ |
+| FIBO 2.0 | 精确匹配 `Fibo2` → `FIBO2` | `Fibo2TEModel_` | ✅ |
+| MOSS-Image | 精确匹配 `MOSSImage` → `MOSS_IMAGE` | `MOSSImageTEModel_` | ✅ |
+
+**双保险:加载完立刻校验 TE。** auto 万一判错(或上游加了新模型类),不会静默 ——
+加载器会向模型自己要「我该配哪个编码器」(`model_config.clip_target()`,108 个类里 106 个问得到),
+跟实际建出来的类名比对,不一致就打印:
+
+```
+[ToggleUnifiedLoader] ⚠️ CLIP 校验失败:模型是 Krea2,但文本编码器建成了 Qwen3VLTEModel_
+(预期 Krea2TEModel,依据 手工表)。这个 CLIP 文件与模型不配套 → 提示词会被错误编码
+(跑得通但什么都不生效)。请更换 CLIP 文件,或检查『CLIP 类型』是否选对。
+```
+
+这条校验不是装饰:auto 判错时它会**当场**报出来,而不是等你出图发现「提示词不生效」再回头排查。
+
+**什么时候别用 auto**:只有一种情况 —— 你要故意手选一个与模型不匹配的编码器做实验。
+正常使用 `auto` 比手选更靠谱,因为手选需要记住上表 6 行。
+
+
+所以 `qwen_image` 不会把 Z-Image 弄坏,但还是选 `stable_diffusion`(或 `auto`),让设置名副其实。
+
+---
+
+
+### Z-Image:纯文生图,模型类型选 `SD / SDXL / Z-Image`,不要接参考图
+
+⚠️ 先说结论:**Z-Image 没有参考图编辑能力,`image1`~`image10` 一个都别接。**
+
+依据(实测,不是猜的):
+
+- 官方 5 个 `z_image` 模板里,`image_z_image` / `_int8` / `_turbo` / `_turbo_int8` **全都没有
+ `LoadImage`**,是纯文生图;唯一带图输入的 `image_z_image_turbo_fun_union_controlnet` 走的是
+ **ControlNet(Canny 0.1 / 0.32)**,属于"线条控图",和参考图编辑是两条完全不同的通路。
+- Z-Image 是 Lumina2 / NextDiT 系,训练时没有参考图 token。真接了 `image1` 之后,
+ `reference_latents` 照样会进 conditioning,但模型缺配套的 `reference_latents_text_embeds`
+ ⇒ 实测出图是**满屏方块马赛克**。换 seed、换尺寸桶、换采样起点都一样。
+
+**正确用法**:`模型类型` 选 `SD / SDXL / Z-Image`,`image1` 空着。
+
+这不是"凑合"。不接图时这个分支输出的就是 4 通道全零 latent,再由官方
+`fix_empty_latent_channels` 补到 16 通道,正是 Z-Image 需要的空起点。同 seed 下与官方
+`UNETLoader + CLIPLoader + VAELoader` 原生链路**逐像素一致**(51.5 / 214.5 / 46.9 四项全等)。
+
+**想要 Z-Image 的图生图**:别用这个节点,走官方的
+`加载图像 → VAE 编码 → 采样器(denoise < 1)`。提示词 + denoise 控制改动力度,照片当采样起点。
+
+**防忘机制**:接反了会在日志里打一条警告(只提示,不改任何行为):
+
+```
+[Toggle-Pass][Ref Image Encode] ⚠️ 文本编码器 = ZImageTEModel_,已接入 1 张参考图,
+但这个底座没有参考图通路。
+```
+
+`模型类型` 下拉里**没有单独的 Z-Image 项** —— 它的行为和通用档 `SD / SDXL` 完全一样,所以两项
+直接合并成一个名字 `SD / SDXL / Z-Image`,而不是再加一项让人误以为"选了它就能接图"。
+
+> 2026-11-06 改名:旧值是 `SD / SDXL`。老工作流**加载时自动迁移**(前端直接改写 widget 值,
+> 后端收到旧别名也会归一),存过的图不用手动改。
+
+---
+
+### 画布菜单入口
+
+本插件全部节点也能从画布菜单里直接添加(和 KJNodes / rgthree 的入口在同一处):
+
+```
+🔄 Toggle-Pass ▸
+ ├ 采样器(一体)
+ ├ Image Batcher
+ ├ Multi Ref Latent Input
+ ├ One Image Multi Prompt
+ ├ Ref Image Encode
+ ├ Ref Independent
+ └ ...
+```
+
+- 列表是**运行时自动收集**的,以后新增节点自动出现,不用改代码
+- 点击任意一项,节点落在**鼠标所在位置**
+
+---
+
+### 隐私遮罩功能
+
+SaveLoadImage、ToggleLoadImage、TogglePreviewImage 三个节点均支持隐私遮罩:
+- 标题栏右侧显示 👁(显示图片)/ 🫣(隐藏图片)图标
+- 点击图标切换隐私状态,隐藏时图片预览区域留空
+- 隐私状态随工作流自动保存/恢复,不影响生图流程
+
+---
+
+### 示例工作流
+
+现成的图都在 [`example_workflows/`](example_workflows/) 里,把 `.json` 拖到画布上就能打开。
+
+| 文件 | 演示什么 | 额外依赖 |
+| --- | --- | --- |
+| `All-in-One Demo.json` | 一个图里放齐本插件全部节点:`ToggleUnifiedLoader`、`ToggleSampler`、`ToggleLoadImage` ×2、`ToggleImageCompare`、`TogglePreviewImage`、`DynamicRefImageEncode`、`SaveLoadImage` + `VAEDecode`。**想快速上手就从这张开始** —— 不需要任何第三方节点。 | 无 |
+| `Graphic-Text Integration Editing.json` | 单张参考图的「文字 + 参考图」编辑,用 `DynamicRefImageEncode` 编码、`SaveLoadImage` 保存。 | 无 |
+| `Batch Editing.json` | 六张输入图经批处理组成一组参考图,做批量编辑。 | `RTXVideoSuperResolution` |
+| `Lazy Person's Multi-angle View.json` | 一张图 + `OneImageMultiPrompt`(一图多视角),一次生成多个机位。 | `CR Upscale Image` |
+| `Pose Reference Editing.json` | `PoseReference` 接 Qwen-Image-2.1 turbo 编辑(8 步)。**选中的素材已内嵌在节点里**,没装姿势素材库也能打开、也能直接跑。 | 无 |
+| `Krea2 Pose Editing.json` | 9 个节点,**7 个是本插件的,外部插件 0 个**:`统一加载器`(UNet + CLIP + VAE + `krea2_identity_edit_v2` LoRA 一个节点搞定)+ `加载图像` + `参考姿势` → `Ref Image Encode`(模型类型 = Krea2;姿势线稿接 `image1`、原照片接 `image2`,latent 和 negative 都直接取它自己的输出)→ `采样器(一体)` 选 `Krea 2 turbo(8步)` → `图像对比` / `保存图像`。实测 720×1440、8 步、70s,站姿改坐姿,线稿不进画面,人物一致性保持。 | 无 |
+> 这些图里的模型文件名是作者本机的配置。加载后如果有加载器变红,在对应节点里改成你自己的
+> checkpoint / 文本编码器 / VAE 即可。
+
+---
+
+### 注意事项
+
+- `num_images` 调整时,输入/输出槽会自动增减,**已有连线不会被断开**
+- 切换页面再回来,节点会自动恢复到正确的槽位数量
+- 需要 Qwen2.5-VL 或兼容的 CLIP 模型;用 Qwen-Image-2.1 时需要 Qwen3-VL 8B + `qwen_image` 类型的 clip
+- 默认 instruction 适用于 Qwen-Image-Edit 类模型,可按需修改(2.1 下会自动并进提示词文本)
+- 界面只显示当前「模型类型」用得上的参数,其余自动隐藏
+- 非法的参数值(如 `倍数 = NaN`、`百万像素 = 1024`)在加载时会自动回退到安全默认值。
+ **升级后请重启 ComfyUI + 强刷一次(Ctrl+F5)**,然后保存工作流即可固化
+- ⚠️ 「现代节点设计(Vue 节点)」会导致 `widget.hidden` 与自定义绘制失效 —— 开启后所有参数都会展开、
+ 隐私开关图标也会消失。请在 ComfyUI 设置里关掉它
+- ⚠️ 量化底座(INT8/FP8)上 LoRA **依然生效,只是更"糊"**:ComfyUI 走「反量化 → 叠加 patch →
+ 再量化回 int8」,但用的是**随机舍入 + 重算 scale**,增量幅度能保留约 113%~120%,代价是方向带噪声
+ (余弦 0.4~0.7)。姿态/结构类 LoRA 看得出来,特别细微的风格类可能看不出来。
+ 这是上游行为,官方 `LoraLoader` 一模一样(同 seed A/B 实测:本节点与
+ `CheckpointLoaderSimple + LoraLoader` 输出逐像素完全一致,meanAbsDiff = 0.00)
+- 加载器会把每个 LoRA 实际写入了多少 patch **以及模块覆盖率**(`192/224p`)回传到按钮上
+ (见上面那张表)。覆盖率不满一般是底座被 repack、那几层不存在,而不是 LoRA 没加载
+- ⚠️ **分体模式的 CLIP 校验**:加载完 CLIP 后会比对实际建出的文本编码器类名与模型是否配套
+ (正确类名如 `QwenImage21TEModel_` / `QwenImageTEModel_` / `Flux2TEModel_`,日志会打印)。
+ 不配套时按钮显示 `⚠️CLIP不符`,日志会给出预期类名和处理建议 ——
+ 否则这种情况会「跑得通但什么都不生效」,极难自查
+- ⚠️ **分体模式的 VAE 校验**:加载器还会比对 latent 通道数 / 维度与模型是否配套。
+ 配错的 VAE 在加载时不报错,一路跑到 `VAEDecode` 才炸(`IndexError: tuple index out of range`),
+ 所以现在加载时就直接提示,并告诉该换哪个 VAE 文件
+- 隐藏/收起 LoRA 组后会自动**回收节点高度**,节点不会留成一大条空框
+- **画布拖框现在会跟着鼠标走**:ComfyUI 1.57.x 会把拖拽选择框裁剪到 `.graph-canvas-panel`
+ (实测这个容器只覆盖画布中下部),在画布上半部分拖框时框的顶边被强行下压、高度被压成 0,
+ 表现就是「鼠标在左上角拉、框却出现在中间/下面」。`js/selection_rect_fix.js` 按真实鼠标点
+ 重写框的位置,只改显示、不动画布状态。要关掉:浏览器控制台执行
+ `localStorage.setItem("tp_selrect_fix", "off")` 后刷新
+- Python 改动需要**重启 ComfyUI**,纯 JS 改动只需 Ctrl+F5
+
+---
+
+## 更新日志 / Changelog
+
+> 按时间记录**新增 / 变更的功能**,以及怎么用。
+
+### 2026-11-07
+
+- **🏷️ 起版本号:`v1.0.0`**。之前一直没有版本标识,用户装了哪一版只能靠 commit 猜。
+ 现在三处对齐:`pyproject.toml` 的 `[project].version`(ComfyUI-Manager / Comfy Registry 认这个)、
+ `__init__.py` 的 `__version__`、README 顶部。启动日志会打一行
+ `[Toggle-Pass] v1.0.0 loaded — 13 nodes`,排查「装的是不是新版」一眼就能确认。
+ 后续按语义化版本:加功能进 minor,只修 bug 进 patch。
+- **🧹 移除示例 `Krea2 Pose Editing (Ostris).json`**。它硬依赖外部节点包
+ `ComfyUI-Krea2-Ostris-Edit`,而那套接法**会换人**(`krea_outfittransfer` 本质是换装 LoRA)。
+ 留着容易让人误以为这是推荐路线。骨架驱动的技术说明仍保留在上面的对照表里,要复现照链路自己接;
+ 常态需求用 `Krea2 Pose Editing.json`(零外部依赖,人物一致性保持得住)。
+
+### 2026-11-06
+
+- **🔀 `Ref Image Encode` 输出口顺序调整:`negative` 挪到 `latent` 上面**
+ (顺序变为 `conditioning` / `negative` / `latent`)。
+ - **老工作流自动迁移**:加载时前端按「连线的类型」把线重新归位 ——
+ `LATENT` 的线接到 `latent` 口、`CONDITIONING` 的线接到 `negative` 口,
+ **已存的工作流不用手动改线**。实测两个老样本(2 输出时代的 `All-in-One Demo`、
+ 3 输出旧布局的 `Krea2 Pose Editing`)加载后:正面→0、负面→1、latent→2 全部正确,
+ 且「保存后重新加载」不会被二次交换。
+ - 迁移**幂等**:靠 link 的类型判断,不依赖存盘标记,加载几次结果都一样。
+ - **连线归位要等 `graph.links` 建好,所以走阶梯重试**:ComfyUI 加载完成后 `graph.links`
+ 要几百毫秒才填满(实测 200ms 时还是空表)。改名可以同步做(抢在渲染连线之前),
+ 但搬线不能 —— 早期版本只等一帧就搬,结果「槽位名字换了、线没跟着走」,
+ 画布上看着就像 `negative` 口插着 `latent` 的线。现在改名同步执行,连线归位按
+ 0/50/120/260/550/1000/1800/3000ms 阶梯重试,一旦「0 条需要改」立刻收手,
+ 不会干扰你之后的手动接线。
+ - ⚠️ 走 **API / 手写 JSON** 的调用(不经过前端)不会自动迁移 —— 这类调用要把
+ `latent` 从 `["节点", 1]` 改成 `["节点", 2]`、`negative` 从 `2` 改成 `1`。
+- **🎯 `clip_type = auto` 重做,不再靠一张追不上的手工表**。原来 auto 只认 20 个模型类名字面量,
+ ComfyUI 的 `supported_models` 一共有 **108** 个类,没认出来的会静默回落 `stable_diffusion` ——
+ 其中 WAN 全系变体(16 个走前缀、2 个在精确表)、Chroma、CogVideoX 正好都在「会建错 TE」那一族里
+ (T5-XXL 的 `else` 分支是 **Mochi** 的编码器)。现在改成三层:
+ - **精确表 → 继承链 → 前缀规则**。精确表只登记「`clip_type` 真的改变结果」的歧义模型;
+ 子类走 MRO(`FluxSchnell → Flux`、`KOALA_1B → SDXL`);WAN 的 17 个变体走前缀规则。
+ 静态核对 108 个类:精确 42 / 继承链 17 / 前缀 16 / 通用兜底 33(这 33 个 `clip_type`
+ 本来就不参与判断,兜底无害)。
+ - **`auto` 现在会真加载 UNet 拿真实类名**(`load_unet` 返回 `ModelPatcher`,真实模型在
+ `.model` 里;直接 `type(model)` 只会拿到 `ModelPatcher`,实测会让所有模型都推不出来)。
+- **🛡️ CLIP 校验加固:手工表没登记的模型,直接问模型自己要答案**。以前只按 8 条手工前缀表
+ 校验,没登记的模型一律「宁可漏报」跳过;现在先查手工表(经过实测,优先),查不到就用
+ `model_config.clip_target()` 反查「这个模型该配哪个编码器」——108 个类里 **106 个问得到**,
+ 等于给全部模型类都上了校验。
+ - 实测价值:改代码时一次回归让 auto 全线退化成 `stable_diffusion`,
+ Krea2 / FIBO / MOSS 三个都被这条校验**当场**抓住,没有一个静默出错。
+ - 校验失败的日志会带上「依据 手工表 / 模型自述」,便于区分是表不准还是文件选错。
+- **🔤 `模型类型` 改名:`SD / SDXL` → `SD / SDXL / Z-Image`**。两者 latent 行为完全一样
+ (不接参考图时都输出 4 通道全零 latent,交给官方 `fix_empty_latent_channels` 补通道),
+ 合成一个名字省得再开一项,也省得每次去想「Z-Image 到底选哪个」。
+ - 老工作流**自动迁移**:加载时前端直接把控件值从旧名字改成新名字(控制台会打一行
+ `模型类型 已迁移`);后端也认旧别名,第三方节点转存 / 手改 JSON 一样能走对分支。
+ - 三个编码节点(`Ref Image Encode` / `一图多Prompt` / `Ref Independent`)统一生效。
+ - `ToggleEmptyLatent` 的 `latent类型` **没改**(那个本来就把通道数写在名字里),Z-Image 用
+ `SD / SDXL(4 通道 · 8×)` 那一档即可。
+- **➕ 统一加载器的 `clip_type` 下拉补齐**:原来只登记了 14 项,现在把 ComfyUI 支持的其它类型
+ 全追加在末尾(`hunyuan_video` / `lumina2` / `chroma` / `ideogram4` / `flux3` 等 26 项)。
+ 用 `getattr` 取枚举,旧版 ComfyUI 少哪个成员就跳过哪个,不会把插件带崩;已有项位置不动,
+ 老工作流位置序列化不受影响。
+ - 顺带补了 Z-Image 的自动识别(`ZImage → stable_diffusion` + TE 前缀 `ZImageTEModel`),
+ `clip_type = auto` 时不会再打「未登记映射」的告警。
+- **📋 README 新增「该选哪个?」对照表**(`模型类型` vs `clip_type`),把 Qwen-Image Layered /
+ 2.1 / Krea2 / Flux2 系 / Z-Image / SD 各自选什么、配哪个 VAE 一张表列全。
+ 见 [模型类型对照表](#模型类型对照表) / [cheat sheet](#model-type-cheatsheet)。
+ - **Qwen-Image Layered → `clip_type` 选 `qwen_image`**:它的 TE 和 Qwen-Image 1.0 是同一个
+ `qwen_2.5_vl_7b_fp8_scaled`,VAE 必须是 `qwen_image_layered_vae`(同为 16 通道,选错要到
+ `VAEDecode` 才炸);latent 5 维 `[B,16,layers+1,h/8,w/8]` 正好等于 `模型类型 = Qwen Layered`。
+ - **Z-Image → 别选 `flux` / `flux2`**:`comfy/sd.py` 在 FLUX/FLUX2 下会把 Qwen3-4B 建成 Flux
+ Klein 的编码器,类都不一样,提示词全废且不报错。
+- **⚠️ 接错参考图会报警了:Z-Image / Lumina2 系没有参考图通路**。三个编码节点一旦检测到
+ 文本编码器是 `ZImageTEModel_` **且**接了 `image1`,日志里会打一条明确警告(含正确做法),
+ **只打印,不改任何参数和接线**。同一个(节点 + 编码器)每次启动只打一次,不会刷日志。
+ - Z-Image 是**纯文生图**模型:官方 5 个 `z_image` 模板里 4 个连 `LoadImage` 都没有,
+ 唯一带图的 `fun_union_controlnet` 走的是 **ControlNet**,不是参考图编辑。
+ - 硬接 `image1` 的后果实测是**满屏方块马赛克**(换 seed / 尺寸桶 / 采样起点都一样)。
+ - 正确用法:`模型类型` 选 `SD / SDXL / Z-Image`、`image1` 空着 —— 空 latent 会自动补到 16 通道,
+ 同 seed 下与官方原生链路逐像素一致。要图生图请用 `VAE 编码 + 采样器 denoise < 1`。
+ - 下拉里**不单独设 Z-Image 项**(行为和通用档完全一样),已合并进 `SD / SDXL / Z-Image`。
+ 详见 [Z-Image 用法](#z-image-用法)。
+- **💡 广播打开时,会被自动接上的槽位小点会「点亮」**(补成实心、用该槽位类型的官方配色,
+ 和手动连线后的样子一致)。以前只有紫线画过去、槽位却还是空心圈 —— 因为广播是纯预览,
+ 提交前不建真实连线,官方就一直按「未连接」渲染。
+ - 只点亮**空着的**槽位;本来就有真实连线的口不重复画(官方自己就是实心)。
+ - 会被**后绘制的节点压住**的槽位不点亮(按 `graph._nodes` 绘制顺序判断),
+ 所以拿节点当遮罩盖内容时不会再有假点透出来。
+ - 节点折叠、槽位位置未确定(`boundingRect` 无效)时跳过。
+ - 实测(无头 Edge,`probe_slot_lit_guard.mjs` 5/5):点亮后槽位中心色 `255,213,0`
+ **与手动真连线完全相同**;被节点盖住时 `102,85,51`(不点亮);关掉开关回到 `193,192,0`(空心)。
+- **🐛 修掉「一根紫线往空白处伸出去就断掉」**。原因:广播线的端点优先取槽位的
+ `boundingRect`(官方渲染时算出来的真实盒子),但**节点只要不在可视区内、从没被渲染过**,
+ 这个盒子就是 `[0,0,0,0]`,旧代码对零尺寸照样取中心 ⇒ 端点被算成**图坐标原点**,
+ 线就画到画布原点那片空白里,看着像一根悬空紫线。
+ - 触发条件:目标节点被拖到视野外(尤其画布上方 `y<0` 那种「半个节点探出去」的情况)。
+ 实测 `Toggle-Pass-Test.json` 里的 `VAE解码`(pos.y = -66)就踩中。
+ - 修法:零尺寸一律视为「未布局」,退回 `getConnectionPos` 估算 —— 端点从 `(0,0)`
+ 变成真实槽位位置(实测 `(0,0)` → `(1362,-32)`、`(0,0)` → `(955,-52)`,都落回节点内)。
+ - 有 `boundingRect` 的正常槽位行为完全不变(同图另外两条线端点一字未动)。
+ - 纯前端改动,**不用重启**,`Ctrl+F5` 即可。
+- **➕ 新增诊断命令 `__tpAudit()`**(控制台执行):把当前每一根广播线的**两端坐标 /
+ 归属节点 / 是否落在自己节点范围内 / 目标槽 boundingRect** 打成表格,悬空端点会红字警告。
+ 以后再遇到「线跑到奇怪的地方」,先跑这个,一眼看出是哪条 pair 算错。
+- **🔧 广播预览的端点圆点改成和线同层(节点能盖住了)**。以前圆点画在 `draw()` 末尾 = 全画布最上层,
+ 所以把节点拖到线上当遮罩时,一串紫点会穿出节点浮在上面(一列三颗、看着像脏点)。
+ 现在圆点和线一起画进背景层(`bgcanvas`),**节点盖住线的同时把点一起盖住**,观感统一成
+ 「线从节点边缘伸出来」,和官方连线一个样子。
+ - 视觉代价:槽位点本身压在节点边线上,所以露在外面的只剩半个圆点(另一半被节点吃掉)。
+ - 想回到旧观感:`localStorage.tp_dots_layer = "front"` 再刷新;删掉这个键就恢复默认。
+ - 纯前端改动,**不用重启**,`Ctrl+F5` 即可。
+ - 实测(无头 Edge 像素级):同一布局下节点框内新增紫色像素 —— 旧行为 39 px(复现问题)、
+ 新默认 **0 px**;bgcanvas 里圆点仍在(两个端点各 20 px);节点之间空白处的线 200 px 不变。
+
+### 2026-11-05
+
+- **✅ `Ref Image Encode` 新增第三个输出 `negative`(自动生成,不用再接 `ConditioningZeroOut`)**。
+ 它是用同一个 CLIP 编码出来的真·空文本负条件,**CFG 调多高都正确**。
+ - 怎么用:`Ref Image Encode` 的 `negative` 口 → 采样器「负面条件」,完事。
+ - 为什么加:之前示例工作流用 `ConditioningZeroOut` 把正面清零当负面,CFG=1.0 时看不出问题,
+ **CFG>1 就整张花屏**(绿紫斑块)。
+ - 兼容:第三个口是**追加在末尾**的,旧工作流的 `conditioning` / `latent` 两个口完全不受影响。
+ - 实测:与手接空 `CLIPTextEncode` **逐像素完全相同**(Qwen 2.1 fp8 / 20 步 / CFG 2.5,max diff 0);
+ Krea 2 CFG 1.0 下新旧接法差异落在模型自身的重跑随机范围内(同配置重跑 max 142 vs 新旧 139)。
+ - `example_workflows/Krea2 Pose Editing.json` 已改成这个接法(节点数 10 → 9)。
+- **⚠️ CFG > 1 时负面条件不要接 `ConditioningZeroOut`,会整张花屏**。实测(fp8 / int8、20 步、
+ CFG 2.5、挂姿势 LoRA):把正面条件清零当负面 ⇒ 出图绿紫斑块、完全不可用;改成空文本
+ `CLIPTextEncode` 就正常。CFG 1.0 时负面不参与计算,所以 turbo 8 步的示例一直没暴露这个坑。
+ → 现在直接用 `Ref Image Encode` 的 `negative` 输出即可。
+- **Qwen 2.1 姿势编辑推荐挂 `VNCCS_QI2_PoseStudioV2`**(`models/loras/Qwen/`,152 MB,
+ ai-toolkit 训练、base = `qwen_image_2`,`LoraLoaderModelOnly` 即可)。同 prompt 实测:
+ 它姿势跟得最准、画面最细腻、无线稿残留;`QI2.1_AnyAngle` 反而在脸上/脖子画出线稿残留;
+ `qwen_image_2.1_turbo_lora` 皮肤变糙、姿势帮助不大。两种跑法:turbo int8 8 步 16.7s;
+ `UC-fp8` 20 步 CFG 2.5 43.9s(全身最完整)。
+- **⚠️ 提示词必须写具体姿势,否则 Krea 2 会把线稿人偶画进画面**。这是今天实测出来的第二大坑:
+ 同参数、同 seed,只写「图二美女参考图一的姿势,重新摆pose」时,模型不读线稿,而是把线稿人偶
+ 当成**第二个主体**,直接输出「左边真人 + 右边线稿人偶」的并排拼贴,姿势一点不动。
+ 提示词换成「让图二中的女人摆出图一那个姿势:跪立、身体向后仰、胸部抬起、背部拱起,
+ 双手向后下方伸去触摸脚跟,头部微微后仰,采用四分之三侧后方视角。保持脸/发型/服装/背景不变」
+ 就正常了。**中文完全可用**,关键是三段:主体指认 + 姿势解剖描述 + 保持不变的内容。
+ → README 中英各加一节「提示词怎么写」,并修掉原来那句会误导人的简短示例。
+- **Krea 2 编辑不用再装 `ComfyUI-krea2Edit` 了**:`Ref Image Encode` 把「模型类型」选成 `Krea2`,
+ 就能直接做「保身份 + 换姿势」,姿势线稿接 `image1`、原照片接 `image2`。
+ 原因是 ComfyUI 原生 krea2 的 `_forward` 本来就有 in-context 参考通路(`ref_latents`),
+ `Krea2EditModelPatch` 只是手工重建了同一件事。实测 8 步 720×1440:70s 出图,坐姿正确、
+ 画面干净、人物一致性保持。
+ → 新增示例 `example_workflows/Krea2 Pose Editing.json`(10 节点,**外部插件 0 个**);
+ 原来的 Ostris 版改名为 `Krea2 Pose Editing (Ostris).json`,用途变成「极限锁骨架」。
+- **修 `reference_latents_method`:`index_timestep_zero` → `index`**(Krea2 三处编码节点全改)。
+ `index_timestep_zero` 会给参考图单独一套 **t=0 的 adaLN 调制**,而 krea2_edit 系 LoRA 训练时
+ 全序列共用一个 tvec ⇒ 参考线稿会被**「描」进画面**(实测:脸上出现轮廓线和腰线,
+ 换 `index` 后完全干净)。这个坑很隐蔽:不报错、能出图、姿势也对,只有画面脏。
+- **Krea2 参考图 latent 改为 fit 到出图网格**:原来是缩到约 1 MP 保持原比例,
+ 于是 ref latent 的 `h/w` 与采样起点不同 ⇒ 模型把参考图当「另一块画布」,边缘特征会渗进画面。
+ 现在先中心裁到出图宽高比、再 bicubic(**antialias**)缩到出图像素尺寸,
+ ref latent 与零 latent 逐维相等,RoPE 位置只差 frame 轴 —— 与训练几何一致。
+- **★ 顺序是硬约定:最后一个参考图 = 主体。** 姿势线稿放 `image1`、原照片放 `image2`;
+ 反过来会渲成一个线稿人偶(实测)。提示词里按 `image 1 / image 2` 指代即可。
+- **`DynamicRefIndependent` 不适合 Krea2**:它把每张图编进各自独立的 conditioning
+ (那是 Qwen 2.1 每图独立 index 平面的设计),合并后给不了 Krea2 一条连贯的参考序列 ——
+ 实测线稿残留 + 姿势跑偏。Krea2 请用 `Ref Image Encode`(`DynamicRefImageEncode`)。
+
+### 2026-11-04
+
+- **`空 Latent` 新增 `latent类型`(4 档通道 / 压缩比)**:原来写死 4 通道 · 8×,
+ 接 Krea 2(Wan21,16 通道)或 Flux2(128 通道 · 16×)只能靠 K采样器的
+ `fix_empty_latent_channels` 隐式补通道。现在可选 `SD / SDXL`、`SD3 / Flux / Krea 2`、
+ `Qwen-Image 2.1`、`Flux2`,默认仍是 4 通道(老工作流不变)。
+ 选对时与官方 `EmptySD3LatentImage` 输出完全一致(实测 shape / dtype /
+ `downscale_ratio_spacial` 全等,张量差 = 0)。
+- **示例 `Krea2 Pose Editing (Ostris).json` 重做为「本插件节点为主」**:16 个节点里 7 个是本插件的
+ (`统一加载器` / `读图` / `参考姿势` / `空 Latent` / `采样器(一体)` / `图像对比` / `存图`),
+ 余下 6 个是 ComfyUI 内置(`VAEDecode`、`FluxKontextImageScale`、`FluxKontextMultiReferenceLatentMethod`),
+ 只有 3 个来自外部插件 `ComfyUI-Krea2-Ostris-Edit`。画布内新增 `Note` 节点,
+ 写明「用到了哪个插件、三个必须配对的条件」,打开就知道缺什么。
+ 原版本是从官方模板改的,19 个节点里只有 1 个是本插件的,已作废。
+- **`Ref Image Encode` 接 MOSS-Image / FIBO 2.0:模型类型选 `Flux2`(下拉未新增)**。
+ 两者 latent 与 Flux2 同族(128 通道 / 16x,都用 `flux2-vae`),实测参考图能真正生效:
+ MOSS 20 步 16.7s / FIBO 4 步 10.6s 都能把站姿改成素材里的坐姿,画面无线稿残留
+ (对照组用官方编码器分别是 19.6s / 15.4s)。不新增专用类型的理由:MOSS 要 `edit_format`
+ (三档训练格式)+ `image_strength`、FIBO 要 `negative_prompt`,塞进一个类型会变成一半参数无效;
+ 需要精确控制这些时直接用 `TextEncodeMOSSImageEdit` / `TextEncodeFibo2`。
+- **修正三处 Flux2 空 latent 的通道 / 尺寸**(`Ref Image Encode`、`OneImageMultiPrompt`、`Ref Independent`):
+ - `Ref Image Encode` 和 `OneImageMultiPrompt` 的「纯文生图」分支原来写死 4 通道(SD 的 latent),
+ Flux2 实际是 128 通道。走 KSampler 时 `fix_empty_latent_channels` 会自动补齐
+ (4→128 平铺 + 8x→16x 缩放),所以**出图结果完全一致(实测 max abs diff = 0)**;
+ 但这是隐式兜底,不经过 KSampler 的场景不会修。
+ - `Ref Independent` 的「空槽兜底」原来是 `torch.zeros(1, 4, 1, 1)`,这是**真的会出问题**:
+ auto-fix 只补通道、不改尺寸,采样照常跑完,最后解码出一张 **16×16 的废图**(不报错,很难查)。
+ 已改为按模型类型给正确的通道与尺寸 —— 实测与官方 `EmptyFlux2LatentImage` 逐像素一致
+ (max abs diff = 0),出图从 16×16 恢复成 512×1024。
+- **`参考姿势` 已确认可驱动 Krea 2 编辑(骨架驱动)**,但**只有 Ostris 那套节点能吃骨架图**:
+ `TextEncodeKrea2OstrisEdit` 的 `image1/2/3` 都是 `IMAGE`,原图接 `image1`、参考姿势接 `image2`
+ 即可,线稿不会被画进画面。实测 `krea_outfittransfer` + `kv_cache=开`、8 步 euler/simple CFG1,
+ 36.1s 把站姿改成素材里的坐姿,脸/发型/服装/背景不变。
+ ⚠️ 另一套 `ComfyUI-krea2Edit`(`Krea2EditGroundedEncode` / `Krea2EditModelPatch`)的
+ `image_b` / `source_latent_b` 语义是「**第二个主体,要放进画面**」,接参考姿势会把人偶一起画出来
+ (实测);它只能靠文字描述改姿势。**两套节点包不能混用**:把 krea2Edit 系 LoRA
+ (`krea2_identity_edit_v2`)接到 Ostris 节点上同样会贴线稿,几何不一致。
+ 另:`kv_cache` 必须与 LoRA 训练方式一致,条件上要包 `FluxKontextMultiReferenceLatentMethod`。
+ 当时附过示例 `Krea2 Pose Editing (Ostris).json`(实测 8 步出图,首次含模型加载约 86s),
+ 但它对外部节点包有硬依赖、而且会换人,**已在 2026-11-06 移除**。要复现请照上面的链路自己接;
+ 常态需求建议直接用 `Krea2 Pose Editing.json`(零外部依赖,人物一致性保持得住)。
+- **`统一加载器` 加载 Krea 2 编辑链已实测**:`clip_type=auto` 正确识别 `Krea2 → CLIPType.KREA2`,
+ TE 建成 `Krea2TEModel_`、VAE 校验 16 通道 / 3 维,LoRA 槽可直接加载 `krea_outfittransfer` 等编辑 LoRA
+ (256 个 patch)。与原生 `UNETLoader + LoraLoaderModelOnly` 对比:**无 LoRA 时逐像素一致(max 0)**;
+ 带 LoRA 时 LoRA 影响幅度一致(平均差 60.66 vs 60.69),仅 4.6% 像素有细微差异,画面等效。
+- **`统一加载器` 支持 FIBO 2.0 与 MOSS-Image**:`CLIP 类型` 新增 `fibo2`、`moss_image`,
+ auto 模式按 UNet 类名(`Fibo2` / `MOSSImage`)自动识别。这两个和 `krea2` 共用权重文件,
+ 但取层方式完全不同(`fibo2` 取 15 层中段 → 6×7680;`moss_image` 用 Qwen3.5-9B 的 last hidden state),
+ 所以选错不是画质问题,是 conditioning 维度直接对不上。加载器同时校验 TE 类名
+ (`Fibo2TEModel_` / `MOSSImageTEModel_`)与 VAE(都走 Flux2 latent,必须 `flux2-vae*`)。
+ 实测:同一 seed 下,统一加载器 vs 原生 `UNETLoader + CLIPLoader + VAELoader`
+ **逐像素完全一致**(max abs diff = 0,fibo2 与 moss-image 各一组,moss 的 edit LoRA 走加载器 LoRA 槽同样一致)。
+- **`采样器(一体)` 预设新增两条**:`FIBO 2.0 turbo(4步)`(euler/simple/CFG1)、
+ `MOSS-Image(30步·CFG4)`(euler/normal/CFG4)。FIBO 是 4 步蒸馏、给大反而崩;
+ MOSS 是 SFT 不是蒸馏,30 步 + CFG4 才是训练配置,降到 4 步会糊。数值取自
+ `FIBO2-文生图+图编辑.json` 与 `image_moss_image_edit.json`。
+- **`参考姿势` 已确认可驱动 MOSS-Image / FIBO 2.0 编辑**:这两个编码器的 `images` 都是
+ 自动增长输入(MOSS `image_0..image_9`、FIBO `image_1..image_16`),
+ 接法和 2511 一样——**原图接第一张、参考姿势接第二张**。实测两个模型都能把站姿照片改成素材里的坐姿,
+ 人脸/发型/服装/背景保持不变(MOSS 30 步 20.2s、FIBO 4 步 16.1s)。
+ ⚠️ MOSS 的编辑能力来自 `moss_image_edit_lora_bf16`,且 `edit_format` 必须与 LoRA 训练格式配对
+ (`Moss-Image-Edit` / `ai-toolkit` / `ai-toolkit (kv_cache off)`),选错同样「出图但没改」。
+- **`参考姿势` 接 2511 / FLUX.2 这类编辑模型改为「多图编辑」接法**(README 补说明,代码无改动):
+ 之前单张接 `image1` 时**不报错、能出图,但人物姿势完全不变**——编辑模型把 `image1` 当作
+ 「待修改的原图」,线稿进了 `image1` 就等于让它「重绘这张线稿」,提示词失效。
+ 现在明确写清:原图接 `image1`、参考姿势接 `image2`,提示词写「保持 image1 的人物,姿势改成 image2」。
+ 实测 2511 与 FLUX.2 在多图接法下都能按骨架重摆人物,**不需要 ControlNet,也不需要额外模型**。
+- **`参考姿势` 输出尺寸强制对齐 16 的倍数**:原来只按长边等比缩放,遇到异形比例(如
+ `1234×1000` → `1024×830`)会得到非 16 倍数的宽高,`VAEEncode` 只能自己 pad/crop,
+ 边缘产生半像素位移——线稿和深度图对这种位移特别敏感,表现成「人物整体歪了一点」。
+ 现在缩放后统一向下对齐到 16 的倍数(宁可少 15px 也不超出设定长边),用缩放而不是裁切,
+ 避免切掉脚尖或手指。
+ 实测现有 2878 张素材在 512/768/1024/1536 四个档位下**原本就全部对齐**,所以这一条对存量
+ 素材没有任何变化,纯粹是给以后自己塞异形比例的图兜底。
+
+### 2026-11-03
+
+- **`采样器(一体)` 新增「⚡预设」下拉**(当天晚些时候由「模型预设」改名并挪到第一行,见下条):
+ 选中模型就把 `Sigma 曲线 / 采样器 / 调度器 / 步数 / CFG` 五项一次填好,不用每次手调。
+ 当时 9 个预设:`Qwen-Image 2.1(25步)`、`Qwen-Image 2.1 turbo(8步·固定表)`、`Krea 2 turbo(8步)`、
+ `Krea 2 turbo・细节增强(12步)`、`FLUX.2 klein(4步·beta)`、`FLUX.2 klein・高清修复(4步)`、`Z-Image turbo(8步)`、
+ `Qwen-Image Layered(9步·CFG2.5)`、`Qwen-Image Edit 2511 AIO(4步)`,外加一个 `手动(不套用)`。
+ `降噪` 与 `噪波随机种` 不受预设影响 —— 那两项取决于任务而不是模型。
+- **预设是「一键填充」不是「持续锁定」**:套完预设后手改这五项里的任何一个,下拉会自动退回
+ `手动(不套用)`。这样控件显示永远是真实状态,不会出现「写着 Qwen 预设、其实在跑 40 步」。
+- **预设表只有一份**:写在 `sampler.py` 的 `MODEL_PRESETS`,前端通过
+ `GET /toggle_pass/sampler_presets` 拉取,不在 JS 里另抄一份,以后加模型只改 Python。
+ 每一条的数值都来自本机 `user/default/workflows/` 里实际跑通的工作流,来源文件写在
+ `sampler.py` 的注释里。
+- **`⚡预设` 挪到参数控件第一行,并和 `Sigma 曲线` 分了名**:原来叫「模型预设」、排在最后一位,
+ 结果两个问题叠在一起 —— 一是名字太长,窄节点上左边的标题被右边的值整个盖住,
+ 看着像个无名下拉;二是紧挨着的 `采样方案` 选项也全是「模型名 + 步数」,两个下拉极易被
+ 当成重复。现在改名为 `⚡预设` / `Sigma 曲线`(**只改 label,内部 name 一个都没动**),
+ 位置换到所有参数控件的最前面。
+- **预设名保持完整模型名,靠节点宽度让标题露出来**:名字一旦缩成 `2511 AIO · 4步` 这种,
+ 模型一多就分不清谁是谁,所以预设仍用 `Qwen-Image Edit 2511 AIO(4步)` 这类全名。
+ 实测最长一条 `Qwen-Image Layered(9步·CFG2.5)` 占 238px,加上左侧 47px 的 `⚡预设`,
+ 节点至少要 350px 宽才不会重叠 ⇒ 新建节点宽度 350,老存档(280/300/340)加载时自动补到 350
+ (只加宽不缩窄)。宽度不够时 litegraph 的值是右对齐画的,会把标题整个盖掉,这正是当初
+ 「看着像没有名字」的真正原因。
+- **挪位置不迁移老存档也安全**:1.57 的存档带 `widgets_values_named`(按名字恢复,与顺序无关);
+ 更早的纯位置存档交给 `nodeData.fallbackWidgetsValuesNames` 按老顺序重新对号;万一还是有错位,
+ 加载时发现「模型预设」拿到了采样方案的值会自动退回 `手动(不套用)`。
+ 已实测四种存档(新建 / 带名字 / 纯位置 10 项 / 纯位置 9 项),七个参数全部各就各位。
+ 预设改名同样有 `PRESET_ALIASES` 兜底(现在方向是「中途那版短名 → 当前全名」,
+ 权威副本在 `sampler.py`,由接口下发,前端只留一份启动兜底),存过短名的工作流会自动换回全名。
+
+### 2026-11-02
+
+- **新增节点 `PoseReference`(参考姿势)**:从姿势素材库里选一张参考图,输出标准 `IMAGE`,
+ 直接接任意编辑模型的 `images` 输入。素材根目录支持三层合并(`TP_POSE_ROOT` 环境变量 →
+ `models/pose_reference` → 插件自带 `pose_assets`),同名以靠前的为准。
+ `类别 / 姿势组 / 姿势` 三级联动下拉(4 大类、30 组、288 个姿势、5 个视角),
+ `源` 可在线稿与深度两套之间切换,`长边` 默认把 300×400 的素材放大到 1024,
+ `翻转` 做水平镜像。
+- **节点内缩略图(不用执行就能看图)**:任意下拉一改,节点下半部分立刻换成新的姿势图——
+ `类别/姿势组/姿势/视角/源/翻转` 六个参数都会触发,120ms 防抖,切得快也不会卡。
+ 首次加载自动把节点撑高到够放下整张图,之后随节点大小自适应缩放。
+ 图由新增的 `GET /toggle_pass/pose_image` 路由按参数实时渲染(带浏览器缓存),
+ 不走 `node.imgs`,因此不依赖前端内部绘制逻辑,换 ComfyUI 版本也不会失效。
+- **工作流自带参考图**:选中的素材以 data URI 内嵌进 `properties.tp_pose`,随工作流保存。
+ 别人下载后即使没有 `D:\pose`,也能看到图并直接出图(后端在素材库取图失败时用
+ `extra_pnginfo` 读回内嵌数据)。代价约 +8~14KB/节点;本机素材库存在时优先读素材库。
+ 缩略图同时改走 `raw=1` 返回素材原文件,单次 6KB(原先渲染成 512 PNG 要 80KB)。
+- **示例工作流改为随插件分发**:`example_workflows/Pose Reference Editing.json`。因为素材已经内嵌,
+ 它不再依赖 `D:\pose`,可直接拖进画布跑通;原先那句「故意不放进 example_workflows」的说法作废。
+ 注意:内嵌数据只在**保存工作流**时落盘,改动前保存的旧工作流打开后会自动补上,但需要再存一次。
+- **素材分成两层,插件自带一份可以直接分发**:新增 `pose_assets/`(1530 张 / 9.6MB),只放
+ `上半身单人`、`全身单人・标准系` 两个大类;私密或自建素材留在私有目录。运行时合并成一个索引,
+ 查找顺序是 **`TP_POSE_ROOT` → `models/pose_reference` → 插件自带**,同名以靠前的为准。
+ 别人装完节点就有 153 个姿势可用,不需要额外下载任何东西。
+- **素材统一收进 `models/pose_reference`**:原先放在 `D:\pose` 的
+ `全身单人・性感系`、`双人缠绵` 两个大类(1348 张 / 8.9MB)迁到
+ `ComfyUI/models/pose_reference/`,与插件自带的两个大类正好互补、互不重叠,
+ 合并后仍是 4 类 30 组 288 姿势。这样素材跟着 `models` 备份走,`D:\pose` 不再需要。
+- **素材热更新**:新增 `GET /toggle_pass/pose_stamp` 轻量指纹接口,前端每 15 秒比对一次
+ (画布上没有本节点时直接跳过)。往 `models/pose_reference` 里丢新姿势组,**约 15 秒内下拉自动出现**,
+ 删掉同样自动消失,全程不用刷新页面;画布右键另加了 `🔄 刷新姿势素材库` 手动兜底。
+ 指纹扫到「大类/姿势组」这一层,只看根目录 mtime 是发现不了往已有大类里加新组的。
+- **修复「素材更新后下拉切不动、必须重启」**:下拉回调原来在挂载时闭包捕获了当时的素材树,
+ 素材库热更新后 `node._tpPoseSync` 换了新树,回调却还在用旧的 —— 新增的类别/组切不过去,
+ 切走再切回会跳回旧内容。改成回调里每次现取 `node._tpPoseSync`。
+- **修复「换了素材图不变」**:`pose_image` 原来发 `Cache-Control: public, max-age=86400` 且无
+ ETag,浏览器 24 小时内不回源,同名替换素材后永远显示旧图。改成 `no-cache` + `ETag`
+ (mtime+size+参数),没变返回 304,变了立刻拿到新内容;同时刷新素材库时会清掉前端的
+ URL 去重,让图真的重取。
+- **修复「拉目录树失败一次就永久没有联动」**:`fetchTree()` 的 Promise 在失败时会把 `null`
+ 缓存住,之后所有新建节点都拿这个 `null`,只能刷新页面才恢复。改成失败不留在缓存里,
+ 下一次自动重试;取图失败时也不再锁住 URL,后端恢复后切回同一姿势会重新请求。
+- **修复「生图一开始节点就再也切不动」**:ComfyUI 1.57 前端看到节点有 `node.imgs`,
+ 就会自动挂一个 `$$canvas-image-preview` 的官方预览 widget —— 它占掉节点底部一行,
+ 并把执行输出的那张 PNG **画在节点预览区上面**。于是从第一次生成开始,节点下部就被
+ 一张定死的图盖住:下拉照点、节点自己画的预览在背面也确实换了,但画面上永远不动,
+ 看着就是"卡死了,只能重启"。现在 `load()` 不再返回 `ui.images`(从根上不产生 `node.imgs`),
+ 前端另外在 `onExecuted` 和 300ms 巡检里把已挂上的官方预览摘掉,
+ 已经跑过的工作流不用重建节点也会自己恢复。
+- **修复「切下拉图不换,要重启才变」**:以前预览图只靠下拉的 `callback` 通知刷新,
+ 一旦这条通知漏掉(第三方扩展重写回调、程序化改值、前端版本差异),节点就永远停在上一张图上。
+ 现在加了两道不依赖回调的自检:绘制时比对参数、以及每 300ms 一次的轻量巡检,
+ 参数和已加载的图对不上就自己重取。不管是点下拉、拖参数、加载工作流还是脚本改值,图都会跟上。
+- **修复「取不到图时假装没事」**:以前任何一次取图失败都会静默退回内嵌图,看起来就是"点了没反应"。
+ 现在只有内嵌的那张**正好等于当前所选**时才用它兜底,否则节点上直接显示
+ `这张没取到(素材库缺失)`,控制台同步打一条 `[PoseReference] 取图失败`,一眼看出卡在哪。
+- **排查入口**:浏览器控制台敲 `__tpPoseDiag()`,用表格打印每个节点的选中值、上次请求的 URL、
+ 已加载图的尺寸、是否来自网络、错误信息。
+- 素材库不存在时不再报一句含糊的错:`build_path` 逐根查找,失败信息会列出每个搜过的路径
+ 以及具体原因(没有该套 / 没有该视角),换机器排查快得多。
+- **默认选线稿**:FIBO 2.0 / Qwen-Image-2.1 各两组对照,深度套 3/3 都会自己补出不存在的鞋或护具
+ (深度图没有边界线,脚底与地面亮度太接近),线稿套只有 1/3 出现小瑕疵。
+- 素材索引带 mtime 缓存,首次扫描约 10ms、之后 0.1ms,增删素材会自动重建。
+
+### 2026-10-25
+
+- **新增示例工作流 `example_workflows/All-in-One Demo.json`**:一个图里放齐本插件全部交互节点
+ (`ToggleUnifiedLoader` / `ToggleSampler` / `ToggleLoadImage` ×2 / `ToggleImageCompare` /
+ `TogglePreviewImage` / `DynamicRefImageEncode` / `SaveLoadImage` + `VAEDecode`),
+ **不依赖任何第三方节点**,拖进画布即可跑通;原 `Toggle-Pass-Test.json` 已改名为它
+- **README 新增「示例工作流」小节**(中英双语):列出 `example_workflows/` 里 4 个示例分别演示什么、
+ 各自需要哪些额外依赖 —— 此前 README 对示例目录零引用,用户不知道这些文件存在
+
+### 2026-10-24
+
+- **「全局广播」开关搬到节点顶部**:从 widget 列表末尾那整行,移到 `加载模式` 的 `UNet / Checkpoint`
+ 胶囊**正下方、左半边**,缩成一个小胶囊(左写「广播」,右侧是开关轨道)
+ - 尺寸与胶囊对齐:**宽度 = 胶囊的一半**,**高度与胶囊完全相同**(都是 14px,上下边沿齐平)
+ - 外观与节点其它控件同语言:淡色托底 + 细轨道 + 白滑块,开启时转高亮蓝(和 `UNet` 选中态呼应),
+ 鼠标悬停时托底提亮并浮出一道细描边
+ - 改法是「原生 toggle 保留但隐藏 + 自绘」:widget 对象、名字、`properties` 存储、`serialize:false`
+ 全部原样不动 —— `widgets_values` 一项都不动,旧工作流零影响
+ - 顺带节点底部少了一整行,只剩「添加 / 移除 LoRA」两个按钮
+ - 纯前端改动,**不用重启 ComfyUI**,`Ctrl+F5` 即可
+- **修复画布拖框「框不在鼠标那里」**:ComfyUI 1.57.x 会把选择框裁剪到 `.graph-canvas-panel`
+ (实测该容器只覆盖画布中下部 `[64,488,...]`),在画布上半部分拖框时框的顶边被强行压到 488、
+ 高度被压成 0,看起来像「鼠标在左上角拉、框跑到中间」。新增 `js/selection_rect_fix.js`
+ 按真实鼠标点重写框的位置,纯显示层修正,不改画布状态
+ - 关闭方法:控制台 `localStorage.setItem("tp_selrect_fix", "off")` 后刷新
+- **预览曲线改为从节点背后穿过**:曲线画在背景层(节点下层),节点之间的空白处正常显示,
+ 穿过节点的地方被节点自然遮住 —— 不会再盖住节点标题和参数。节点排得密时可见部分会少一些,属正常
+
+### 2026-10-23
+
+- **新增 `ToggleUnifiedLoader` 的「全局广播」开关**(节点自带,不依赖 `cg-use-everywhere`)
+ - 打开后点「运行」自动把 `MODEL` / `CLIP` / `VAE` 接到图里所有**空着的**同类型输入上,
+ 提交完立刻拆线,不会被存进工作流
+ - 开关打开期间,画布上用**紫色曲线**画出「运行时会自动接上的线」,两端带小圆点,
+ 方便一眼核对接去哪(曲线只是预览,不建真实连线、不参与保存)
+ - 曲线从节点**背后**穿过(画在节点下层):空白处可见,节点上一根线都不落 —— 不挡标题和参数
+ - 只补空位,手连的一根都不动;关掉就是完全手动
+ - 开关状态存在节点 `properties` 里,**不占 `widgets_values`**,旧工作流参数位置一项不变
+ - 与 `cg-use-everywhere` 共存(不动它的 `ue_convert`)
+ - 纯前端改动,**不用重启 ComfyUI**,`Ctrl+F5` 即可
+- **`采样器(一体)` 初始宽度改为 300**(高度不变),「自动(按步数 + 调度器)」这类长值不再被截断
+
+### 2026-10-21
+
+- **新增 `采样器(一体)`(`ToggleSampler`)** —— 把官方「随机噪波 + CFG引导器 + K采样器选择 +
+ 基础调度器/手动Sigmas → SamplerCustomAdvanced」四件套收进一个节点。
+ - 模型 / 条件 / Latent 仍是插槽,换模型不用换节点
+ - `采样方案` 三档:`自动`(= 官方 BasicScheduler,数值等价)、预置表(Qwen-Image-2.1 turbo 8步、
+ LTX-2 视频 8步/3步)、`自定义表`(手填 sigma,接新模型不用改代码)
+ - 选预置表时 `步数` / `调度器` 会变灰并锁住,`步数` 显示该表真实步数;切回 `自动` 自动还原你原来设的步数
+ - sigma 表规则:逗号分隔、严格递减、末值必须是 0、N 个点 = N-1 步
+- **新增 Krea2 支持** —— `ToggleUnifiedLoader`、`DynamicRefImageEncode`、`DynamicRefIndependent`、
+ `OneImageMultiPrompt` 全都能跑 Krea2
+ - 加载器从 UNet 自动识别 `Krea2` → `CLIPType.KREA2` + `Krea2TEModel`,无需手选 clip 类型
+ - 三个编码节点的「模型类型」新增 `Krea2`:参考图按约 1 MP 编码、VAE 只吃 RGB、
+ 自动补视觉占位符、自动设 `reference_latents_method = index_timestep_zero`、输出全零 16 通道 latent
+- **加载器改进**
+ - CLIP 类型改为**由模型类推导**,不再二次读取 UNet 去猜(省一次 6.9 GB 读取,也不会再静默失败)
+ - 新增 **VAE 匹配检查**:加载时比对 latent 通道 / 维度,配错直接提示该换哪个 VAE 文件
+ (否则会在 `VAEDecode` 报 `IndexError: tuple index out of range`,很难自查)
+
+### 2026-10-10
+
+- **新增 `ToggleImageCompare` 图片对比节点** —— 把多张原图与多张结果拼成一张对比图,节点内直接预览。
+ 两组动态输入(原图 `source1~10`、结果 `result1~10`)各自独立增减,**N 原图 + 1 结果** 与
+ **N 原图 + N 结果** 都支持;排版 `自动` 会按数量自动在「成对并排」和「上下两排」之间选,
+ 另有「自动网格」;可给每张图烧 `原1 / 结1` 角标。
+ - **怎么用**:把原图接到 `source*`、结果接到 `result*`,输出直接给 `SaveLoadImage` 或预览节点;
+ 排版按**实际接上的图**算,数量变了不用改设置。
+- **加载模式开关(外观与交互定型)** —— `ToggleUnifiedLoader` 的 `加载模式` 在下拉框基础上改成
+ **两段式开关 `UNet | Checkpoint`**:点左半 = 分离组件、点右半 = 一体包,当前档用蓝色滑块高亮,
+ 另一半悬停时有淡色反馈。
+ 位置在**节点顶部第一行,与输出插槽 `模型 / MODEL` 同一行**;左端与下方所有下拉框的左边缘对齐,
+ 宽度固定、两档同宽(切档不跳动),右侧给插槽文字留出安全距离。
+ - **怎么用**:直接点开关左半 / 右半切换,不再弹出下拉菜单;当前档一眼可见。
+ - 底层 `加载模式` 参数照常保存与序列化,**旧工作流与 API 调用零影响** —— 开关只接管绘制与点击,
+ 没有新增或删除任何参数。
+- **开关交互修复**:① 点击分界与绘制统一为同一套几何(此前节点较宽时点中段会切错档、点开关右侧空白会误切);
+ ② 挂在节点上的绘制 / 点击钩子改为**链式调用**,不再覆盖别的插件挂的同名钩子;
+ ③ 鼠标移出开关后悬停高亮不再残留。
+
+### 2026-10-09
+
+- **加载模式开关上线**:`UNet`(分离组件)/ `Checkpoint`(一体包)两段切换,替代原来的下拉框。
+- **模型参数置顶**:`ckpt_name` / `unet_name` / `clip_name` / `vae_name` / `clip_type` 排到参数列表最前,
+ 一体包模式下一眼就能看到 checkpoint 行。旧工作流加载时**按参数名自动迁移**,不受顺序变化影响。
+- **LoRA 状态提示**:按钮回传每个 LoRA 实际写入的 patch 数与模块覆盖率(如 `192/224p`);
+ 分体模式下还会比对 CLIP 实例类名与模型是否配套,不匹配时显示 `⚠️CLIP不符`。
+
+### 2026-10-08
+
+- **一体包加载模式**:`ToggleUnifiedLoader` 融合 Checkpoint 加载器,新增 `加载模式` 参数 ——
+ `分离组件 (UNet+CLIP+VAE)`(默认)/ `Checkpoint 一体包`,两种模式都能挂 LoRA。
+- **LoRA 强度合并为一个滑块**:`model` 与 `clip` 两个强度合并显示,CLIP 侧自动跟随 MODEL 侧 ——
+ 界面上看到的强度就是实际生效的强度。
+- **LoRA 诊断**:按钮显示已启用的 LoRA 数量与「强度为 0」告警;控制台打印每个 LoRA 最终挂上了多少 patch。
+- 修复:LoRA 组全部移除后节点自动**回收高度**(不再留一大条空框);「- 移除 LoRA」不再把强度清成 0。
+
+### 2026-10-03
+
+- 修复画布菜单新建节点的落点:改为**鼠标所在位置**(原来是画布可视中心)。
+
+### 2026-09-25
+
+- **画布菜单入口**「🔄 Toggle-Pass」:在画布右键菜单里即可添加本插件的节点,节点列表运行时自动收集。
+ - **怎么用**:画布空白处右键 → 菜单里选 `🔄 Toggle-Pass`。
+- `OneImageMultiPrompt` 支持 **Qwen Image 2.1**;`prompt数量` 自动收起多余的 prompt 输入框。
+
+### 2026-09-24
+
+- `DynamicRefImageEncode` / `DynamicRefIndependent` 支持 **Qwen Image 2.1**。
+- **分辨率控制**:新增 `宽高比` + `百万像素` + `倍数`,以及 `参考图分辨率`、`尺寸适配`。
+- 修复 CLIP 类型检测(此前 Qwen Image 2.1 的专用文本编码器无法加载,参考图会被静默丢弃)。
+- 界面按「模型类型」自动显隐参数;旧工作流的错位脏值自动归位;`倍数` 下限由 16 提到 32。
+
+### 2026-05-12
+
+- `DynamicRefImageEncode` 新增 `Qwen Layered` 模型类型:选中后显示「图层数」,输出分层 latent。
+- `ToggleUnifiedLoader` 新增「- 移除 LoRA」按钮(从最后一组开始移除)。
+
+### 2026-05-10
+
+- 新增 **`ToggleUnifiedLoader`**(统一模型 + LoRA 加载器):把 UNet / CLIP / VAE / 多 LoRA 整合到单一节点,
+ 最多 10 组 LoRA 槽位(选了才显示),支持自动检测 CLIP 类型。
+
+### 2026-05-08
+
+- 新增节点:`SaveLoadImage`(保存/加载切换)、`ToggleLoadImage`、`TogglePreviewImage`、`ToggleEmptyLatent`。
+- 新增**隐私遮罩**(👁 / 🫣 切换,适用于图片类节点)。
+- 新增 **DynamicRef 系列**:`DynamicRefIndependent`、`DynamicRefImageEncode`、`DynamicRefLatentInput`、
+ `ImageBatcher`、`OneImageMultiPrompt`。
+
+---
+
+## 安装 / Installation
+
+Place this folder under `ComfyUI/custom_nodes/` and restart ComfyUI.
+
+把本文件夹放到 `ComfyUI/custom_nodes/` 目录下,重启 ComfyUI 即可。
diff --git a/__init__.py b/__init__.py
index 5eb0bd2..9d974c4 100644
--- a/__init__.py
+++ b/__init__.py
@@ -2,9 +2,14 @@
ComfyUI Toggle Pass - Toggle nodes + Image IO + Multi-Ref Encode
Author: Clever
"""
+# 版本号:与 pyproject.toml 的 [project].version 保持一致。
+# ComfyUI-Manager / Comfy Registry 读 pyproject.toml;这里供运行时打印、方便看日志排查。
+__version__ = "1.0.0"
+
from .multi_ref_encode import NODE_CLASS_MAPPINGS as MULTI_REF_NODES, NODE_DISPLAY_NAME_MAPPINGS as MULTI_REF_NAMES
from .unified_loader import NODE_CLASS_MAPPINGS as UNIFIED_NODES, NODE_DISPLAY_NAME_MAPPINGS as UNIFIED_NAMES
from .sampler import NODE_CLASS_MAPPINGS as SAMPLER_NODES, NODE_DISPLAY_NAME_MAPPINGS as SAMPLER_NAMES
+from .pose_reference import NODE_CLASS_MAPPINGS as POSE_NODES, NODE_DISPLAY_NAME_MAPPINGS as POSE_NAMES
import os
import json
@@ -298,6 +303,25 @@ class SaveLoadImage:
class ToggleEmptyLatent:
+ """开关空 Latent。
+
+ `latent类型` 决定通道数与空间压缩比,必须和底模的 latent_format 对齐:
+ · SD / SDXL 4 通道 8×
+ · SD3 / Flux / Krea 2 16 通道 8× (Krea2 走 Wan21 格式,latent_dimensions=3)
+ · Qwen-Image 2.1 64 通道 16×
+ · Flux2 128 通道 16×
+ 通道给错不会立刻报错 —— K采样器里的 fix_empty_latent_channels 只会在
+ 「latent 全零」时按模型补齐通道,属于隐式兜底;直接接别的 latent 处理节点就不会修。
+ """
+
+ LATENT_PRESETS = {
+ "SD / SDXL(4 通道 · 8×)": (4, 8),
+ "SD3 / Flux / Krea 2(16 通道 · 8×)": (16, 8),
+ "Qwen-Image 2.1(64 通道 · 16×)": (64, 16),
+ "Flux2(128 通道 · 16×)": (128, 16),
+ }
+ DEFAULT_LATENT = "SD / SDXL(4 通道 · 8×)"
+
@classmethod
def INPUT_TYPES(cls):
return {
@@ -310,6 +334,12 @@ class ToggleEmptyLatent:
"optional": {
"fallback_width": ("INT", {"default": 1024, "min": 16, "max": 16384, "step": 8}),
"fallback_height": ("INT", {"default": 1024, "min": 16, "max": 16384, "step": 8}),
+ # ⚠️ 必须放在 fallback_height 之后 —— 前端控件顺序是 required 全部 + optional,
+ # 老存档的 widgets_values 是 [width,height,batch_size,enabled,fb_w,fb_h] 六项,
+ # 早先把它插在 enabled 后面(fb_w 之前),老图加载时 fb_w 的 1024 会灌进来,
+ # 点运行直接 value_not_in_list: latent类型 1024 ⇒ 400,看着就是「跑不了」。
+ # 放最后 ⇒ 老图前 6 位对得上,这一项拿 default(4 通道,即老行为)。
+ "latent类型": (list(cls.LATENT_PRESETS.keys()), {"default": cls.DEFAULT_LATENT}),
},
}
@@ -318,7 +348,8 @@ class ToggleEmptyLatent:
FUNCTION = "generate"
CATEGORY = "Toggle-Pass"
- def generate(self, width, height, batch_size=1, enabled="ON", fallback_width=None, fallback_height=None):
+ def generate(self, width, height, batch_size=1, enabled="ON", latent类型=None,
+ fallback_width=None, fallback_height=None):
if fallback_width is None:
fallback_width = 1024
if fallback_height is None:
@@ -326,10 +357,14 @@ class ToggleEmptyLatent:
if enabled != "ON":
width = fallback_width
height = fallback_height
- latent = torch.zeros([batch_size, 4, height // 8, width // 8],
+ channels, scale = self.LATENT_PRESETS.get(latent类型, self.LATENT_PRESETS[self.DEFAULT_LATENT])
+ # 宽高先向下对齐到压缩比的倍数,避免出现非整数网格
+ h = max(1, height // scale)
+ w = max(1, width // scale)
+ latent = torch.zeros([batch_size, channels, h, w],
device=comfy.model_management.intermediate_device(),
dtype=comfy.model_management.intermediate_dtype())
- return ({"samples": latent, "downscale_ratio_spacial": 8},)
+ return ({"samples": latent, "downscale_ratio_spacial": scale},)
# ==================== Image Compare ====================
@@ -579,6 +614,7 @@ NODE_CLASS_MAPPINGS = {
**MULTI_REF_NODES,
**UNIFIED_NODES,
**SAMPLER_NODES,
+ **POSE_NODES,
"ToggleEmptyLatent": ToggleEmptyLatent,
"SaveLoadImage": SaveLoadImage,
"ToggleLoadImage": ToggleLoadImage,
@@ -590,9 +626,12 @@ NODE_DISPLAY_NAME_MAPPINGS = {
**MULTI_REF_NAMES,
**UNIFIED_NAMES,
**SAMPLER_NAMES,
+ **POSE_NAMES,
"ToggleEmptyLatent": "Toggle Empty Latent",
"SaveLoadImage": "Save/Load Image",
"ToggleLoadImage": "Toggle Load Image",
"TogglePreviewImage": "Toggle Preview Image",
"ToggleImageCompare": "图片对比",
}
+
+print(f"[Toggle-Pass] v{__version__} loaded — {len(NODE_CLASS_MAPPINGS)} nodes")
diff --git a/example_workflows/All-in-One Demo.json b/example_workflows/All-in-One Demo.json
index de521ef..58ad7a8 100644
--- a/example_workflows/All-in-One Demo.json
+++ b/example_workflows/All-in-One Demo.json
@@ -1 +1 @@
-{"id":"a6469650-cb96-4ae7-87a1-fd6014dd3877","revision":0,"last_node_id":32,"last_link_id":66,"nodes":[{"id":1,"type":"DynamicRefImageEncode","pos":[548.2320130660914,-65.8117662047309],"size":[270,462],"flags":{},"order":3,"mode":0,"inputs":[{"localized_name":"clip","name":"clip","type":"CLIP","link":null},{"localized_name":"vae","name":"vae","type":"VAE","link":null},{"localized_name":"image1","name":"image1","shape":7,"type":"IMAGE","link":32},{"localized_name":"num_images","name":"num_images","type":"INT","widget":{"name":"num_images"},"link":null},{"localized_name":"prompt","name":"prompt","type":"STRING","widget":{"name":"prompt"},"link":null},{"localized_name":"instruction","name":"instruction","type":"STRING","widget":{"name":"instruction"},"link":null},{"localized_name":"模型类型","name":"模型类型","shape":7,"type":"COMBO","widget":{"name":"模型类型"},"link":null},{"localized_name":"匹配原图尺寸","name":"匹配原图尺寸","shape":7,"type":"COMBO","widget":{"name":"匹配原图尺寸"},"link":null},{"localized_name":"输出宽度","name":"输出宽度","shape":7,"type":"INT","widget":{"name":"输出宽度"},"link":null},{"localized_name":"输出高度","name":"输出高度","shape":7,"type":"INT","widget":{"name":"输出高度"},"link":null},{"localized_name":"尺寸适配","name":"尺寸适配","shape":7,"type":"COMBO","widget":{"name":"尺寸适配"},"link":null},{"localized_name":"图层数","name":"图层数","shape":7,"type":"INT","widget":{"name":"图层数"},"link":null},{"localized_name":"宽高比","name":"宽高比","shape":7,"type":"COMBO","widget":{"name":"宽高比"},"link":null},{"localized_name":"百万像素","name":"百万像素","shape":7,"type":"FLOAT","widget":{"name":"百万像素"},"link":null},{"localized_name":"倍数","name":"倍数","shape":7,"type":"INT","widget":{"name":"倍数"},"link":null},{"localized_name":"参考图分辨率","name":"参考图分辨率","shape":7,"type":"INT","widget":{"name":"参考图分辨率"},"link":null},{"name":"image2","type":"IMAGE","link":33},{"name":"image3","type":"IMAGE","link":null}],"outputs":[{"localized_name":"conditioning","name":"conditioning","type":"CONDITIONING","links":[1,3]},{"localized_name":"latent","name":"latent","type":"LATENT","links":[2]}],"properties":{"Node name for S&R":"DynamicRefImageEncode","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":[3,"","Describe the key features of the input image (color, shape, size, texture, objects, background), then explain how the user's text instruction should alter or modify the image. Generate a new image that meets the user's requirements while maintaining consistency with the original input where appropriate.","Qwen Image 2.1","ON",1920,1080,"参考图保比例",3,"自定义(用输出宽度/高度)",1,32,1024],"widgets_values_named":{"num_images":3,"prompt":"","instruction":"Describe the key features of the input image (color, shape, size, texture, objects, background), then explain how the user's text instruction should alter or modify the image. Generate a new image that meets the user's requirements while maintaining consistency with the original input where appropriate.","模型类型":"Qwen Image 2.1","匹配原图尺寸":"ON","输出宽度":1920,"输出高度":1080,"尺寸适配":"参考图保比例","图层数":3,"宽高比":"自定义(用输出宽度/高度)","百万像素":1,"倍数":32,"参考图分辨率":1024},"bgcolor":"rgba(0,0,0,0)"},{"id":2,"type":"ToggleSampler","pos":[945.195075140908,-65.8117662047309],"size":[280,340],"flags":{},"order":4,"mode":0,"inputs":[{"localized_name":"模型","name":"模型","type":"MODEL","link":null},{"localized_name":"正面条件","name":"正面条件","type":"CONDITIONING","link":1},{"localized_name":"负面条件","name":"负面条件","type":"CONDITIONING","link":3},{"localized_name":"Latent图像","name":"Latent图像","type":"LATENT","link":2},{"localized_name":"采样方案","name":"采样方案","type":"COMBO","widget":{"name":"采样方案"},"link":null},{"localized_name":"采样器","name":"采样器","type":"COMBO","widget":{"name":"采样器"},"link":null},{"localized_name":"调度器","name":"调度器","type":"COMBO","widget":{"name":"调度器"},"link":null},{"localized_name":"步数","name":"步数","type":"INT","widget":{"name":"步数"},"link":null},{"localized_name":"CFG","name":"CFG","type":"FLOAT","widget":{"name":"CFG"},"link":null},{"localized_name":"降噪","name":"降噪","type":"FLOAT","widget":{"name":"降噪"},"link":null},{"localized_name":"噪波随机种","name":"噪波随机种","type":"INT","widget":{"name":"噪波随机种"},"link":null},{"localized_name":"自定义Sigma表","name":"自定义Sigma表","type":"STRING","widget":{"name":"自定义Sigma表"},"link":null}],"outputs":[{"localized_name":"Latent","name":"Latent","type":"LATENT","links":[7]},{"localized_name":"降噪Latent","name":"降噪Latent","type":"LATENT","links":null}],"properties":{"Node name for S&R":"ToggleSampler","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":["自动(按步数 + 调度器)","euler","simple",25,1,1,971656685632169,"randomize","1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568, 0"],"widgets_values_named":{"采样方案":"自动(按步数 + 调度器)","采样器":"euler","调度器":"simple","步数":25,"CFG":1,"降噪":1,"噪波随机种":971656685632169,"control_after_generate":"randomize","自定义Sigma表":"1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568, 0"},"bgcolor":"rgba(0,0,0,0)"},{"id":3,"type":"ToggleUnifiedLoader","pos":[193.50137286627495,-65.8117662047309],"size":[235,218],"flags":{},"order":0,"mode":0,"inputs":[{"localized_name":"unet_name","name":"unet_name","type":"COMBO","widget":{"name":"unet_name"},"link":null},{"localized_name":"clip_name","name":"clip_name","type":"COMBO","widget":{"name":"clip_name"},"link":null},{"localized_name":"vae_name","name":"vae_name","type":"COMBO","widget":{"name":"vae_name"},"link":null},{"localized_name":"clip_type","name":"clip_type","type":"COMBO","widget":{"name":"clip_type"},"link":null},{"localized_name":"lora_name_1","name":"lora_name_1","type":"COMBO","widget":{"name":"lora_name_1"},"link":null},{"localized_name":"lora_strength_model_1","name":"lora_strength_model_1","type":"FLOAT","widget":{"name":"lora_strength_model_1"},"link":null},{"localized_name":"lora_strength_clip_1","name":"lora_strength_clip_1","type":"FLOAT","widget":{"name":"lora_strength_clip_1"},"link":null},{"localized_name":"lora_name_2","name":"lora_name_2","type":"COMBO","widget":{"name":"lora_name_2"},"link":null},{"localized_name":"lora_strength_model_2","name":"lora_strength_model_2","type":"FLOAT","widget":{"name":"lora_strength_model_2"},"link":null},{"localized_name":"lora_strength_clip_2","name":"lora_strength_clip_2","type":"FLOAT","widget":{"name":"lora_strength_clip_2"},"link":null},{"localized_name":"lora_name_3","name":"lora_name_3","type":"COMBO","widget":{"name":"lora_name_3"},"link":null},{"localized_name":"lora_strength_model_3","name":"lora_strength_model_3","type":"FLOAT","widget":{"name":"lora_strength_model_3"},"link":null},{"localized_name":"lora_strength_clip_3","name":"lora_strength_clip_3","type":"FLOAT","widget":{"name":"lora_strength_clip_3"},"link":null},{"localized_name":"lora_name_4","name":"lora_name_4","type":"COMBO","widget":{"name":"lora_name_4"},"link":null},{"localized_name":"lora_strength_model_4","name":"lora_strength_model_4","type":"FLOAT","widget":{"name":"lora_strength_model_4"},"link":null},{"localized_name":"lora_strength_clip_4","name":"lora_strength_clip_4","type":"FLOAT","widget":{"name":"lora_strength_clip_4"},"link":null},{"localized_name":"lora_name_5","name":"lora_name_5","type":"COMBO","widget":{"name":"lora_name_5"},"link":null},{"localized_name":"lora_strength_model_5","name":"lora_strength_model_5","type":"FLOAT","widget":{"name":"lora_strength_model_5"},"link":null},{"localized_name":"lora_strength_clip_5","name":"lora_strength_clip_5","type":"FLOAT","widget":{"name":"lora_strength_clip_5"},"link":null},{"localized_name":"lora_name_6","name":"lora_name_6","type":"COMBO","widget":{"name":"lora_name_6"},"link":null},{"localized_name":"lora_strength_model_6","name":"lora_strength_model_6","type":"FLOAT","widget":{"name":"lora_strength_model_6"},"link":null},{"localized_name":"lora_strength_clip_6","name":"lora_strength_clip_6","type":"FLOAT","widget":{"name":"lora_strength_clip_6"},"link":null},{"localized_name":"lora_name_7","name":"lora_name_7","type":"COMBO","widget":{"name":"lora_name_7"},"link":null},{"localized_name":"lora_strength_model_7","name":"lora_strength_model_7","type":"FLOAT","widget":{"name":"lora_strength_model_7"},"link":null},{"localized_name":"lora_strength_clip_7","name":"lora_strength_clip_7","type":"FLOAT","widget":{"name":"lora_strength_clip_7"},"link":null},{"localized_name":"lora_name_8","name":"lora_name_8","type":"COMBO","widget":{"name":"lora_name_8"},"link":null},{"localized_name":"lora_strength_model_8","name":"lora_strength_model_8","type":"FLOAT","widget":{"name":"lora_strength_model_8"},"link":null},{"localized_name":"lora_strength_clip_8","name":"lora_strength_clip_8","type":"FLOAT","widget":{"name":"lora_strength_clip_8"},"link":null},{"localized_name":"lora_name_9","name":"lora_name_9","type":"COMBO","widget":{"name":"lora_name_9"},"link":null},{"localized_name":"lora_strength_model_9","name":"lora_strength_model_9","type":"FLOAT","widget":{"name":"lora_strength_model_9"},"link":null},{"localized_name":"lora_strength_clip_9","name":"lora_strength_clip_9","type":"FLOAT","widget":{"name":"lora_strength_clip_9"},"link":null},{"localized_name":"lora_name_10","name":"lora_name_10","type":"COMBO","widget":{"name":"lora_name_10"},"link":null},{"localized_name":"lora_strength_model_10","name":"lora_strength_model_10","type":"FLOAT","widget":{"name":"lora_strength_model_10"},"link":null},{"localized_name":"lora_strength_clip_10","name":"lora_strength_clip_10","type":"FLOAT","widget":{"name":"lora_strength_clip_10"},"link":null},{"localized_name":"加载模式","name":"加载模式","type":"COMBO","widget":{"name":"加载模式"},"link":null},{"localized_name":"ckpt_name","name":"ckpt_name","type":"COMBO","widget":{"name":"ckpt_name"},"link":null}],"outputs":[{"localized_name":"模型","name":"MODEL","type":"MODEL","links":[]},{"localized_name":"CLIP","name":"CLIP","type":"CLIP","links":[]},{"localized_name":"VAE","name":"VAE","type":"VAE","links":[]}],"properties":{"Node name for S&R":"ToggleUnifiedLoader","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"},"tp_broadcast":true},"widgets_values":["krea2-aio-fp8-checkpoint.safetensors","Qwen\\qwen_image_2.1_int8_convrot.safetensors","qwen\\qwen3vl_8b_int8_convrot.safetensors","qwen_image_2.1_vae_bf16.safetensors","qwen_image","分离组件 (UNet+CLIP+VAE)","none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,null,null],"widgets_values_named":{"ckpt_name":"krea2-aio-fp8-checkpoint.safetensors","unet_name":"Qwen\\qwen_image_2.1_int8_convrot.safetensors","clip_name":"qwen\\qwen3vl_8b_int8_convrot.safetensors","vae_name":"qwen_image_2.1_vae_bf16.safetensors","clip_type":"qwen_image","加载模式":"分离组件 (UNet+CLIP+VAE)","lora_name_1":"none","lora_strength_model_1":1,"lora_strength_clip_1":1,"lora_name_2":"none","lora_strength_model_2":1,"lora_strength_clip_2":1,"lora_name_3":"none","lora_strength_model_3":1,"lora_strength_clip_3":1,"lora_name_4":"none","lora_strength_model_4":1,"lora_strength_clip_4":1,"lora_name_5":"none","lora_strength_model_5":1,"lora_strength_clip_5":1,"lora_name_6":"none","lora_strength_model_6":1,"lora_strength_clip_6":1,"lora_name_7":"none","lora_strength_model_7":1,"lora_strength_clip_7":1,"lora_name_8":"none","lora_strength_model_8":1,"lora_strength_clip_8":1,"lora_name_9":"none","lora_strength_model_9":1,"lora_strength_clip_9":1,"lora_name_10":"none","lora_strength_model_10":1,"lora_strength_clip_10":1,"_tp_add_lora_btn":null,"_tp_rm_lora_btn":null},"bgcolor":"rgba(0,0,0,0)"},{"id":4,"type":"VAEDecode","pos":[1352.1581372157245,-65.8117662047309],"size":[140,46],"flags":{},"order":5,"mode":0,"inputs":[{"localized_name":"Latent","name":"samples","type":"LATENT","link":7},{"localized_name":"vae","name":"vae","type":"VAE","link":null}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":[26,40]}],"properties":{"cnr_id":"comfy-core","ver":"0.41.3","Node name for S&R":"VAEDecode","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"bgcolor":"rgba(0,0,0,0)"},{"id":15,"type":"ToggleImageCompare","pos":[947.0558551183833,383.2807628933681],"size":[260,382],"flags":{},"order":7,"mode":0,"inputs":[{"localized_name":"num_sources","name":"num_sources","type":"INT","widget":{"name":"num_sources"},"link":null},{"localized_name":"num_results","name":"num_results","type":"INT","widget":{"name":"num_results"},"link":null},{"localized_name":"排版","name":"排版","type":"COMBO","widget":{"name":"排版"},"link":null},{"localized_name":"标签","name":"标签","type":"COMBO","widget":{"name":"标签"},"link":null},{"label":"原图1","name":"source1","type":"IMAGE","link":38},{"label":"原图2","name":"source2","type":"IMAGE","link":39},{"label":"结果1","name":"result1","type":"IMAGE","link":40}],"outputs":[{"localized_name":"对比图","name":"对比图","type":"IMAGE","links":[58]}],"properties":{"Node name for S&R":"ToggleImageCompare","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":[2,1,"上下两排","显示"],"widgets_values_named":{"num_sources":2,"num_results":1,"排版":"上下两排","标签":"显示"},"bgcolor":"rgba(0,0,0,0)"},{"id":22,"type":"SaveLoadImage","pos":[1868.7911975827967,76.67050610637425],"size":[421,570],"flags":{},"order":6,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":26},{"localized_name":"use_saved","name":"use_saved","type":"COMBO","widget":{"name":"use_saved"},"link":null},{"localized_name":"filename_prefix","name":"filename_prefix","shape":7,"type":"STRING","widget":{"name":"filename_prefix"},"link":null}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":null},{"localized_name":"遮罩","name":"MASK","type":"MASK","links":null}],"properties":{"Node name for S&R":"SaveLoadImage","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":["Save","ComfyUI"],"widgets_values_named":{"use_saved":"Save","filename_prefix":"ComfyUI"},"bgcolor":"rgba(0,0,0,0)"},{"id":24,"type":"ToggleLoadImage","pos":[-203.4616892085416,-65.8117662047309],"size":[270,314],"flags":{},"order":1,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":[32,38]},{"localized_name":"遮罩","name":"MASK","type":"MASK","links":null}],"properties":{"Node name for S&R":"ToggleLoadImage","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":["ComfyUI_00229_.png","image"],"widgets_values_named":{"image":"ComfyUI_00229_.png","upload":"image"},"bgcolor":"rgba(0,0,0,0)"},{"id":25,"type":"ToggleLoadImage","pos":[-203.4616892085416,378.669205833232],"size":[270,314],"flags":{},"order":2,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":[33,39]},{"localized_name":"遮罩","name":"MASK","type":"MASK","links":[]}],"properties":{"Node name for S&R":"ToggleLoadImage","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":["CMP_full25_00002_.png","image"],"widgets_values_named":{"image":"CMP_full25_00002_.png","upload":"image"},"bgcolor":"rgba(0,0,0,0)"},{"id":29,"type":"TogglePreviewImage","pos":[1352.1581372157245,76.67050610637425],"size":[421,570],"flags":{},"order":8,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":58}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":[]}],"properties":{"ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"},"Node name for S&R":"TogglePreviewImage"},"widgets_values":[],"widgets_values_named":{},"bgcolor":"rgba(0,0,0,0)"}],"links":[[1,1,0,2,1,"CONDITIONING"],[2,1,1,2,3,"LATENT"],[3,1,0,2,2,"CONDITIONING"],[7,2,0,4,0,"LATENT"],[26,4,0,22,0,"IMAGE"],[32,24,0,1,2,"IMAGE"],[33,25,0,1,16,"IMAGE"],[38,24,0,15,4,"IMAGE"],[39,25,0,15,5,"IMAGE"],[40,4,0,15,6,"IMAGE"],[58,15,0,29,0,"IMAGE"]],"groups":[],"config":{},"extra":{"ue_links":[],"ds":{"scale":1.2284597357367515,"offset":[205.95097762416663,351.244434719383]},"links_added_by_ue":[]},"version":0.4}
\ No newline at end of file
+{"id":"a6469650-cb96-4ae7-87a1-fd6014dd3877","revision":0,"last_node_id":32,"last_link_id":70,"nodes":[{"id":1,"type":"DynamicRefImageEncode","pos":[548.2320130660914,-65.8117662047309],"size":[270,462],"flags":{},"order":3,"mode":0,"inputs":[{"localized_name":"clip","name":"clip","type":"CLIP","link":null},{"localized_name":"vae","name":"vae","type":"VAE","link":null},{"localized_name":"image1","name":"image1","shape":7,"type":"IMAGE","link":32},{"localized_name":"num_images","name":"num_images","type":"INT","widget":{"name":"num_images"},"link":null},{"localized_name":"prompt","name":"prompt","type":"STRING","widget":{"name":"prompt"},"link":null},{"localized_name":"instruction","name":"instruction","type":"STRING","widget":{"name":"instruction"},"link":null},{"localized_name":"模型类型","name":"模型类型","shape":7,"type":"COMBO","widget":{"name":"模型类型"},"link":null},{"localized_name":"匹配原图尺寸","name":"匹配原图尺寸","shape":7,"type":"COMBO","widget":{"name":"匹配原图尺寸"},"link":null},{"localized_name":"输出宽度","name":"输出宽度","shape":7,"type":"INT","widget":{"name":"输出宽度"},"link":null},{"localized_name":"输出高度","name":"输出高度","shape":7,"type":"INT","widget":{"name":"输出高度"},"link":null},{"localized_name":"尺寸适配","name":"尺寸适配","shape":7,"type":"COMBO","widget":{"name":"尺寸适配"},"link":null},{"localized_name":"图层数","name":"图层数","shape":7,"type":"INT","widget":{"name":"图层数"},"link":null},{"localized_name":"宽高比","name":"宽高比","shape":7,"type":"COMBO","widget":{"name":"宽高比"},"link":null},{"localized_name":"百万像素","name":"百万像素","shape":7,"type":"FLOAT","widget":{"name":"百万像素"},"link":null},{"localized_name":"倍数","name":"倍数","shape":7,"type":"INT","widget":{"name":"倍数"},"link":null},{"localized_name":"参考图分辨率","name":"参考图分辨率","shape":7,"type":"INT","widget":{"name":"参考图分辨率"},"link":null},{"name":"image2","type":"IMAGE","link":33},{"name":"image3","type":"IMAGE","link":null}],"outputs":[{"localized_name":"conditioning","name":"conditioning","type":"CONDITIONING","links":[1]},{"localized_name":"negative","name":"negative","type":"CONDITIONING","links":[70]},{"localized_name":"latent","name":"latent","type":"LATENT","links":[2]}],"properties":{"aux_id":"electricty00/ComfyUI-Toggle-Pass","ver":"60665017a9f0f1fb0cb53714f294d7ccee961066","Node name for S&R":"DynamicRefImageEncode","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":[3,"","Describe the key features of the input image (color, shape, size, texture, objects, background), then explain how the user's text instruction should alter or modify the image. Generate a new image that meets the user's requirements while maintaining consistency with the original input where appropriate.","Qwen Image 2.1","ON",1920,1080,"参考图保比例",3,"自定义(用输出宽度/高度)",1,32,1024],"widgets_values_named":{"num_images":3,"prompt":"","instruction":"Describe the key features of the input image (color, shape, size, texture, objects, background), then explain how the user's text instruction should alter or modify the image. Generate a new image that meets the user's requirements while maintaining consistency with the original input where appropriate.","模型类型":"Qwen Image 2.1","匹配原图尺寸":"ON","输出宽度":1920,"输出高度":1080,"尺寸适配":"参考图保比例","图层数":3,"宽高比":"自定义(用输出宽度/高度)","百万像素":1,"倍数":32,"参考图分辨率":1024},"bgcolor":"rgba(0,0,0,0)"},{"id":2,"type":"ToggleSampler","pos":[945.195075140908,-65.8117662047309],"size":[350,364],"flags":{},"order":4,"mode":0,"inputs":[{"localized_name":"模型","name":"模型","type":"MODEL","link":null},{"localized_name":"正面条件","name":"正面条件","type":"CONDITIONING","link":1},{"localized_name":"负面条件","name":"负面条件","type":"CONDITIONING","link":70},{"localized_name":"Latent图像","name":"Latent图像","type":"LATENT","link":2},{"localized_name":"模型预设","name":"模型预设","type":"COMBO","widget":{"name":"模型预设"},"link":null},{"localized_name":"采样方案","name":"采样方案","type":"COMBO","widget":{"name":"采样方案"},"link":null},{"localized_name":"采样器","name":"采样器","type":"COMBO","widget":{"name":"采样器"},"link":null},{"localized_name":"调度器","name":"调度器","type":"COMBO","widget":{"name":"调度器"},"link":null},{"localized_name":"步数","name":"步数","type":"INT","widget":{"name":"步数"},"link":null},{"localized_name":"CFG","name":"CFG","type":"FLOAT","widget":{"name":"CFG"},"link":null},{"localized_name":"降噪","name":"降噪","type":"FLOAT","widget":{"name":"降噪"},"link":null},{"localized_name":"噪波随机种","name":"噪波随机种","type":"INT","widget":{"name":"噪波随机种"},"link":null},{"localized_name":"自定义Sigma表","name":"自定义Sigma表","type":"STRING","widget":{"name":"自定义Sigma表"},"link":null}],"outputs":[{"localized_name":"Latent","name":"Latent","type":"LATENT","links":[7]},{"localized_name":"降噪Latent","name":"降噪Latent","type":"LATENT","links":null}],"properties":{"aux_id":"electricty00/ComfyUI-Toggle-Pass","ver":"60665017a9f0f1fb0cb53714f294d7ccee961066","Node name for S&R":"ToggleSampler","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":["手动(不套用)","自动(按步数 + 调度器)","euler","simple",25,1,1,971656685632169,"randomize","1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568, 0"],"widgets_values_named":{"模型预设":"手动(不套用)","采样方案":"自动(按步数 + 调度器)","采样器":"euler","调度器":"simple","步数":25,"CFG":1,"降噪":1,"噪波随机种":971656685632169,"control_after_generate":"randomize","自定义Sigma表":"1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568, 0"},"bgcolor":"rgba(0,0,0,0)"},{"id":3,"type":"ToggleUnifiedLoader","pos":[193.50137286627495,-65.8117662047309],"size":[210,218],"flags":{},"order":0,"mode":0,"inputs":[{"localized_name":"unet_name","name":"unet_name","type":"COMBO","widget":{"name":"unet_name"},"link":null},{"localized_name":"clip_name","name":"clip_name","type":"COMBO","widget":{"name":"clip_name"},"link":null},{"localized_name":"vae_name","name":"vae_name","type":"COMBO","widget":{"name":"vae_name"},"link":null},{"localized_name":"clip_type","name":"clip_type","type":"COMBO","widget":{"name":"clip_type"},"link":null},{"localized_name":"lora_name_1","name":"lora_name_1","type":"COMBO","widget":{"name":"lora_name_1"},"link":null},{"localized_name":"lora_strength_model_1","name":"lora_strength_model_1","type":"FLOAT","widget":{"name":"lora_strength_model_1"},"link":null},{"localized_name":"lora_strength_clip_1","name":"lora_strength_clip_1","type":"FLOAT","widget":{"name":"lora_strength_clip_1"},"link":null},{"localized_name":"lora_name_2","name":"lora_name_2","type":"COMBO","widget":{"name":"lora_name_2"},"link":null},{"localized_name":"lora_strength_model_2","name":"lora_strength_model_2","type":"FLOAT","widget":{"name":"lora_strength_model_2"},"link":null},{"localized_name":"lora_strength_clip_2","name":"lora_strength_clip_2","type":"FLOAT","widget":{"name":"lora_strength_clip_2"},"link":null},{"localized_name":"lora_name_3","name":"lora_name_3","type":"COMBO","widget":{"name":"lora_name_3"},"link":null},{"localized_name":"lora_strength_model_3","name":"lora_strength_model_3","type":"FLOAT","widget":{"name":"lora_strength_model_3"},"link":null},{"localized_name":"lora_strength_clip_3","name":"lora_strength_clip_3","type":"FLOAT","widget":{"name":"lora_strength_clip_3"},"link":null},{"localized_name":"lora_name_4","name":"lora_name_4","type":"COMBO","widget":{"name":"lora_name_4"},"link":null},{"localized_name":"lora_strength_model_4","name":"lora_strength_model_4","type":"FLOAT","widget":{"name":"lora_strength_model_4"},"link":null},{"localized_name":"lora_strength_clip_4","name":"lora_strength_clip_4","type":"FLOAT","widget":{"name":"lora_strength_clip_4"},"link":null},{"localized_name":"lora_name_5","name":"lora_name_5","type":"COMBO","widget":{"name":"lora_name_5"},"link":null},{"localized_name":"lora_strength_model_5","name":"lora_strength_model_5","type":"FLOAT","widget":{"name":"lora_strength_model_5"},"link":null},{"localized_name":"lora_strength_clip_5","name":"lora_strength_clip_5","type":"FLOAT","widget":{"name":"lora_strength_clip_5"},"link":null},{"localized_name":"lora_name_6","name":"lora_name_6","type":"COMBO","widget":{"name":"lora_name_6"},"link":null},{"localized_name":"lora_strength_model_6","name":"lora_strength_model_6","type":"FLOAT","widget":{"name":"lora_strength_model_6"},"link":null},{"localized_name":"lora_strength_clip_6","name":"lora_strength_clip_6","type":"FLOAT","widget":{"name":"lora_strength_clip_6"},"link":null},{"localized_name":"lora_name_7","name":"lora_name_7","type":"COMBO","widget":{"name":"lora_name_7"},"link":null},{"localized_name":"lora_strength_model_7","name":"lora_strength_model_7","type":"FLOAT","widget":{"name":"lora_strength_model_7"},"link":null},{"localized_name":"lora_strength_clip_7","name":"lora_strength_clip_7","type":"FLOAT","widget":{"name":"lora_strength_clip_7"},"link":null},{"localized_name":"lora_name_8","name":"lora_name_8","type":"COMBO","widget":{"name":"lora_name_8"},"link":null},{"localized_name":"lora_strength_model_8","name":"lora_strength_model_8","type":"FLOAT","widget":{"name":"lora_strength_model_8"},"link":null},{"localized_name":"lora_strength_clip_8","name":"lora_strength_clip_8","type":"FLOAT","widget":{"name":"lora_strength_clip_8"},"link":null},{"localized_name":"lora_name_9","name":"lora_name_9","type":"COMBO","widget":{"name":"lora_name_9"},"link":null},{"localized_name":"lora_strength_model_9","name":"lora_strength_model_9","type":"FLOAT","widget":{"name":"lora_strength_model_9"},"link":null},{"localized_name":"lora_strength_clip_9","name":"lora_strength_clip_9","type":"FLOAT","widget":{"name":"lora_strength_clip_9"},"link":null},{"localized_name":"lora_name_10","name":"lora_name_10","type":"COMBO","widget":{"name":"lora_name_10"},"link":null},{"localized_name":"lora_strength_model_10","name":"lora_strength_model_10","type":"FLOAT","widget":{"name":"lora_strength_model_10"},"link":null},{"localized_name":"lora_strength_clip_10","name":"lora_strength_clip_10","type":"FLOAT","widget":{"name":"lora_strength_clip_10"},"link":null},{"localized_name":"加载模式","name":"加载模式","type":"COMBO","widget":{"name":"加载模式"},"link":null},{"localized_name":"ckpt_name","name":"ckpt_name","type":"COMBO","widget":{"name":"ckpt_name"},"link":null}],"outputs":[{"localized_name":"模型","name":"MODEL","type":"MODEL","links":[]},{"localized_name":"CLIP","name":"CLIP","type":"CLIP","links":[]},{"localized_name":"VAE","name":"VAE","type":"VAE","links":[]}],"properties":{"aux_id":"electricty00/ComfyUI-Toggle-Pass","ver":"60665017a9f0f1fb0cb53714f294d7ccee961066","Node name for S&R":"ToggleUnifiedLoader","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"},"tp_broadcast":true},"widgets_values":["krea2-aio-fp8-checkpoint.safetensors","Qwen\\qwen_image_2.1_int8_convrot.safetensors","qwen\\qwen3vl_8b_int8_convrot.safetensors","qwen_image_2.1_vae_bf16.safetensors","qwen_image","分离组件 (UNet+CLIP+VAE)","none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,"none",1,1,null,null],"widgets_values_named":{"ckpt_name":"krea2-aio-fp8-checkpoint.safetensors","unet_name":"Qwen\\qwen_image_2.1_int8_convrot.safetensors","clip_name":"qwen\\qwen3vl_8b_int8_convrot.safetensors","vae_name":"qwen_image_2.1_vae_bf16.safetensors","clip_type":"qwen_image","加载模式":"分离组件 (UNet+CLIP+VAE)","lora_name_1":"none","lora_strength_model_1":1,"lora_strength_clip_1":1,"lora_name_2":"none","lora_strength_model_2":1,"lora_strength_clip_2":1,"lora_name_3":"none","lora_strength_model_3":1,"lora_strength_clip_3":1,"lora_name_4":"none","lora_strength_model_4":1,"lora_strength_clip_4":1,"lora_name_5":"none","lora_strength_model_5":1,"lora_strength_clip_5":1,"lora_name_6":"none","lora_strength_model_6":1,"lora_strength_clip_6":1,"lora_name_7":"none","lora_strength_model_7":1,"lora_strength_clip_7":1,"lora_name_8":"none","lora_strength_model_8":1,"lora_strength_clip_8":1,"lora_name_9":"none","lora_strength_model_9":1,"lora_strength_clip_9":1,"lora_name_10":"none","lora_strength_model_10":1,"lora_strength_clip_10":1,"_tp_add_lora_btn":null,"_tp_rm_lora_btn":null},"bgcolor":"rgba(0,0,0,0)"},{"id":4,"type":"VAEDecode","pos":[1352.1581372157245,-65.8117662047309],"size":[140,46],"flags":{},"order":5,"mode":0,"inputs":[{"localized_name":"Latent","name":"samples","type":"LATENT","link":7},{"localized_name":"vae","name":"vae","type":"VAE","link":null}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":[26,69]}],"properties":{"cnr_id":"comfy-core","ver":"0.41.3","Node name for S&R":"VAEDecode","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"bgcolor":"rgba(0,0,0,0)"},{"id":15,"type":"ToggleImageCompare","pos":[947.0558551183833,383.2807628933681],"size":[260,170],"flags":{},"order":7,"mode":0,"inputs":[{"localized_name":"num_sources","name":"num_sources","type":"INT","widget":{"name":"num_sources"},"link":null},{"localized_name":"num_results","name":"num_results","type":"INT","widget":{"name":"num_results"},"link":null},{"localized_name":"排版","name":"排版","type":"COMBO","widget":{"name":"排版"},"link":null},{"localized_name":"标签","name":"标签","type":"COMBO","widget":{"name":"标签"},"link":null},{"label":"原图1","name":"source1","type":"IMAGE","link":67},{"label":"原图2","name":"source2","type":"IMAGE","link":68},{"label":"结果1","name":"result1","type":"IMAGE","link":69}],"outputs":[{"localized_name":"对比图","name":"对比图","type":"IMAGE","links":[58]}],"properties":{"aux_id":"electricty00/ComfyUI-Toggle-Pass","ver":"60665017a9f0f1fb0cb53714f294d7ccee961066","Node name for S&R":"ToggleImageCompare","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":[2,1,"上下两排","显示"],"widgets_values_named":{"num_sources":2,"num_results":1,"排版":"上下两排","标签":"显示"},"bgcolor":"rgba(0,0,0,0)"},{"id":22,"type":"SaveLoadImage","pos":[1868.7911975827967,76.67050610637425],"size":[421,570],"flags":{},"order":6,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":26},{"localized_name":"use_saved","name":"use_saved","type":"COMBO","widget":{"name":"use_saved"},"link":null},{"localized_name":"filename_prefix","name":"filename_prefix","shape":7,"type":"STRING","widget":{"name":"filename_prefix"},"link":null}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":null},{"localized_name":"遮罩","name":"MASK","type":"MASK","links":null}],"properties":{"aux_id":"electricty00/ComfyUI-Toggle-Pass","ver":"60665017a9f0f1fb0cb53714f294d7ccee961066","Node name for S&R":"SaveLoadImage","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":["Save","ComfyUI"],"widgets_values_named":{"use_saved":"Save","filename_prefix":"ComfyUI"},"bgcolor":"rgba(0,0,0,0)"},{"id":24,"type":"ToggleLoadImage","pos":[-203.4616892085416,-65.8117662047309],"size":[270,314],"flags":{},"order":1,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":[32,67]},{"localized_name":"遮罩","name":"MASK","type":"MASK","links":null}],"properties":{"aux_id":"electricty00/ComfyUI-Toggle-Pass","ver":"60665017a9f0f1fb0cb53714f294d7ccee961066","Node name for S&R":"ToggleLoadImage","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":["ComfyUI_00229_.png","image"],"widgets_values_named":{"image":"ComfyUI_00229_.png","upload":"image"},"bgcolor":"rgba(0,0,0,0)"},{"id":25,"type":"ToggleLoadImage","pos":[-203.4616892085416,378.669205833232],"size":[270,314],"flags":{},"order":2,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":[33,68]},{"localized_name":"遮罩","name":"MASK","type":"MASK","links":[]}],"properties":{"aux_id":"electricty00/ComfyUI-Toggle-Pass","ver":"60665017a9f0f1fb0cb53714f294d7ccee961066","Node name for S&R":"ToggleLoadImage","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"widgets_values":["CMP_full25_00002_.png","image"],"widgets_values_named":{"image":"CMP_full25_00002_.png","upload":"image"},"bgcolor":"rgba(0,0,0,0)"},{"id":29,"type":"TogglePreviewImage","pos":[1352.1581372157245,76.67050610637425],"size":[421,570],"flags":{},"order":8,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":58}],"outputs":[{"localized_name":"图像","name":"IMAGE","type":"IMAGE","links":[]}],"properties":{"aux_id":"electricty00/ComfyUI-Toggle-Pass","ver":"60665017a9f0f1fb0cb53714f294d7ccee961066","Node name for S&R":"TogglePreviewImage","ue_properties":{"widget_ue_connectable":{},"input_ue_unconnectable":{},"version":"7.8"}},"bgcolor":"rgba(0,0,0,0)"}],"links":[[1,1,0,2,1,"CONDITIONING"],[7,2,0,4,0,"LATENT"],[26,4,0,22,0,"IMAGE"],[32,24,0,1,2,"IMAGE"],[33,25,0,1,16,"IMAGE"],[58,15,0,29,0,"IMAGE"],[67,24,0,15,4,"IMAGE"],[68,25,0,15,5,"IMAGE"],[69,4,0,15,6,"IMAGE"],[2,1,2,2,3,"LATENT"],[70,1,1,2,2,"CONDITIONING"]],"groups":[],"config":{},"extra":{"ue_links":[],"ds":{"scale":2.1762913579015386,"offset":[-446.7156120634379,179.77454293663703]},"links_added_by_ue":[]},"version":0.4}
\ No newline at end of file
diff --git a/example_workflows/Krea2 Pose Editing.json b/example_workflows/Krea2 Pose Editing.json
new file mode 100644
index 0000000..4c3f580
--- /dev/null
+++ b/example_workflows/Krea2 Pose Editing.json
@@ -0,0 +1,1422 @@
+{
+ "id": "ef71ff7c-e4bc-498d-b792-67032f8d0f50",
+ "revision": 0,
+ "last_node_id": 10,
+ "last_link_id": 14,
+ "nodes": [
+ {
+ "id": 1,
+ "type": "ToggleUnifiedLoader",
+ "pos": [
+ 60,
+ 120
+ ],
+ "size": [
+ 210,
+ 218
+ ],
+ "flags": {},
+ "order": 0,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "unet_name",
+ "name": "unet_name",
+ "type": "COMBO",
+ "widget": {
+ "name": "unet_name"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "clip_name",
+ "name": "clip_name",
+ "type": "COMBO",
+ "widget": {
+ "name": "clip_name"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "vae_name",
+ "name": "vae_name",
+ "type": "COMBO",
+ "widget": {
+ "name": "vae_name"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "clip_type",
+ "name": "clip_type",
+ "type": "COMBO",
+ "widget": {
+ "name": "clip_type"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_1",
+ "name": "lora_name_1",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_1"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_1",
+ "name": "lora_strength_model_1",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_1"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_1",
+ "name": "lora_strength_clip_1",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_1"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_2",
+ "name": "lora_name_2",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_2"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_2",
+ "name": "lora_strength_model_2",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_2"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_2",
+ "name": "lora_strength_clip_2",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_2"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_3",
+ "name": "lora_name_3",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_3"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_3",
+ "name": "lora_strength_model_3",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_3"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_3",
+ "name": "lora_strength_clip_3",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_3"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_4",
+ "name": "lora_name_4",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_4"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_4",
+ "name": "lora_strength_model_4",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_4"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_4",
+ "name": "lora_strength_clip_4",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_4"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_5",
+ "name": "lora_name_5",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_5"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_5",
+ "name": "lora_strength_model_5",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_5"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_5",
+ "name": "lora_strength_clip_5",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_5"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_6",
+ "name": "lora_name_6",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_6"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_6",
+ "name": "lora_strength_model_6",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_6"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_6",
+ "name": "lora_strength_clip_6",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_6"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_7",
+ "name": "lora_name_7",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_7"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_7",
+ "name": "lora_strength_model_7",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_7"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_7",
+ "name": "lora_strength_clip_7",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_7"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_8",
+ "name": "lora_name_8",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_8"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_8",
+ "name": "lora_strength_model_8",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_8"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_8",
+ "name": "lora_strength_clip_8",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_8"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_9",
+ "name": "lora_name_9",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_9"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_9",
+ "name": "lora_strength_model_9",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_9"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_9",
+ "name": "lora_strength_clip_9",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_9"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_name_10",
+ "name": "lora_name_10",
+ "type": "COMBO",
+ "widget": {
+ "name": "lora_name_10"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_model_10",
+ "name": "lora_strength_model_10",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_model_10"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "lora_strength_clip_10",
+ "name": "lora_strength_clip_10",
+ "type": "FLOAT",
+ "widget": {
+ "name": "lora_strength_clip_10"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "加载模式",
+ "name": "加载模式",
+ "type": "COMBO",
+ "widget": {
+ "name": "加载模式"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "ckpt_name",
+ "name": "ckpt_name",
+ "type": "COMBO",
+ "widget": {
+ "name": "ckpt_name"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "模型",
+ "name": "MODEL",
+ "type": "MODEL",
+ "links": [
+ 6
+ ]
+ },
+ {
+ "localized_name": "CLIP",
+ "name": "CLIP",
+ "type": "CLIP",
+ "links": [
+ 1
+ ]
+ },
+ {
+ "localized_name": "VAE",
+ "name": "VAE",
+ "type": "VAE",
+ "links": [
+ 2,
+ 11
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "aux_id": "electricty00/ComfyUI-Toggle-Pass",
+ "ver": "60665017a9f0f1fb0cb53714f294d7ccee961066",
+ "Node name for S&R": "ToggleUnifiedLoader"
+ },
+ "widgets_values": [
+ "Qwen-Image-2.1-aio-unet.safetensors",
+ "krea2\\krea2_turbo_fp8_scaled.safetensors",
+ "krea2\\qwen3vl_4b_fp8_scaled.safetensors",
+ "qwen_image_vae.safetensors",
+ "auto",
+ "分离组件 (UNet+CLIP+VAE)",
+ "krea2\\krea2_identity_edit_v2.safetensors",
+ 1,
+ 1,
+ "none",
+ 1,
+ 1,
+ "none",
+ 1,
+ 1,
+ "none",
+ 1,
+ 1,
+ "none",
+ 1,
+ 1,
+ "none",
+ 1,
+ 1,
+ "none",
+ 1,
+ 1,
+ "none",
+ 1,
+ 1,
+ "none",
+ 1,
+ 1,
+ "none",
+ 1,
+ 1,
+ null,
+ null
+ ],
+ "widgets_values_named": {
+ "ckpt_name": "Qwen-Image-2.1-aio-unet.safetensors",
+ "unet_name": "krea2\\krea2_turbo_fp8_scaled.safetensors",
+ "clip_name": "krea2\\qwen3vl_4b_fp8_scaled.safetensors",
+ "vae_name": "qwen_image_vae.safetensors",
+ "clip_type": "auto",
+ "加载模式": "分离组件 (UNet+CLIP+VAE)",
+ "lora_name_1": "krea2\\krea2_identity_edit_v2.safetensors",
+ "lora_strength_model_1": 1,
+ "lora_strength_clip_1": 1,
+ "lora_name_2": "none",
+ "lora_strength_model_2": 1,
+ "lora_strength_clip_2": 1,
+ "lora_name_3": "none",
+ "lora_strength_model_3": 1,
+ "lora_strength_clip_3": 1,
+ "lora_name_4": "none",
+ "lora_strength_model_4": 1,
+ "lora_strength_clip_4": 1,
+ "lora_name_5": "none",
+ "lora_strength_model_5": 1,
+ "lora_strength_clip_5": 1,
+ "lora_name_6": "none",
+ "lora_strength_model_6": 1,
+ "lora_strength_clip_6": 1,
+ "lora_name_7": "none",
+ "lora_strength_model_7": 1,
+ "lora_strength_clip_7": 1,
+ "lora_name_8": "none",
+ "lora_strength_model_8": 1,
+ "lora_strength_clip_8": 1,
+ "lora_name_9": "none",
+ "lora_strength_model_9": 1,
+ "lora_strength_clip_9": 1,
+ "lora_name_10": "none",
+ "lora_strength_model_10": 1,
+ "lora_strength_clip_10": 1,
+ "_tp_add_lora_btn": null,
+ "_tp_rm_lora_btn": null
+ }
+ },
+ {
+ "id": 2,
+ "type": "ToggleLoadImage",
+ "pos": [
+ 60,
+ 780
+ ],
+ "size": [
+ 270,
+ 102
+ ],
+ "flags": {},
+ "order": 1,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "image",
+ "name": "image",
+ "type": "COMBO",
+ "widget": {
+ "name": "image"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "upload",
+ "name": "upload",
+ "type": "IMAGEUPLOAD",
+ "widget": {
+ "name": "upload"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "图像",
+ "name": "IMAGE",
+ "type": "IMAGE",
+ "links": [
+ 4,
+ 12
+ ]
+ },
+ {
+ "localized_name": "遮罩",
+ "name": "MASK",
+ "type": "MASK",
+ "links": null
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "aux_id": "electricty00/ComfyUI-Toggle-Pass",
+ "ver": "60665017a9f0f1fb0cb53714f294d7ccee961066",
+ "Node name for S&R": "ToggleLoadImage"
+ },
+ "widgets_values": [
+ "20251213_210402.png",
+ "image"
+ ],
+ "widgets_values_named": {
+ "image": "20251213_210402.png",
+ "upload": "image"
+ }
+ },
+ {
+ "id": 3,
+ "type": "PoseReference",
+ "pos": [
+ 420,
+ 780
+ ],
+ "size": [
+ 340,
+ 508
+ ],
+ "flags": {},
+ "order": 2,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "category",
+ "name": "category",
+ "type": "COMBO",
+ "widget": {
+ "name": "category"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "group",
+ "name": "group",
+ "type": "COMBO",
+ "widget": {
+ "name": "group"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "pose",
+ "name": "pose",
+ "type": "COMBO",
+ "widget": {
+ "name": "pose"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "view",
+ "name": "view",
+ "type": "COMBO",
+ "widget": {
+ "name": "view"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "source",
+ "name": "source",
+ "shape": 7,
+ "type": "COMBO",
+ "widget": {
+ "name": "source"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "long_edge",
+ "name": "long_edge",
+ "shape": 7,
+ "type": "INT",
+ "widget": {
+ "name": "long_edge"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "flip",
+ "name": "flip",
+ "shape": 7,
+ "type": "COMBO",
+ "widget": {
+ "name": "flip"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "image",
+ "name": "image",
+ "type": "IMAGE",
+ "links": [
+ 3
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "aux_id": "electricty00/ComfyUI-Toggle-Pass",
+ "ver": "60665017a9f0f1fb0cb53714f294d7ccee961066",
+ "Node name for S&R": "PoseReference",
+ "tp_pose": {
+ "key": "全身单人・性感系|坐姿|P017_正坐・挺胸后仰|正面|线稿",
+ "img": "data:image/webp;base64,UklGRg4nAABXRUJQVlA4IAInAAAQkwCdASosAZABPlEmkEYjoiGhJHI6mHAKCWlu/HyZN+tQx/2J/xfpM8BPyn9s8mfxv5/+2/l1/gfY9/xPGN5n+7f8D/Kepv8V+t34T+zf4T/lf3f2+/5PgP8lPmz2BfaP+z/te+J289AX28+w/6780/836KX+d/evUj84/sH+g/tnwA/yb+df4j+1ful/dv///8/uf/Sf8zxN/s/+8/6P+m+AL+M/0r/Nf3z94P8r///tu/jv+Z/iv9x+3Htu/Q/7h/xP8j/rf2d+xL+Yf1D/Zf3z8k//////vO9jn7I//T3Nv1u/3v5/lA8s3V/LYZg8q61GPCsjUzDpwP2JHcBa6uqvWgSvpWSvxTtdZNR0L2r1ZH246BPQHcH8f3Br5fscDrW371ovLAmym2EjslAvCz/PAlWms9ZPwajHRWSl8kiXxI19Y3A9jKBMrYmDyu/wOsT/hHeFWbgRs+W15n5aK5T88q60X+WJwwx76DISLtF7m9cAqoOIynFbKNkHw4hPFV2yS9SnLoBTj2A0bgOsqpdWkkWSODfHar2zPFsaPdGbtORGF1Hczs9wWHiMrumXKJnXq6YdfyXswedS6wc1o49KNmSz20js5yCcYS89TH90XhIMco41bZTYZiPfhLE2M7g272KtXXLiN0++3K99Egmv3V7aoPevzTuYoM+i8FOddmcAuRVdcVX5SGNtS06BVZ1KvLpUeWTZwHpPYzhCx9sB3MdTLJTNAUte9uXj6djWe7lxeXN4CEK3W7jzFj+JDcNFqjDch3aSvlPjsliGZPw3Mm0H3YYxpWDRrYvvFYsi6L2ysBAluFmBgUN91KDQvqPdMDYw8JgQYeR8p7kK6eQAFLIs1hCvzTj/38zdbj46KAlLorwpEBkM36AqgDOS/N4FvanZ5gT05dIaOafl3iyeN972u2GeOdhf8jmRIhZdu1F3E1lW2dw/RcuNDcrlp3TeS9O22wRf9eCBFSa4d9BJdf1jarh6oyj+kO+rDm0SmUaKtOlJxi4B4Ndqg074APfJ15s/PLJD5nA7SIjYhmlXts9JJeP/qkk5w/U0XF9upjCvGH7/A9XLGrk9r5ABZ+GNrVhe80VjTNm0+yy16PDuQIofmD2us93Lily+mEQUq7YRAOh+J++plLuXVLfYV74QmG0e/c91igtX72FcYlcldvxzyu/vw5gk9EonBIkDP79eQIi3pZDWWrByFO/wGSiYd8csgFi5G8QMt9UjfYeWmQlG2QZhBJVN/dG9cU8ZCpKybxKsr5OOzrVsOlUrwrW5iRYUSt7h6Zgc409a26x8gjzy8EcXwR1gEcq6ccSSSrEnlGJkk8YtNiTQkNZWVbUFyNv3VZ4eV3w4t9aIt4W/Gkh37+J8KVXIPKiSxsE4mfjpIxt+s9zywVPm/jQtY3bobAVwN+9TX2GeglWBVJYaW0foQhAMuu7bAIwGi4ag5mBYnREN8MTeqbnTX1yVXE4trZ2Lwl3VdwWL50et3TITQsw0UzL70US1aIxbL+sbVaAy1qhRwG8d68vbGwLvLFsQxMw/4Cfq0VzJgCnsn2XHdGQj6YnhfgVAHlQ/1EAA/v+uzpyU6NAE0oz+l6jgPD3pIfcHgby/3gxMTHKN1tmdD6kRiy0Bu7kY9SkVWmNcKncJJDLchTDTb65xddA5U93Pwti4i9gUQ371DftfV0HZoN9LJz230rWaHoAubob1i6fOBR5z/+h14R/lnWWRE6mFbC+hvzMaDLnDS8o8l37WdMVnb6x8gyl/mxgo2HTssMWEcEll52ruhRWBFAl8fo/1byYk4/VUOttgDhkymKpOqs7ZzEtyZYlzaQ9aX4MQL7HjbqfnngM+u7fCVg8fU+3NXyPNx3W1B59NqMDhHuFZaO+mjzREgiFbpc/Hwsrhj7SRj5FNuPe+NIt2Wz/FJFC6lUZXIA321xjTkqqCD4odl6gOrO241qsqjgD811wKdsM+7X+mySJLFTHZl8MtfGtwo8Vpo+7zuPWCdRsQOx6sEiFe0rzGn/2qu8Hp9BMOEavUXVbPUdLf+AG0ZLT1E7xxYaD3q0ni75fBRgtLgGghjPFZ0bDaefeCsye9+YjKm0/exKOvz+cqCirbPVQKij7+6w9KGhk6qrxBfkIEsQZbWWMuOIBEro8/ql4Koblkp4VVKptXGOsVhRTRU6uGKYZY6J9/WSQDArgK160rzmfWsGlitzzYGksGMe401+FMo4AJllHqq7UnBs7L6I828c6m5dF9TMdw/FgZrNYwQ1E0/QHu93lDwFixlKB5cMehajtuGZnwGOg2ep/UZIn1NVnyg6Y3jhh/NUP0TEAfClKtxPktBGRAZZHn9ZSLKisImpJAjWmwO167IVnM4l6x9Pm8wJ7t/UEtZ+Gx9GvcTThF19TyRZ0ee2Y4AzqmhmAGe4PhKu6zxvx7LuUiQZGfwJA0kR2NpfL/bg/2dmyTHUVDSWupliIj6Sz8wuDLAO+pqAYSRuB22udyDQYkh2B2wviRrjGq3mN95pTdUx+MhV8bhd6aBShhua2hDkClCRQ+2OwOxdjAVwmuSF/0nxJTUwXGwltmVohGqYKLJ72I+HyF5lth4DfUw7M8zPG7qIOAzxCUJL5qeB8g8bzQs1oThQU3In0QmpK3zrrVnAT3LwMJq0i/PbrCqiWthd+Fjhp5xEpOfCHXI/MNEDe/BwcN3xZ7NaO3fOZ6EvCg5ih7XnV9Mhk7tz1+pIsXwpArVN307GCGyK6L+lAAKOxd+Wu14VWSxVv1ZG4NRJrdQnojTpV04qkfP23imrGckOw6ML5IsyWmZdkZInEpiLhWGUBntkhcxfT2vENYWryqKE8UZLmvLjf9c+XZnHTyWes3KsfhzK6G32wylVqN5YO5nJBbdKca6uXgm+ib2o3LooyMVXtdWHEfKpcCFyvCu2KC4ymh8wUkt38w6Bkw9Wg5Nc4WEU4d4FK5pD8J+q9hD/4YZnHUvc2CoAHOoOMClGzUyCB8IrD5II+IUxN7pdC3tNIsumuxq20BdV38vqdLHQHMaf0vZo33PyRc7VwzNg2E017MLDhn+etxB+rpf0UAljxaxXYZWxBW3uP3wzDXX5/xIlB8mQ344sKvXYm0UNfpVdR6OVzm/wWiZ5049psGWtO219azOLVHV8+phE7/eKGpJRpcu9TErYtwWdn9tjmmqda14zdjpTcy3wl0yp0JkDL/X7cBjn76zBwhsJ3+qnbCjxqVgP76nH1UDR8kz0N/5EEBf7HgKRdrEybwUZKCLSfgFH3fs/0U1ggpwAwYNtDnwI4c9uJWL50OoY4OY6H/eYW7p9AAp6a8uIBKy4i1QKRu2ev5GvibhnC5FB98etWr8NCqkz0EB/uYuIK3w8IzvSycLJAg0Ss7yDmscFi7KwwAelS87PISFfpQoThty9f020Oq9Uy+YksGnD8xz/B4Pd2W4P3g93ElkZ35YrK20qPXYixvdo2m8Iy2fc9w9v1Qqh/E4BxguL2lCpIjOAObfDmK/yHBcAwDOetv0AV7a9gCKLdy4P8fn5ar6T9jM0Ml8/IODFRRoucQdxRkY47II+YBm0DvgC1DzdswmmGtjJj040Ar8ySEtkVMWH7vQplDaSAiOYaVi9GQOBCwRG0IqBryu10eNo2FOPdIrrQaxC8UixGWYMM1IpD5GNxK268IxfF+jOBKFdTOyG6PAvLr0yH5zQ1MgBlZdrknvrFsRTZWpVkQgwpAvSVA7iUeJLWd8U9QFbGEA6knqH49eE2Ub+cGwjLZfmb8FzqutfqxtZ5RXcijqX4h5hRG/HKx/8Eh5MzOPa6qQgLZ8yyST8mDuqkPg/fVfjRJoW2aqB0g5q24wOVkIap9EvQccyBHF/ISok1WF/7tlrpmmdP/K8pJA54NN2UKDMYjNga5PXXtNaRMMBpQAjtJZbaX4QVUlXLGW0GDzDWtvFOjWjjn1g67wbyLzVOFIPU99zwEs426ZhQ2J2Q9qZPrIyAfu5eyghrNo5PKM6tZ6p1nSIaPhoL+sg8Ppl6noeQ8BKqVwwSFc6mCc5BLDcrrYBgzHtAs8Zy5DnG53Xa/h2PismxH3n79vwyrqApodqvVf4Re92n8Yi76g2oUXlDX11UJiQZacmnb4X5tRoLlVzF+ghuq4aRuqMLy5Rymul8Js/KW0VVi+pcbs1RqucEpor6gkuzI0UXoxkG4qF166iaWQMffhB2tfREobqREgOBdf/pgD1UnEl13uNyDwgFl2LShl2Q9E7Ov895WtKSGJvg/ALpHefWMEX14k3ej8UVQG9VQA/ZQJaXLSz1Vy6pMojfUyGugyguX1Vm2zvJ/9M+EPsDXRhiJ7RBOZ4ZecvuiQlM1wAzFCJKG0AqafmSUYgeHekzXmlr6SM3ZjghOJSu3tP6LSRrYjA00dFuagcChy7h6eyytmaf4KZH/GNrvLLYjN3/EE93kAHmf2wMrK1PYVU/1pZuTeqC8aPRbIWVHXa/0tFei7L/m5BMTCzvIsYxXnVFkFE974gDclm83gOYfTowmJ10Yg1DvOtusEXknCuGVjzWQ+AD+CMtx93eJ3Ty9TM0E9p5t9PmUFVEeeGcW+51HSSa3Vmf/xc2mnwAPxgASMsVjBtLknbbT7gReyGMZTZCglsc6/fOPEVKxBs2R6vL9vTyt2XbcEGKXHMZXud3Y0JZJNxelhgm7ZCWXi+36YfDCDk24K3hMBK0d/iJBNDfqRZp6PlB96HJls3PbmJ8dwxmkZ9Q7vkMYEKcVOrzLtdmRCUACiZPWVsR+C5efXyXGJ6p0Ezvx2q8BzHu9dCbsUzBnX7tlmb3M/eDoXIOEhtBZ/J5AJQ26kRy/AR8N+q/9YK49kKGArGIPfBu5wYDtNpilPtWtv9+7nXCORCNyh0KpRgi/HIFbSGHEQ08PlJxWoyZGB7omi8Lzz8ah6065H49nO5vYROGajG0Xnfn+omOETDAhOJq22sdRGtGvtY68XO20Pv5mCIOvf0iA9WBoA80/PjpUHjNfwhNn5TDhU3AxreYG/iWB/NVnpWVnhYcKPEtCl5Ur49eRkINfHqpy+ZpLuZ7yS3ttKHSdAkHbShDkXqJuaOOnKW5+bs1r5c7pwD0ikzeGb8hCZWwDFa/tOegVC3e5oX7u2VqEGfZvehV3q+S8bKAbBFGqGYKSn5lIYN8laYuoAtT0zHi9Aesi3HJsGARSTg/JvuJwgeUtv0OKXI2CjlTWmTdJ47KSF3Pj3At1g8A/SgooMhp3ZGpQJyCeFR41GGmy7BgqufLyjtZ162cwowU0UDNrsqOt95EEP/YwhmxkO+i+kn9jIekzfp/xWsYGMtVRsZ3alRAaIpGzlSd/33UDXfwAmgf3x+vk2L83wcxtkOSlTJyD+lelKy94IB2ho8OKBAIDfRpriW8fJ/4j1d0qe9EHJZKwMPkc2G3Bn8aVPLhD1lXFI9BRL37b+Hb6xxYSwqS7qTRVBfu2ZwG8Z7GH82aehuPi9eI4EZaRy36egk5ZXmuiF7EzaoIt4tWx3gYcjT/31+6H/ebKQkULhCA0JAnte1iwbDWcvJL1BqvyCRXXllY193CGk8uWiqsXrAIs1pkvjme+nFCWma/OyttrBeHwjN6UDcEJ8kN7y08t/J2rG37b+EpuDWLabMqF4PdxPAW6q9csJTcKU3WFqQyjMvHZmdq1Gg8i0GC8JLF2HGW8SnHBvlUs6u89AyPMBpA6Z0NK5PDKC84HLE4ajJ3HE2O8tVwjf/NP1tLuk7KEmegNMJaNJG7c72l0xn7w+JpSPBah9AgjbfzuV/kjPH79Sd9+4+CuctjObk9LFWLN9j8B5QVUHFpHZGFjZESJxPiQRCjgv9b+WTopxHoq/y0bQE57Oc3EA4AMozn6ADlHq+grSF3lHORcY6/TfZBXzEU76zY2j89QH20eqRzr8mzzmBUu7Jjn4LiYPliKTCw4bvU6AC1Drsmyf5sXlp3sEp8BfF+aK+EQcFrszyU40OVdRvKqWKwvvE1KcbMY0gAA+jGx3vGDEanb7uzMLbn+N0VeX7fdFXokS6WcTunvFzN1gO3KoeuPBrNhEdD/TX612kTNOAeI3uiG2JPcr0VUyg5SXqPAXoGdy99GC1w/j6oONfsKm2Bwup+STPEE09MuO0Dg4NHb7SsvjN9ru4HJ+dqlDLgMHPHyqK/vsC1NwWsdbHeJWEeONNqfIVjmUbGwbdLD5pwCJBbHdRZASfUKAn7INO2G2s7Y5IbPwFBgJGOHyegiYYZlt2ppqRueL0Oqp7AnI+9PesJSEE/LPoB12lQ0RWeVeM6PMyiPALHbNGZYNK4ZhNW04Zzokl/XWR/ExKAy7mfOSY02oUlLsi19gFRMH8NrA11cyKVvg3wvjyHRBLJl/4kpWsSCe1BssoOUDRnXxabmmXil0nONFKmPh4Ax3LndlkAphSavV5MdOViD0CRlWN8o55uE/8cLx4H2x0wD3mBZ8qULS1cC3I76QcpLE4S5TNVtfwCxedkEL/9S2JySMWA+Jq6007v1SFndSrK3nIQa7WKEpJe0Z79VC4UMWDC8X9KcI43U1R9aLYDumXWR5VleMOcxK35Z7Or24BZIJowk4TTU9usuBNFw78HHQ9dkk5h5LaTRxGrVXrPaVd3ug/FevlBQBaIJUUmDV1RgCIxp9tMe5nd6p5pyReM8vFWBEMJDyms6mPWzdiUvtnp7C4Jx1JruQn5XX3VXrE1u7wB2M3Tvfm2CayYHNXP24SViyGL8KhERc8+m6khBnC+1GbGjVwF5e4M5fvTf9bP75raqfIpLOOBOSFAXfyYP7TSlWgPXIVbDAZ1WWDi4BN5qYR7HTJChaUj4s47yfCHko0GY5SXCl6rHuFrn73y/KsJnk9HNcloUw4C2zHgWsZSPzBYF9OToe9xsEkCvcI16NJ+drtoST+9wQOaz9qlkbQYUF64r3y7+vrraqF0+57beGYKFJ17dFXR6b2qfFZyaB0HQyGub47/asByrtqadXHvNLUP0jX5xnTHtXEHP9Uft9CZhxfrNifnjoawRf0p3f7hXNI3NP2DaKSpeHJc5h76zCoykIf0UBDMTG83FLOLEFOz+yi2GkVjFJhh4jcn1inp5PBY/dWLzszY7FbhXWz6Zge1g9u0RgMZwOFz4lM3LETDSxDADczB3g6XwhyXRwnGugNzXDNfG0BQOwpsmGAaYQUyqLvOn/RBPfc2Qff3mxlsL5XjZeJy19kvcwsUVUWxB4xtQf9rNNsjdLfBzfAbztfTiZVY0lxP782rxDeFKf9J+Pv5EJEQ87Gfg4yHZX4lLwvwuRZZ/zZJqvPxQ5luZIVHoYWBVKTTNFCbC1aUcpKOatB0keHoa9ynPqx1J8dk87sI9Ru/HbaU67/8kLVxFORVPRzE+/EGQikOgPc6MpH1alYnLOPHdkZQqsv+EPZeSwrmJCelmKp2GGwmopTztdZF6o0x5ss3nptg59Trt1Oy5ZA8IW2sA7I406Pa3q1BXwCr2Ze7/AGBgDa5yvxsp8ONz8AK2ew7GyrAYae9BxdMmHeqaTjeMNrgpdB1c5y8rGMNsKdzUtvO7uct9g4sJWJoQ/iEkyLpII/BVLSAu1IBj0BuF4xcXhJIsqiF48D3/q6CkEJlVylyHAvI2my34wlrFpfmYW2Zd7I7RDzmi7hBr7mFivwjPgZHfEfsX+brLrIwd0UFDYjgthIjgnOk27YcTCDIg1U+LatYjhDrF7ac966TIG63USJbHiaxTfZyV00Vwhzw/lFVZsEy3u7G4QmCx9pMLGIwf86Mjjp164XdgbnVh4hkrlVXuaeFyb7mq4XQRxxpyqem4QbuYiDfnaDE6Umds9cEOVHwX/J2HnhKmrsUQLV7EtmNaIptcndTWPEEaJmmN4d1HsQGw97VB6d8/d/30sTecLRCLDb3NhG1Cg1ShmZscougqFCeEWjYazZPpwGWU9Evut49kepOELVmmAwN+2n49fsjMe8gEUTF8qviuHy6dxvgFiWHIPTwewlwcOZyaKt453DE5/LwLN78fWpOX1qgCQezqHEe2WlPAT0gKiyUS73C9rGXo6X/An1pusAkP8HIKIw+J5rIcnxOh7kinLA8q1s/56IkyclYSUDy9QrxHqtkTGMzkskrXW2SnqWWXelfRowC/C+jmmyXx7iGVqqtHyC77HPgaNnBUSzCqHVUXH6ZqOlw7q6HbxxG1C9BTXs+QBv+Nb2XNpscE7jQC1f5ne54qeCyBgRWAsFs2+fDjirF5Id6eBam6mZoSpUEZiPW7YMFZOKPFX95nuZDf3zcTsDTBy1O0rrNcVfJqaOcSOmiRHB+aWokOW5fZW9JcQMLwgErE43/5Kb7sH8uPrJSg9fg5xZG4upe6/r90AFfrkF7t1qx9KyT0dhMrfyc8pLn3uAgcPAYVmUKKEnhWCCSMn+xgiZYZT4ISXU8WSBmMdnhrj9Tbjja86v01Qw+ES8MEGz+IRfA+7LOs+Qj/9w8gceRHYnstvO28ATtzZHwT4+3kvhbTAPhrb/54v0unRed1D/gmaXmOxcgcCq5O9npqg56x0iHV1EN4sUqAjXmYl1L3dXQnn959NoP0vB4/155gcmI67f0fEf5EPTcgHrszAtcVBLTj6cOtMVQ2dXbYfBMkPrrg79vnnQ3YpKl6qAlG0QOzHlCbVx84W4E44/cBtMuy3T6FjmY87TJEoaUSJcfxgPHIX+AJBRVat6lurnBXfMGJkpvCwUlwdwR9NUH2zZM+BWPbQEwpWNx0WFz/++Msi9UFH0PY8YslQVf+H5xXGb26kbRJ0GT4B81v7Vs0O6RRWi3XcZ/cNbLrp57elyomiBsLq1SrBd9OnPnXqwq+Rls+HaQo/dmoZ8iI3Pfc0HzZuW6uzFzwIWnSpU49f7no0I5pVLXsGpN3YyNX2WA1Rlf0DIV7vxn7lD6S3+u4fF+cY5C7jK0D3xVrXO0sJ/idrwLw3A8n4uP+MP2W+J3B2Lfc+iN1RobJvQNJ3SdX+fAk0MXXvSFKN0NMasyVtiTGCwLcjC8DmwIxrCL5Jx0mnUOf7Lsd+T9HhxVpkHXXWlguUiatts9WMBLmt8JUICNNbaNnrJCOvXRinnMG5FEEwMhfZgc8ZcTfWpJZ7XLUpqy1HE7wUO8Gs6XQnNsPRsM/Vy2zJdK6aCEDaBULZXhryroO1BpfQ8a8rNOVz5iKqgeYoKUTuw6w6+lhc5CZ/HGdVvqBOv68gGs7sBDRXdD2c8HzZU+3nkKJ0LR5bi2Q7AjXx8eV0olVc1b8ABOtk3SOmT99dyyWY+Q8FT8h6Db/SWJwskgMsQLnMnKGy9+jVM1zWsEpO7DsOnu/mZIBiZ3fK9iJRtW333c6f5ObL0oXlhup1M7uTTiGVOueE3Fp7ZI30ezEk/FfDAY6k6rPR4mqh6CnyEJSyhF+QYJQyn88kKvDsXF/4wFFNgsQSmbxnI5dVQpi29qy2ga1BKNa1xWTtXSrHjjMM+3MnKf+0uHDCDFy0wmZIskx87nkHzF504Uj99synjLeSC81xKAvwgsHO+PPq9c2+yuuclhQgmvJl4ofkEYxvfoXCWfRfJvxrFXg/TE+v1tL8K7xkWvtoL+KJEgGHk2T56zTAH2WybdEuaJHjfjevrp8PnWJfL1lZlTOcsk/hR/N4fIfPL+xgNpwGiiDKwl26reNVgNyhirnV7bf76UmP1P+zZSxOvBe1A2ZFd6QmYQu0z3jzhNcznQOxSQGhzAlBaUOo6suVwyUtl/v4ZsRniTDkTAXN5ZpLm7bt77ukpa6Fw4W4E4pstLYtv7GQHuvoY86Fqvz1Xca7aM96CSXU1jOSCDm8KkPj1Zm45khk/weGvVFiijyHtqGl/S//3D5GR0sclGqi9U880BjU6m+mDS4eNKZdX/Ye8mVmhYmIrktsYp+RNg1Z4s69Ui7Rt2xTREhSDcc2GZ2yp1Ra5QBZSyiuTJcy+328LBjMFFm4yU/rIOviPTKd21bqoowThvHLFZnzAizE/hrLYJvTUmWBJa5S8DpHrTAfa04LQyUzdIkmSbV4TfX+0JIp8vqXCPrOJfOXcFI6WsJ++5JAS80xU6h3TdsuP7oMwjJbZPYTE34uyCWBxulcCv6OYvdzhwU63ZNe5/WwYrDzsQeqJnPrqCSrKL+M7m7FfJscwZM8wBZ4E5TJpH0doJ0gLM01bffBglgLUkER/aC4KXGUk9m45V08hFApJqGMsosB8BhsXA1mbVMo/eghuKuZeKpp2NZw6HrL/kxNmoGCFYXwUvyM2KbeXGWhN5yfAm8xdVth54ttZTY7Z7E/50p+wSXFJcUYqRYQOYkMi9tsxARrxF/V/dUBcZfoGEmvoe/iQiJ7oOttHQn/2nq6QrhZjKaCazMvIF+skAq/Cdf+Bvc+pMmwdPNtDdLGRnNOEtsTny5j9m6Eg2PkjSvqi5G6iTneqKxsLfOyrUg2LBggacSb78Zlo7tQWuJMYbNTc0i2EEgODRlgJMU3s/+ETw6wI4XVvM3ANaWefeCVcZsX6kyZs4LlYWAc0nuO0waXKuoWP2k2Q+JGv9tvZWoXXDN15c57QB4oyHmZfB3JVopPJXeyNvOBNWcBp32imQTjynrnWVMadZYGlI750OlYHNIrDdMQQ5LG7MInoYpf4cR+Ej9ntY3R8Xzbpp76i/PR/kiXOXuEuuN2XZsfhfqzqyJbShncF/2WJBe30XYhnrT7rn6rskYDu55vDVtgte8/4yRVJNl31dFGQvRVOWCYESf3xtBJj6ZoeHuwC20y6/uWsc83tlSUy5Rji1YHDqW3665Wmm94rRTlHrfHwx1ttJ9GIvUfh9s+MeGKTL4+KTRJ/QzT/MSVPHcF6v6X7/D4sLlAurn/F0NKqPPPhTQXgoVjo9RuP1rjZgACC++8fS2H1iOawuYN5ZjEtZw0ZxLKtYmLvMyFzebSCgmPOQgvpQz2G8JXfvWHmUXt4mRUpVv+xjtIyOy1AX+x0daXACU8itdy1G47Lza+ozZqfOLWq2NMFePG4uY1b0CppHkxepqikwnPRmnuzQuHYFf+EdQ8lDI+JxhuyNal8huYus21RTjHBGkvtbm5aUQ2DpBUGVXZHJ5wlPGzDVF0BuyjbTkfQ2FsUQbWQs35Qh6WEB+6pW2SHrhiLPJoyJnUcACNTXi1azCUbIZZB4iQl5tm/HbO/7NYneHjVGHs1zOmuvUS4l0z/eoj8CZYZSlaK6FE+GjHY0I5yEHn2PCUw1kChOY4qEkhlYck0wRcsRea9NRCj7EiSOXVtz+Men9lE2q8os1PkcBE0I8BoWl+XaGnWZrUBjhUZoPz8eD31SUdEb1XJl7iXPrA9uYCr5jjZLcocCLLSTQEUcdQeXFLCjnJ9Cx6Nni26ke8LjpruOQ8oQan4UMvYnhdKFEoEhZogLImtgPtaiM6rh0wuGpatP1LQ7fmmkUYYjSz9w/dp+9Ay4oR+yuo3FE6bsc7bsdfjZDaIfp+M7mXbCnr4sJRkA0OKvkQhYxnQw1AU56wIN5qALPqb4f4GGQA+eKy9BOa9IrntxVq4QeJtmjlTvyCNXZ9gmsgRUPd3vOEAmCGSfvntqbESUeMNpEvi2QYs9bb+gFwV9AK4lsMWvpgiBpXLFEr5S7tgQh6tbsh/zCoTXp1OeD68MkIpZOpL5d90NcpaJi2jM9pQ2+iVTwr31z/NVjshzHi2Fg+FObd0vrvU9iZ228R1giiJGCmvgqhgjUy1nnnxTb2SmY1B2507Uya2tpfz0NvxzL5rabI6gn31tLC6Gc542K8kj0Kv96EBOVBRTgDtJUYx10pw7trwi/+d5xd7jRa0LXlxTkSvYVC6c/uR9/AGkb3JEQYfWSCFAVqH+LceJAI3HJSSdySSszlpBNUutvQN7wv4lEVCbOEMzngLXAtyR+y1dg36tD84ooSXfXIPeAf2l0L4IKjxntTA5FhLHCx9J3vF574FcTOz7OmXjx3/VXTne40UxpeYBdesUAxGCTW23py9cvcwOOu2IdJEpcAE8OJWpJ1ENhzTkvyzt04yWngKFZiJmuXcyjaILsZQu1yVPhBRgTa3dvaO+4ZRnZ98IEh57l8qUmdczHfKwxQt130cUGeWBnobbAp6fHyDyEoD6WUUQz/tZ25TYtsA9/QC275et6lJ5+MCZosi1g01jXGGHSzLB9XKmTTH6sSPSancykpq3GAHyk3eqzyiHGeyFmHRMDBIG9etPiDnXOA7CxYjmjPbl+Sos7uEtm0+xmGtYB9ieUyro7hrhqo90qogI7fTrqtWhRYPLRUxLgyw+YcccQF/7MBOEZX6OXbkZOT+oP2l+HPgUhX01YvwF9nJ+I4cz/lLNH7s3LwE9iiiuvob3bwCZ3bSj3Y3up7l1lmjYAJOzh5BnNt5234n3yz8i3JeB6C/cQkNYLpuHAH3bsUNjAPtaxZ6TF341nAt1+8uez1sNGSIwP/BD93kU6TI+BWK17W76cRISD0k8eXomQ1Yh9MARlNwSw6SXc420yoHAm+aZUAzeT+VfitREv4X5u/+ssSLq3nLuCZz2CkJy5fWuFZEeXFALOCMCBjjo5iSNYJzjn5WdtlJq3L9Vw2l4XTWfEdJr0Gy+KFGIPhMtWIH2aCJYpPrzBYVftxJDGmv7R+BtOVxt08xJoT8LMdhLVdVWH50IhsMiwYD7whA2vJbOJZeOofI8c31MeQKCA1lTihwC5+2c96DQAoDhXEMbbOtAOWEknZEIgH42Z0rllvv9Ye8r3vDKgDPlpcfck/5EBCbmYivP7b3nU3ExLgDDTHhv92attzbqoRPCe33iMb7yeAKxfSp9kpVJP38XWsiLFKJG4UTCw1in9N7i7hiB+pBVMjwwt3ZHrUWxgaXBFYFPhtLCUUsXAAdhUY3IQI0lvNXgKbM0nZ4xjk7Mk6YTmIWTwepNlC+yQQ9b34Nrgrhb6qWrRNhIQYNmVEKIWkO7XR9R7zv0vxm6Q91bBMZd49ZWP1hcdlbBbkfFyug2aZhKosuYbmXCLcJNZh7cTjYe9GkfkS1KVJjyrWEVthoiRyuEg6lj6A92uwXI/U3IvV3Dm2GPweueme4+q9sm41mdDSdYN/D76f9mP7CcLEN3Xzg6kXZNkOwOAicx0kpkHYV/Tq13DY8NG7OPCVc48dK4VvNjGCHkQPvSqPW4IorAe/aAlx6o1c/HtKIW1OdZ8hidQqlwNLRxHQbK0noYZ/1vOBYTj/f/BjJLKlRI1TXfUab4YOERgpl3UniJ/K2nN+h6+hzhZupiqFamBgFtqQCwu/yXwlGBnONdzbXTjMCfqQgwRSL79423j2WaniNrAk4vmzwDVtuExL/nEAAAAAA=="
+ }
+ },
+ "widgets_values": [
+ "全身单人・性感系",
+ "坐姿",
+ "P017_正坐・挺胸后仰",
+ "正面",
+ "线稿",
+ 1024,
+ "关"
+ ],
+ "widgets_values_named": {
+ "category": "全身单人・性感系",
+ "group": "坐姿",
+ "pose": "P017_正坐・挺胸后仰",
+ "view": "正面",
+ "source": "线稿",
+ "long_edge": 1024,
+ "flip": "关"
+ }
+ },
+ {
+ "id": 4,
+ "type": "DynamicRefImageEncode",
+ "pos": [
+ 780,
+ 300
+ ],
+ "size": [
+ 270,
+ 322
+ ],
+ "flags": {},
+ "order": 4,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "clip",
+ "name": "clip",
+ "type": "CLIP",
+ "link": 1
+ },
+ {
+ "localized_name": "vae",
+ "name": "vae",
+ "type": "VAE",
+ "link": 2
+ },
+ {
+ "localized_name": "image1",
+ "name": "image1",
+ "shape": 7,
+ "type": "IMAGE",
+ "link": 3
+ },
+ {
+ "localized_name": "num_images",
+ "name": "num_images",
+ "type": "INT",
+ "widget": {
+ "name": "num_images"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "prompt",
+ "name": "prompt",
+ "type": "STRING",
+ "widget": {
+ "name": "prompt"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "instruction",
+ "name": "instruction",
+ "type": "STRING",
+ "widget": {
+ "name": "instruction"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "模型类型",
+ "name": "模型类型",
+ "shape": 7,
+ "type": "COMBO",
+ "widget": {
+ "name": "模型类型"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "匹配原图尺寸",
+ "name": "匹配原图尺寸",
+ "shape": 7,
+ "type": "COMBO",
+ "widget": {
+ "name": "匹配原图尺寸"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "输出宽度",
+ "name": "输出宽度",
+ "shape": 7,
+ "type": "INT",
+ "widget": {
+ "name": "输出宽度"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "输出高度",
+ "name": "输出高度",
+ "shape": 7,
+ "type": "INT",
+ "widget": {
+ "name": "输出高度"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "尺寸适配",
+ "name": "尺寸适配",
+ "shape": 7,
+ "type": "COMBO",
+ "widget": {
+ "name": "尺寸适配"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "图层数",
+ "name": "图层数",
+ "shape": 7,
+ "type": "INT",
+ "widget": {
+ "name": "图层数"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "宽高比",
+ "name": "宽高比",
+ "shape": 7,
+ "type": "COMBO",
+ "widget": {
+ "name": "宽高比"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "百万像素",
+ "name": "百万像素",
+ "shape": 7,
+ "type": "FLOAT",
+ "widget": {
+ "name": "百万像素"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "倍数",
+ "name": "倍数",
+ "shape": 7,
+ "type": "INT",
+ "widget": {
+ "name": "倍数"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "参考图分辨率",
+ "name": "参考图分辨率",
+ "shape": 7,
+ "type": "INT",
+ "widget": {
+ "name": "参考图分辨率"
+ },
+ "link": null
+ },
+ {
+ "name": "image2",
+ "type": "IMAGE",
+ "link": 4
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "conditioning",
+ "name": "conditioning",
+ "type": "CONDITIONING",
+ "links": [
+ 7
+ ]
+ },
+ {
+ "localized_name": "latent",
+ "name": "latent",
+ "type": "LATENT",
+ "links": [
+ 9
+ ]
+ },
+ {
+ "name": "negative",
+ "type": "CONDITIONING",
+ "links": [
+ 8
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "aux_id": "electricty00/ComfyUI-Toggle-Pass",
+ "ver": "60665017a9f0f1fb0cb53714f294d7ccee961066",
+ "Node name for S&R": "DynamicRefImageEncode"
+ },
+ "widgets_values": [
+ 2,
+ "Render the woman from image 2 in the exact pose of the mannequin in image 1: seated upright, chest lifted and leaning back, legs together, hands resting beside her hips. Keep her face, hair, white swimsuit and the beach background unchanged.",
+ "Describe the key features of the input image (color, shape, size, texture, objects, background), then explain how the user's text instruction should alter or modify the image. Generate a new image that meets the user's requirements while maintaining consistency with the original input where appropriate.",
+ "Krea2",
+ "OFF",
+ 720,
+ 1440,
+ "参考图保比例",
+ 3,
+ "1:1 (Square)",
+ 1,
+ 32,
+ 1024
+ ],
+ "widgets_values_named": {
+ "num_images": 2,
+ "prompt": "Render the woman from image 2 in the exact pose of the mannequin in image 1: seated upright, chest lifted and leaning back, legs together, hands resting beside her hips. Keep her face, hair, white swimsuit and the beach background unchanged.",
+ "instruction": "Describe the key features of the input image (color, shape, size, texture, objects, background), then explain how the user's text instruction should alter or modify the image. Generate a new image that meets the user's requirements while maintaining consistency with the original input where appropriate.",
+ "模型类型": "Krea2",
+ "匹配原图尺寸": "OFF",
+ "输出宽度": 720,
+ "输出高度": 1440,
+ "尺寸适配": "参考图保比例",
+ "图层数": 3,
+ "宽高比": "1:1 (Square)",
+ "百万像素": 1,
+ "倍数": 32,
+ "参考图分辨率": 1024
+ }
+ },
+ {
+ "id": 6,
+ "type": "ToggleSampler",
+ "pos": [
+ 1120,
+ 80
+ ],
+ "size": [
+ 350,
+ 364
+ ],
+ "flags": {},
+ "order": 6,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "模型",
+ "name": "模型",
+ "type": "MODEL",
+ "link": 6
+ },
+ {
+ "localized_name": "正面条件",
+ "name": "正面条件",
+ "type": "CONDITIONING",
+ "link": 7
+ },
+ {
+ "localized_name": "负面条件",
+ "name": "负面条件",
+ "type": "CONDITIONING",
+ "link": 8
+ },
+ {
+ "localized_name": "Latent图像",
+ "name": "Latent图像",
+ "type": "LATENT",
+ "link": 9
+ },
+ {
+ "localized_name": "模型预设",
+ "name": "模型预设",
+ "type": "COMBO",
+ "widget": {
+ "name": "模型预设"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "采样方案",
+ "name": "采样方案",
+ "type": "COMBO",
+ "widget": {
+ "name": "采样方案"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "采样器",
+ "name": "采样器",
+ "type": "COMBO",
+ "widget": {
+ "name": "采样器"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "调度器",
+ "name": "调度器",
+ "type": "COMBO",
+ "widget": {
+ "name": "调度器"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "步数",
+ "name": "步数",
+ "type": "INT",
+ "widget": {
+ "name": "步数"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "CFG",
+ "name": "CFG",
+ "type": "FLOAT",
+ "widget": {
+ "name": "CFG"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "降噪",
+ "name": "降噪",
+ "type": "FLOAT",
+ "widget": {
+ "name": "降噪"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "噪波随机种",
+ "name": "噪波随机种",
+ "type": "INT",
+ "widget": {
+ "name": "噪波随机种"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "自定义Sigma表",
+ "name": "自定义Sigma表",
+ "type": "STRING",
+ "widget": {
+ "name": "自定义Sigma表"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "Latent",
+ "name": "Latent",
+ "type": "LATENT",
+ "links": [
+ 10
+ ]
+ },
+ {
+ "localized_name": "降噪Latent",
+ "name": "降噪Latent",
+ "type": "LATENT",
+ "links": null
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "aux_id": "electricty00/ComfyUI-Toggle-Pass",
+ "ver": "60665017a9f0f1fb0cb53714f294d7ccee961066",
+ "Node name for S&R": "ToggleSampler"
+ },
+ "widgets_values": [
+ "Krea 2 turbo(8步)",
+ "自动(按步数 + 调度器)",
+ "euler",
+ "simple",
+ 8,
+ 1,
+ 1,
+ 0,
+ "randomize",
+ "1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568, 0"
+ ],
+ "widgets_values_named": {
+ "模型预设": "Krea 2 turbo(8步)",
+ "采样方案": "自动(按步数 + 调度器)",
+ "采样器": "euler",
+ "调度器": "simple",
+ "步数": 8,
+ "CFG": 1,
+ "降噪": 1,
+ "噪波随机种": 0,
+ "control_after_generate": "randomize",
+ "自定义Sigma表": "1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568, 0"
+ }
+ },
+ {
+ "id": 7,
+ "type": "VAEDecode",
+ "pos": [
+ 1120,
+ 560
+ ],
+ "size": [
+ 140,
+ 46
+ ],
+ "flags": {},
+ "order": 7,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "Latent",
+ "name": "samples",
+ "type": "LATENT",
+ "link": 10
+ },
+ {
+ "localized_name": "vae",
+ "name": "vae",
+ "type": "VAE",
+ "link": 11
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "图像",
+ "name": "IMAGE",
+ "type": "IMAGE",
+ "links": [
+ 13,
+ 14
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "cnr_id": "comfy-core",
+ "ver": "0.44.0",
+ "Node name for S&R": "VAEDecode"
+ }
+ },
+ {
+ "id": 8,
+ "type": "ToggleImageCompare",
+ "pos": [
+ 1120,
+ 760
+ ],
+ "size": [
+ 260,
+ 150
+ ],
+ "flags": {},
+ "order": 8,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "num_sources",
+ "name": "num_sources",
+ "type": "INT",
+ "widget": {
+ "name": "num_sources"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "num_results",
+ "name": "num_results",
+ "type": "INT",
+ "widget": {
+ "name": "num_results"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "排版",
+ "name": "排版",
+ "type": "COMBO",
+ "widget": {
+ "name": "排版"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "标签",
+ "name": "标签",
+ "type": "COMBO",
+ "widget": {
+ "name": "标签"
+ },
+ "link": null
+ },
+ {
+ "label": "原图1",
+ "name": "source1",
+ "type": "IMAGE",
+ "link": 12
+ },
+ {
+ "label": "结果1",
+ "name": "result1",
+ "type": "IMAGE",
+ "link": 13
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "对比图",
+ "name": "对比图",
+ "type": "IMAGE",
+ "links": null
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "aux_id": "electricty00/ComfyUI-Toggle-Pass",
+ "ver": "60665017a9f0f1fb0cb53714f294d7ccee961066",
+ "Node name for S&R": "ToggleImageCompare"
+ },
+ "widgets_values": [
+ 1,
+ 1,
+ "成对并排",
+ "显示"
+ ],
+ "widgets_values_named": {
+ "num_sources": 1,
+ "num_results": 1,
+ "排版": "成对并排",
+ "标签": "显示"
+ }
+ },
+ {
+ "id": 9,
+ "type": "SaveLoadImage",
+ "pos": [
+ 1480,
+ 560
+ ],
+ "size": [
+ 270,
+ 102
+ ],
+ "flags": {},
+ "order": 9,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "images",
+ "name": "images",
+ "type": "IMAGE",
+ "link": 14
+ },
+ {
+ "localized_name": "use_saved",
+ "name": "use_saved",
+ "type": "COMBO",
+ "widget": {
+ "name": "use_saved"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "filename_prefix",
+ "name": "filename_prefix",
+ "shape": 7,
+ "type": "STRING",
+ "widget": {
+ "name": "filename_prefix"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "图像",
+ "name": "IMAGE",
+ "type": "IMAGE",
+ "links": null
+ },
+ {
+ "localized_name": "遮罩",
+ "name": "MASK",
+ "type": "MASK",
+ "links": null
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "aux_id": "electricty00/ComfyUI-Toggle-Pass",
+ "ver": "60665017a9f0f1fb0cb53714f294d7ccee961066",
+ "Node name for S&R": "SaveLoadImage"
+ },
+ "widgets_values": [
+ "Save",
+ "krea2_pose"
+ ],
+ "widgets_values_named": {
+ "use_saved": "Save",
+ "filename_prefix": "krea2_pose"
+ }
+ },
+ {
+ "id": 10,
+ "type": "Note",
+ "pos": [
+ 60,
+ 40
+ ],
+ "size": [
+ 560,
+ 360
+ ],
+ "flags": {},
+ "order": 3,
+ "mode": 0,
+ "inputs": [],
+ "outputs": [],
+ "properties": {},
+ "widgets_values": [
+ "Krea 2 保身份 + 参考姿势(全部用本插件节点,不依赖 krea2Edit 插件)\n\n【接线】\nPoseReference(线稿) → image1,原照片 → image2,两路一起进 Ref Image Encode。\n模型类型选 Krea2;Latent 直接用它的 latent 输出(16 通道零 latent)。\n\n【★ 顺序是硬约定,反了会渲成线稿人偶】\nKrea 2 的 index 方法里「最后一个参考图 = 主体」。所以主体照片必须放 image2,\n条件图(姿势/线稿/场景)放 image1。想换顺序就在提示词里改 image 编号,\n但接线顺序不要动。\n\n【LoRA 必须配对】\n保身份用 krea2_identity_edit_v2(已挂在加载器 LoRA 槽)。\nkrea_outfittransfer 是 Ostris 系的,配这套会换人。\n\n【为什么不用 index_timestep_zero】\n那会让参考图走单独一套 t=0 调制,参考线稿会被「描」进成图(脸上出轮廓线)。\n本节点已固定用 index。\n\n【★★ 提示词必须写具体姿势,否则模型把线稿人偶画进画面】\n实测同参数下:「图二美女参考图一的姿势,重新摆pose」这种笼统句 ⇒ 模型不读线稿,\n而是把线稿人偶当成第二个主体,输出「左边真人 + 右边线稿人偶」的并排拼贴,姿势一点都不动。\n正确写法(中文完全可用,关键是三段):\n ① 主体指认:让图二中的女人……\n ② 姿势解剖:跪立、身体向后仰、胸部抬起、背部拱起、双手向后下方伸去触摸脚跟、\n 头部微微后仰、四分之三侧后方视角\n ③ 保持不变:脸、发型、服装、背景逐项列出\n本工作流里已填好一版,换姿势时按上面三段改写即可。\n\n【负面条件已经接好了,CFG 随便调】\nRef Image Encode 的第三个输出「negative」就是空文本负条件,直接接到采样器的「负面条件」。\n★ 不要再用 ConditioningZeroOut 把正面清零当负面:CFG=1.0 时它不参与计算所以看不出,\n 一旦 CFG>1 就会崩(实测 Qwen 2.1 20 步 CFG2.5 整张花屏,换空文本即正常)。"
+ ],
+ "widgets_values_named": {
+ "text": "Krea 2 保身份 + 参考姿势(全部用本插件节点,不依赖 krea2Edit 插件)\n\n【接线】\nPoseReference(线稿) → image1,原照片 → image2,两路一起进 Ref Image Encode。\n模型类型选 Krea2;Latent 直接用它的 latent 输出(16 通道零 latent)。\n\n【★ 顺序是硬约定,反了会渲成线稿人偶】\nKrea 2 的 index 方法里「最后一个参考图 = 主体」。所以主体照片必须放 image2,\n条件图(姿势/线稿/场景)放 image1。想换顺序就在提示词里改 image 编号,\n但接线顺序不要动。\n\n【LoRA 必须配对】\n保身份用 krea2_identity_edit_v2(已挂在加载器 LoRA 槽)。\nkrea_outfittransfer 是 Ostris 系的,配这套会换人。\n\n【为什么不用 index_timestep_zero】\n那会让参考图走单独一套 t=0 调制,参考线稿会被「描」进成图(脸上出轮廓线)。\n本节点已固定用 index。"
+ },
+ "color": "#432",
+ "bgcolor": "#653"
+ }
+ ],
+ "links": [
+ [
+ 1,
+ 1,
+ 1,
+ 4,
+ 0,
+ "CLIP"
+ ],
+ [
+ 2,
+ 1,
+ 2,
+ 4,
+ 1,
+ "VAE"
+ ],
+ [
+ 3,
+ 3,
+ 0,
+ 4,
+ 2,
+ "IMAGE"
+ ],
+ [
+ 4,
+ 2,
+ 0,
+ 4,
+ 16,
+ "IMAGE"
+ ],
+ [
+ 6,
+ 1,
+ 0,
+ 6,
+ 0,
+ "MODEL"
+ ],
+ [
+ 7,
+ 4,
+ 0,
+ 6,
+ 1,
+ "CONDITIONING"
+ ],
+ [
+ 8,
+ 4,
+ 2,
+ 6,
+ 2,
+ "CONDITIONING"
+ ],
+ [
+ 9,
+ 4,
+ 1,
+ 6,
+ 3,
+ "LATENT"
+ ],
+ [
+ 10,
+ 6,
+ 0,
+ 7,
+ 0,
+ "LATENT"
+ ],
+ [
+ 11,
+ 1,
+ 2,
+ 7,
+ 1,
+ "VAE"
+ ],
+ [
+ 12,
+ 2,
+ 0,
+ 8,
+ 4,
+ "IMAGE"
+ ],
+ [
+ 13,
+ 7,
+ 0,
+ 8,
+ 5,
+ "IMAGE"
+ ],
+ [
+ 14,
+ 7,
+ 0,
+ 9,
+ 0,
+ "IMAGE"
+ ]
+ ],
+ "groups": [],
+ "config": {},
+ "extra": {
+ "ue_links": [],
+ "ds": {
+ "scale": 0.9,
+ "offset": [
+ 416,
+ 110
+ ]
+ }
+ },
+ "version": 0.4
+}
\ No newline at end of file
diff --git a/example_workflows/Pose Reference Editing.json b/example_workflows/Pose Reference Editing.json
new file mode 100644
index 0000000..e39cefc
--- /dev/null
+++ b/example_workflows/Pose Reference Editing.json
@@ -0,0 +1,816 @@
+{
+ "id": "92e0572f-4e3e-4173-9e4f-067267af190c",
+ "revision": 0,
+ "last_node_id": 9,
+ "last_link_id": 10,
+ "nodes": [
+ {
+ "id": 1,
+ "type": "UNETLoader",
+ "pos": [
+ 60,
+ 110
+ ],
+ "size": [
+ 270,
+ 82
+ ],
+ "flags": {},
+ "order": 0,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "UNet名称",
+ "name": "unet_name",
+ "type": "COMBO",
+ "widget": {
+ "name": "unet_name"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "数据类型",
+ "name": "weight_dtype",
+ "type": "COMBO",
+ "widget": {
+ "name": "weight_dtype"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "模型",
+ "name": "MODEL",
+ "type": "MODEL",
+ "links": [
+ 1
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "cnr_id": "comfy-core",
+ "ver": "0.43.0",
+ "Node name for S&R": "UNETLoader"
+ },
+ "widgets_values": [
+ "Qwen\\qwen_image_2.1_turbo_int8_convrot.safetensors",
+ "default"
+ ],
+ "widgets_values_named": {
+ "unet_name": "Qwen\\qwen_image_2.1_turbo_int8_convrot.safetensors",
+ "weight_dtype": "default"
+ }
+ },
+ {
+ "id": 2,
+ "type": "CLIPLoader",
+ "pos": [
+ 60,
+ 255
+ ],
+ "size": [
+ 270,
+ 106
+ ],
+ "flags": {},
+ "order": 1,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "CLIP名称",
+ "name": "clip_name",
+ "type": "COMBO",
+ "widget": {
+ "name": "clip_name"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "类型",
+ "name": "type",
+ "type": "COMBO",
+ "widget": {
+ "name": "type"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "设备",
+ "name": "device",
+ "shape": 7,
+ "type": "COMBO",
+ "widget": {
+ "name": "device"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "CLIP",
+ "name": "CLIP",
+ "type": "CLIP",
+ "links": [
+ 2
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "cnr_id": "comfy-core",
+ "ver": "0.43.0",
+ "Node name for S&R": "CLIPLoader"
+ },
+ "widgets_values": [
+ "qwen\\qwen3vl_8b_int8_convrot.safetensors",
+ "qwen_image",
+ "default"
+ ],
+ "widgets_values_named": {
+ "clip_name": "qwen\\qwen3vl_8b_int8_convrot.safetensors",
+ "type": "qwen_image",
+ "device": "default"
+ }
+ },
+ {
+ "id": 3,
+ "type": "VAELoader",
+ "pos": [
+ 60,
+ 435
+ ],
+ "size": [
+ 270,
+ 58
+ ],
+ "flags": {},
+ "order": 2,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "vae名称",
+ "name": "vae_name",
+ "type": "COMBO",
+ "widget": {
+ "name": "vae_name"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "VAE",
+ "name": "VAE",
+ "type": "VAE",
+ "links": [
+ 3,
+ 4
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "cnr_id": "comfy-core",
+ "ver": "0.43.0",
+ "Node name for S&R": "VAELoader"
+ },
+ "widgets_values": [
+ "qwen_image_2.1_vae_bf16.safetensors"
+ ],
+ "widgets_values_named": {
+ "vae_name": "qwen_image_2.1_vae_bf16.safetensors"
+ }
+ },
+ {
+ "id": 4,
+ "type": "PoseReference",
+ "pos": [
+ 440,
+ 90
+ ],
+ "size": [
+ 340,
+ 300
+ ],
+ "flags": {},
+ "order": 3,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "category",
+ "name": "category",
+ "type": "COMBO",
+ "widget": {
+ "name": "category"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "group",
+ "name": "group",
+ "type": "COMBO",
+ "widget": {
+ "name": "group"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "pose",
+ "name": "pose",
+ "type": "COMBO",
+ "widget": {
+ "name": "pose"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "view",
+ "name": "view",
+ "type": "COMBO",
+ "widget": {
+ "name": "view"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "source",
+ "name": "source",
+ "shape": 7,
+ "type": "COMBO",
+ "widget": {
+ "name": "source"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "long_edge",
+ "name": "long_edge",
+ "shape": 7,
+ "type": "INT",
+ "widget": {
+ "name": "long_edge"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "flip",
+ "name": "flip",
+ "shape": 7,
+ "type": "COMBO",
+ "widget": {
+ "name": "flip"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "image",
+ "name": "image",
+ "type": "IMAGE",
+ "links": [
+ 5
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "aux_id": "electricty00/ComfyUI-Toggle-Pass",
+ "ver": "60665017a9f0f1fb0cb53714f294d7ccee961066",
+ "Node name for S&R": "PoseReference",
+ "tp_pose": {
+ "key": "全身单人・标准系|站姿|P019_站立・双臂上举伸展|斜侧|线稿",
+ "img": "data:image/webp;base64,UklGRtwXAABXRUJQVlA4INAXAAAQZwCdASosAZABPlEokEajoqGhIhPpaHAKCWlu/HyZq+tQy/Fj4D/cfyr8//xT5x+yflJ/bfZM/x/FH51+w/4r0P/in19+z/2/92P7t+4fyH/wPCPgC+0/91vE9ovQC96fuH+y8H/+z9Cvzr+tf337XvsA/jP8u/tn5Nf43///WP+A/3PitfYP8x+xXwAfx3+Yf5b/Afvh/iviX/yP8l/p/2j9yX6H/fP97/ivyq+xH+Z/1T/V/4L8m/nn9k/7F+yR+vv/iFPsLGwwJ2QE7ICdkAqaGfOKS/KioRTjd6xu9Y3eCaqplTPXvwNxijIk4HoNWtobDAnZATpKGL8GeNdoN3FzlSgaIWN3rG71h8Fg0hRzWm1WM+UM7PQ33axu9Y3eAYz9nJ1v8rfVIDhdIrZdamSTuzr8jL6q6KxHUh7WN3rG6zoAArsIUx5Jv9c0loC1hDxvfURY3esbvU6mO/cN4NHwxVykNIy3kfTLDdbB6jPl3ndJATsgJ2QCZs9qHZyOLgbxA8MzSlu5DT2u/+ZKZqlsjBcoA9MBOyAnZATF4rRY6AxN8lgGSw0Jm5DQInxyy/KsPdrG71jd6m5w5LXhKyCMDxOP1E1DogS/rwPaxu9Y3V4E4I0J5ZuilF+P7SneOfkqSDUagcd4OO8HGby/lHQ/LAfnZtM4w1ybchcft9MXSbDAnZATFks7qOqOJYqb913bgK+u2yzQOq9DPxKd2sbvWN2cp82F9QYxAhoKQX5KkGBOyAnZAK4ThyfrKchv8G4p7j9mgRQv1xMZ5CxsMCdkAs4T/LEw49J5TkC6aS73aYebwGa7O2gnZATsgFMGDGvHNlnvhUnP9JupK0zBMoXTIJh+2BeffYWNhgTpr0Zf4frI74a+vxOfDW0AEicUw6liBgTsgJ2Jc5ppadMO4JiY9VDoprNqMEZddmz5Y2GBOyAWQ6+BxxNX97fiPz76bhO3j4XprG71jd6m9mjYMZgFoz2oT7puASdOztDKI/ZtA9rG71jXJ551+VsN4pZ/IHudPNhC7n1TcjK3V1KMm4wFY2GBOx8fHlXHELF7wRfHjJ3ydLi6MaVkFgGxP25wwbxXG71jd6xwAYu7WN3gAAD+/9uZD56/piXkcHD4IUxKZE9zk2PUq14XsNrot2mFTL+FLLSXnWW4CK85NZUCxxo8zYTK/QMZJP/tEq60g9V1RZm94EMebM9FE845p3nF5AUq7dGcdLvP31wI/z7uStYNIPqX+TTbwfBEasuWo55F9GlEuIthGAbiIADHL38tSD8Fj+NuviS75kTtAWCiJ9+ZUGnUPHz/rp8hPrIl6FpqY0J1D30PSoJVPHOeDh7HGvyEkvHfge57Dv3307OZl7G9mGYsQBzivI0T8sAZVn+KrsHtCyp+Rl/5/jNb/CmBRhOXMoYGL8jZDv/zEIjxcu4ALgmGNmNWuR4qtlblrOddmavnjB4M47DkKsI+oKf5lYRbRy4t9U1DOp8U2DExp/Y3LWyCQBTvP+G/waWu8WoMkJ4+2QjZvKj57nSfNlg3A9xNb7qkEjXu3yCaFU0el/zC8g04mO9KIfYimdi8knexCMBnyHnv2f/4d0xfnmC5Fo5RXFOuDthFFsi3gfmA3UxZoWMBKAhfhGoTTBy7exOE5nOpughV4aHVIQdzFiu47x+f2Tm3k0BVFkG9uBwnaP/JtcPxqRVQTLLXpIq2LsxZXoLSpaKlwsULExT4wmW6jqgVdLKGqSqxl7zbIBZSvJurQPPT1vf5N+Cuo6wX4E8mPI7l6KBaVYUHMTauylz5ZYOqoitt2JMrTM8z0Pz5KXhrl2UEDjeH/zrVUJ4rg5zTo/xgMzj1fHtWxOspWCi7IxG9top1vwcAS2qX4HwSKBbkxzPxGUXLPENgsNs0sLx5p0SyKgc3bFXcWGMx6U/fK4suM1r4QzMib9YLS/SOMo/sbmbiZeGIWTO0fot276bREYjUesEDq3R8syn7yuV0v2hRcQd56ZtCVuIFYFVeeQHYNO0cgBVnvPw8yujWrRkuLzk7ofFfOM9K8rlcENZuB6tCos1s6p3O4+9YsoFbVKbJH9xCZQe/JXIdZoUaDsGL9zDxhTjRj+W6AtuU9NuCWgYb9BkH+GdqelBgbZ2y2glJUw2LJwLgULvsRB/ixpNEyEoSn+w99+hBaLK0MGO/cip5tv12462V8rrx3GjQDR5qr5DQT63Ip19Zt5HPcIrh0Cd/tjicxI7iniWrWhgHTJE7GVvJ5zd/yw2pq8D+V9qILdB2XrnTWN1mfJI4nQsImgp/bkv8uOIRHHi6P/2CZnv1O4poRBxB1iOK/OaqtUx9X0fM3bu3Gv9I3hlre6lbpsKTQzDRFdJYHbASuTqHicrMsoeK4GVTzBPjKyqj1EuNi7IFV+/CzuLcQ0VDz/QOZd4jar75/5xJY1qvCITod4HRfgXPivkLHCxTF9/cZo2LL+OBAY90hm40nyRMiSGG5b2uWWIlpBm/dpY2U8WHTzaKC8oAsheIDfTA8N0F/T05kHl/moR2rIt6cSI3s1h3+QJWgbR9RBqG9SFKBIj5BYYOSXG4Z6D4QMBjn5eFhJTgZkrELqOxJwuFlN2q0KD5u5bf5W2r2LU6QOakPhZ1q3xkaROmaBfgyfRhm8zYbDXxSyDFgoIQiMIh4eKrN+u/OBSS+XeXLhcxMPmB9e3MV2fLO5C8GWV/Wj3YoLdgd13w6KuaJgodRQqD2rH5gdYNLyWd5ibtoz90j9+U+hKaoA5lBqBYt3dOHoIc1bYYjhmkrKLgHma8TdzNnRBcOWfsjUJ0RAWb95IfDZpyV7l5S8alOQM/EPgP9OSIGf8c89GnzxLb1JZ23wOA3fezcUSdh02QtwXS07bB1BgvdDbwq6hqZV69oH6bUmDSv42jJNXJCYGcUib3P0Hr/6cJufQt38ebYS/EBVW8/ULxAbpiT2uwC5iJF+qt/dT5xmobraXo5gz3rjvhSUKfSZ2nipGgQ3POcBnTSqx9yhPB9tgDpW1bVEYGg/zHSjpX8IIJjzZQsvdkhrIbFQhnEkO0HqmyCrDn8dOHXYH/L4YDyVOTDqvVR0oIsI1Li9W8BezIM1zgD66Fkr6ZkrCVKh9qNaT2oABsRK6JM41upXqQjkq8jdQ9B5ZNrjl3RqU5VipuQ3WzdLJeCo+zB9umMtVzlamt40zN0nHKumavcZugTERonswtTPLeanL05IqFMTiT/jrJB8cxGscrKlUIxSuvlj5QVb0LeOgp6VhyHefZo3llh7dC6s39Cl/8D6+R1ks78lSaC0zE6zLwqOZveLUUfHKd7jJjj9eaUNp4e78NKcdZUwRIy7SQO7U4EfIBSI50pcs7Tp+EA0MZdF3ycDHwaxSivCtAfh9x4ZlODn/z+FQZru6uGy9Go7s6U8SlxQX7gneby2m6Enz7OfpWwSI8kgge+dMQellD5Y5bIksYQ814edJMMN6MaEjk82i56Uc8xKJ9iSgNyUru0Tx78pb0biiaNPU/ZWPyYQ0SdkJK8jG/Gplbd3BAH8VTIdAn4UOiuAEb1F9r5Vq3OHKR+lc8V2AI/fXZeAOFAX9041GCS2WnF1e0R/8ECHgkRyLn1cxjGUFVQ5a3mjIh+ad+yZapl86uAH46u1DocjgkFDjnjER0vve830mSe8e00Es8qOp1tkMWdKqq6pfuwv2k1XbPXUMS5mfqPTgluWMfyxYC1fo/m4w2U6zldPfA4PgWC1vkUgplBntGZZIqLj1fh0fXEdbhWfvdjKDmeOnzJLLkuoj1x2Vm0ktwOOyWlshotzJzgg5tFONQNgNEmKhaqmjZ3NGli0daryQMZ3+yjN3pL3fhlVI/BvwT5is7ImuJOzBXt8Uf4piNF3U6jjoLBmYsBMGhwZcZpWkZYJD4SNytcVX2bc5MablRbrOPnn0DsaFUDvzt81Curp2hodbvIInlmg6uY9Lb4P5tjpHwiVbkees7O28WV+4AXaZ4uN0mYIbFfh2LW1xwEIkODP8atLCWP9ld6lLYC7xT1yR8STFewv14HxK9tRgPhEZi5SIPJCRsqf4LuQXhp/D+is7Dk6gJwQP0FldyUNq9GsOZuekEdZWf8pkPFVuWGwfCrd7qfO4f6G+eQAK5FPnQD8DgWyeNGSrkN71sGnfkU/g2XD4Rv58H+k4fMKy70WvO7QyM3Ii4MQSbSMzfSF3hOpxKsm3SWBHhfXaVbn5XYSw7ST8zNxugivj3ZgTXyMppOpi5HSGbCkJqBKDsNMNqDNF9bAv0O+YNyESWN4/1AZjQ+AsbDkMidC8hR+I3bXaMG0L0eySW/CfwB98qLs4Bjd8Satw49eC3KPq8qXuzA8RzXDfBrr68sL0sXxe41WNwltmiomPGQSCS+clwqtykZGT0uKAUsNCzKi1HY6p6v2QDzcD4icmuuu1OvNtsUlGTKMPaqoigD1bSX49qqN4ySxR3bsbL1GRRC3Y/s8eDpCRPYVCx5+YyoOaNKXaLIKRZQ0NnzPJCjn3ktBF/VejaBwAsrxeD8qhG3yJRxVsCrTEDXcpiu6H6W/vAeycb+66tM91xR0tl7bzAxHPRZ6g91U/Zv6CkgU+QoYLpZvX26cIYSBsCD4uPS+qhry8pOwZ0azKymC+uNkLL5UNUN+JYz4pfG7fz5albe2+PzcZJiJ4l2qduONJ5ZFYrH3SRoBIVl7nX/9CWMdIoTzv658KlYNEQUxxV/bwb4vf02VgYtKbZARuBjf4gfwgK7aV4U6JNQOyVdZKo7ZmvXiYF3BeJoFgpP7d0KrhmFN+80SCyGs43r9/qKNWul9fL5it7jtxj39kX6J+/l8d7uWlh8zPbCt+6znxwGrHkDIaXkK5DoaAtXpZ73Q5mW2FmA9kX+E0T7YhK3tg71E7wMh3S6Q2mgGUXHk8Ve/Q1IyaehbKNGt8KsPz7/TiBd1MPUcLLnZ7gQ5eicHqrta7uLWCxRE426ygRLiAxiQkOaOs+xDUYMWeU0FAiIRyh3RCEzBCjRFpYOn41mdPAgJbh8xNy302mmcuvLbCwQrU2kG9aLGRGkTLnR5312nkaVwf0JTQgHsPla7DitKQ2RdXsGQKGOwOc6wC9ouhq6sDj+ORLnulFw48e9pZqsIiGeeQ55PT69aH01qU1TinDLf+6RV5N/9NQobG9MAxqx6v7A870ooDVLxu7o3iHRPsgbvjAIoh2fQKwv0bDcZHlY1V75FPkBSdRGhvcxzFTuJoeA6S4uYjNGqzIoFzZhWfIqAzfRPNOKYkrpRs5CAUHwxd5YpW5ggzo9DY2X6D9T0Qa0aiJdXHKWuYAasuB7RVe+0V/lVS9vCOZUqo3GJBV5H3SgZU183z5XfJP0bdp2Nun+OTcYfDV8YoHRLyVqeGRMi4vggUfTlzh6cG6WtsYhUusySIdmoWuIrxYINvqxrwjYfETYlHR8N4J65+VNetZ4YPbRhhYInqmHPA6Q/Do+yfGdSf6oW8pYnMF58eJ+AZ/j5bT1JbIvpqoO/VaTiu3G/q62F2ItHacFrgubYjcg2P/Wccxtw3CogOdqDuwGO2M4SoAPDNGj/1Vo6wrjavlxQDZ1rTjkD3DpaZaueQ7seEHAUkKdCEjTkVvUATvRYxIf3JlNjvWTbXOHmJ2D2kJGD7hgAFMnFxYcqSyGQdbmSDQsKfTE44RRTjPVmIKkrImxJzwuWiELyy+0dnOjUETwVHL+d1jSZQUip0DKj9qZ/jHGoEd27JsKER4V7ezB2gfy7wHvKcsQUo1Z8csWqX8pRo4nvvSbay/8GyhAnT8bFUPJ28Hk02WLs1Wfy0f2KFG5P1yzeU+BITsmGY6ffbVY4sr0NPTtaRFZo3dg7tSu9vsZN1XgF5BTJZFN/1bovBM0bfIxBYvCrD2Ghrfu7OzWEahpgnw+XnyiA8dPPFbffEe98ukWfCfjl2wWFxTDWQz16QnHQw6GKYFWCR+yMFyIvs8nBPiD6OJqQChWj4KcMusNlqX0qB13udO8Mg6e74y0TpcxgfgSSQvDrMR3baasoH0aOr9+9w5mQsFkaTi5I1vGBsRvb9aDSXwlNMJGTG+R2AwoW44P4tY0tD8CkHO8Og++722U9qgd2Z7eBEvXQ4T2R3ZYw6IHL4/Rwjnw9Ba7M/SNAnED343tkgTfULTh5Gc6mTeQMxj9fn2+df13VoBuCFbZlWp+YzPhH75ulHzdfgbS3Zo7RO+79OzvQa3BHT20AW7KWrlQG78zHIlUNt1E6DbUdAK48qFvzmXY668064Fw9Lyb5UUk1FyL785SnRuddqGVenn0lK0GHlWJvMb7KyOdZR5DPkfY73EczzL1e9BEv6108/JBvCRCpEjr3dyEzPkSy4sj7o/keKqXqLT/oN8Z3CKqxZ59e0ls8dBHSGBNxvI5OaK/I63/ktAcYyX0lYJOyOTB8BLEdoUqv8IfeglguPXUH6cKLGgctfFBIkKj0NYX73PkRkpqTDE8vwG2TJEdwTg3apYDLsEgoacwSIG0FrKTxHaUskKzdNsf5u1uKaye5bUaU67kJD0a/kVfyDQuicKkwoaJ43H+Bdl83xWjuLGawNsSxOXIE4aidU02LODYJ48FhVWA7Vmjnx/NH3shNCX0mCD6xniu4I6uBVgRkcFEgRNS2cAaymXrcHirx/i6GU6F25iD7Aypv0KnYcbbQ4HpYzCkZL0oci6Kh4WvbrYn7FFLu+PusbZ2OaGDwCNXCuC3dfbIgvsPVXR5aV9kATMq7N5ZsdMEUyochtR68jME6o4dDnOAd5uDduFlm+Jk8t416b+vqEQ65JJeQT4L8VOfYyzEO2b+Qhk1TFTmyN/8IhEIj/tXZq9iRYUG0lADzNIDFh0uEjrCLNfUXeoETevC/to9IQNu7DW9IWu58AXAOvi6aY1bZ7KzDGDQu8yli3ynoSlBUykmcr5HxLYuKhJew5kc9tFuKUQ2Mx79EI4eSHo1KvmlwG4ohw3XsnPh9wDmTr2P5dU8Dfsxg7/r56ZOzjiq3+QkLG2Kso6wXKcoTtsp0lqF2MoyRd7gI4fSZ8GP9xXvf/ZHkj/8VHm3uT/vImAGKm15Q3wBA2a0rf3i7DtMxGBuohd21LW9P6RaviJheUmS6F3ZBo0pcDP4lNomn9pZA6FMyMB05EWkwcjzb+rI7LM4xNsu4UbBtYvUSJROBAydkY5+WhaBUUuy54FAJe5IUU+N2/ZdhJ7r8Ukx2PO97IgdMeVCFdzFIX7VKVFLjExJMcBlbLLGIE/kayuuNXwD2MinZkgbtnqqj09uH11YmtGxWYGwZYHVEFbovuFTO+KN2FadIWpYgfjzdVxmmQDW/aGpvZZKamZCxmAGU+fjS6G3R6scJNhULo6SET4W+odDPjh2OROsG8m1z79SUIvsmOI+uMeeKdNQClGBrAGWr+M8FdhhYQuGAiiZ7ZMxYxba+GqKwgB9xTNhVl45goUxHdXoTfDuZskOMYwfdRLKHzB5LUxlPzibr5S9uF02wRKs9ZL2WKD5F+q4k1glVCYt7TZrxYBP1c/rywSrcYPDAYeXeKpFrti/GwJmOwaNtrkzGR8s6rwrR6xoVvd3yaUyx5PmQe5Dl+1VCXCplmPbWFLsB3tqEIrmin2cSSak/HiIQ7BbMk5m+G1N/SDHJu2XjF7wXt/DX/81c30beCglkEdN0/CWJk12Hbv5e4IwbC8hEzybGUqsuX+tx9Xo5I/Pdsf9T3AeZR7YwWMTpg4n6datn9Bk17egMr8oJrOKBtkuMNyu5/tNa+2VJoV+Gx81zOiFV+GiisDgyyqBd1dqGDhGqQZCV34aJQp9p/gg+KhjxCw4NPpd/WD8YKhAt0HIa8T9k+3qvPxEwnoTJobh+G+8GUddZoe2MUI5AzQdtmmdwbpmo2oAIkT3SzL8JvzRaoTJAY9V0BDhgkXk/j3isEC8NvlSFXd8B+qHGDwEROBj1/Ny1PsJkq9/if2nnwwCmqubCA4qwnIa+7AwnE9Osp/TTR5Rak75fILb25V6NdfOWxE8ipRmHg1m5Etu9cUPAcvoAyBtrRsCRTbrrJ+f2RlasF+RFvf8Xm7x3inLsPxbzprwT3HzIplP4WkofLEKTznanz0FTy/GTm3tf8h/GqO8Ywi9fm653ceCsg1USOgAAA="
+ }
+ },
+ "widgets_values": [
+ "全身单人・标准系",
+ "站姿",
+ "P019_站立・双臂上举伸展",
+ "斜侧",
+ "线稿",
+ 1024,
+ "关"
+ ],
+ "widgets_values_named": {
+ "category": "全身单人・标准系",
+ "group": "站姿",
+ "pose": "P019_站立・双臂上举伸展",
+ "view": "斜侧",
+ "source": "线稿",
+ "long_edge": 1024,
+ "flip": "关"
+ }
+ },
+ {
+ "id": 5,
+ "type": "TextEncodeQwenImage21",
+ "pos": [
+ 840,
+ 90
+ ],
+ "size": [
+ 400,
+ 226
+ ],
+ "flags": {},
+ "order": 5,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "clip",
+ "name": "clip",
+ "type": "CLIP",
+ "link": 2
+ },
+ {
+ "localized_name": "image_1",
+ "name": "images.image_1",
+ "shape": 7,
+ "type": "IMAGE",
+ "link": 5
+ },
+ {
+ "localized_name": "image_2",
+ "name": "images.image_2",
+ "shape": 7,
+ "type": "IMAGE",
+ "link": null
+ },
+ {
+ "localized_name": "vae",
+ "name": "vae",
+ "shape": 7,
+ "type": "VAE",
+ "link": 3
+ },
+ {
+ "localized_name": "prompt",
+ "name": "prompt",
+ "type": "STRING",
+ "widget": {
+ "name": "prompt"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "negative_prompt",
+ "name": "negative_prompt",
+ "type": "STRING",
+ "widget": {
+ "name": "negative_prompt"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "resolution",
+ "name": "resolution",
+ "type": "INT",
+ "widget": {
+ "name": "resolution"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "positive",
+ "name": "positive",
+ "type": "CONDITIONING",
+ "links": [
+ 6
+ ]
+ },
+ {
+ "localized_name": "negative",
+ "name": "negative",
+ "type": "CONDITIONING",
+ "links": [
+ 7
+ ]
+ },
+ {
+ "localized_name": "latent",
+ "name": "latent",
+ "type": "LATENT",
+ "links": [
+ 8
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "cnr_id": "comfy-core",
+ "ver": "0.43.0",
+ "Node name for S&R": "TextEncodeQwenImage21"
+ },
+ "widgets_values": [
+ "Render this pose reference into a photorealistic full-body photo of a young East Asian woman wearing a simple white dress, standing on a pure white studio background with soft even lighting. Keep her pose, body proportions and camera angle exactly as shown in the reference.",
+ "",
+ 1024
+ ],
+ "widgets_values_named": {
+ "prompt": "Render this pose reference into a photorealistic full-body photo of a young East Asian woman wearing a simple white dress, standing on a pure white studio background with soft even lighting. Keep her pose, body proportions and camera angle exactly as shown in the reference.",
+ "negative_prompt": "",
+ "resolution": 1024
+ }
+ },
+ {
+ "id": 6,
+ "type": "KSampler",
+ "pos": [
+ 1230,
+ 90
+ ],
+ "size": [
+ 270,
+ 262
+ ],
+ "flags": {},
+ "order": 6,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "模型",
+ "name": "model",
+ "type": "MODEL",
+ "link": 1
+ },
+ {
+ "localized_name": "正面条件",
+ "name": "positive",
+ "type": "CONDITIONING",
+ "link": 6
+ },
+ {
+ "localized_name": "负面条件",
+ "name": "negative",
+ "type": "CONDITIONING",
+ "link": 7
+ },
+ {
+ "localized_name": "Latent图像",
+ "name": "latent_image",
+ "type": "LATENT",
+ "link": 8
+ },
+ {
+ "localized_name": "种子",
+ "name": "seed",
+ "type": "INT",
+ "widget": {
+ "name": "seed"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "步数",
+ "name": "steps",
+ "type": "INT",
+ "widget": {
+ "name": "steps"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "cfg",
+ "name": "cfg",
+ "type": "FLOAT",
+ "widget": {
+ "name": "cfg"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "采样器名称",
+ "name": "sampler_name",
+ "type": "COMBO",
+ "widget": {
+ "name": "sampler_name"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "调度器",
+ "name": "scheduler",
+ "type": "COMBO",
+ "widget": {
+ "name": "scheduler"
+ },
+ "link": null
+ },
+ {
+ "localized_name": "降噪",
+ "name": "denoise",
+ "type": "FLOAT",
+ "widget": {
+ "name": "denoise"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "Latent",
+ "name": "LATENT",
+ "type": "LATENT",
+ "links": [
+ 9
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "cnr_id": "comfy-core",
+ "ver": "0.43.0",
+ "Node name for S&R": "KSampler"
+ },
+ "widgets_values": [
+ 20261102,
+ "fixed",
+ 8,
+ 1,
+ "euler",
+ "simple",
+ 1
+ ],
+ "widgets_values_named": {
+ "seed": 20261102,
+ "control_after_generate": "fixed",
+ "steps": 8,
+ "cfg": 1,
+ "sampler_name": "euler",
+ "scheduler": "simple",
+ "denoise": 1
+ }
+ },
+ {
+ "id": 7,
+ "type": "VAEDecode",
+ "pos": [
+ 1510,
+ 90
+ ],
+ "size": [
+ 230,
+ 46
+ ],
+ "flags": {},
+ "order": 7,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "Latent",
+ "name": "samples",
+ "type": "LATENT",
+ "link": 9
+ },
+ {
+ "localized_name": "vae",
+ "name": "vae",
+ "type": "VAE",
+ "link": 4
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "图像",
+ "name": "IMAGE",
+ "type": "IMAGE",
+ "links": [
+ 10
+ ]
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "cnr_id": "comfy-core",
+ "ver": "0.43.0",
+ "Node name for S&R": "VAEDecode"
+ }
+ },
+ {
+ "id": 8,
+ "type": "SaveImage",
+ "pos": [
+ 1750,
+ 90
+ ],
+ "size": [
+ 270,
+ 58
+ ],
+ "flags": {},
+ "order": 8,
+ "mode": 0,
+ "inputs": [
+ {
+ "localized_name": "图片",
+ "name": "images",
+ "type": "IMAGE",
+ "link": 10
+ },
+ {
+ "localized_name": "文件名前缀",
+ "name": "filename_prefix",
+ "type": "STRING",
+ "widget": {
+ "name": "filename_prefix"
+ },
+ "link": null
+ }
+ ],
+ "outputs": [
+ {
+ "localized_name": "images",
+ "name": "images",
+ "type": "IMAGE",
+ "links": null
+ }
+ ],
+ "properties": {
+ "ue_properties": {
+ "widget_ue_connectable": {},
+ "input_ue_unconnectable": {}
+ },
+ "cnr_id": "comfy-core",
+ "ver": "0.43.0",
+ "Node name for S&R": "SaveImage"
+ },
+ "widgets_values": [
+ "pose_qwen"
+ ],
+ "widgets_values_named": {
+ "filename_prefix": "pose_qwen"
+ }
+ },
+ {
+ "id": 9,
+ "type": "Note",
+ "pos": [
+ 440,
+ 620
+ ],
+ "size": [
+ 980,
+ 400
+ ],
+ "flags": {},
+ "order": 4,
+ "mode": 0,
+ "inputs": [],
+ "outputs": [],
+ "properties": {},
+ "widgets_values": [
+ "参考姿势 · 用姿势素材生成图片\n\n▸ 怎么用\n 1. 在「参考姿势」节点上选:类别 / 姿势组 / 姿势 / 视角(前三个联动)\n 2. 执行,节点上会直接画出选中的素材,先确认姿势对不对\n 3. 改 prompt 描述你要的画面(服装、背景、风格),执行\n\n▸ 源:线稿 / 深度\n 默认「线稿」。实测深度图 3/3 会自己补出不存在的鞋或护具\n (深度没有边界线,脚底和地面亮度太接近),线稿只有 1/3 有瑕疵。\n 深度唯一的优势是遮挡关系,肢体交叠复杂的姿势可以切过去试。\n\n▸ 长边 / 翻转\n 素材原始只有 300x400,「长边」默认放大到 1024。\n 「翻转」做左右镜像,反方向的姿势不用另找素材。\n\n▸ 换编辑模型\n 这个节点的输出是普通 IMAGE,直接把「参考姿势」接到别的编辑编码器的\n images 输入即可:\n · TextEncodeQwenImage21(当前用的,Qwen-Image-2.1)\n · TextEncodeFibo2(FIBO 2.0,记得 CLIPLoader 类型选 fibo2、VAE 换 flux2-vae)\n · TextEncodeQwenImageEditPlus / DynamicRefImageEncode 等\n 图片尺寸建议跟 model 的出图尺寸一致,不然模型会自己裁。\n\n▸ 参数\n Qwen-Image-2.1 turbo:steps 8 / cfg 1.0 / euler / simple / denoise 1.0\n 用文件\n unet: Qwen/qwen_image_2.1_turbo_int8_convrot.safetensors\n clip: qwen/qwen3vl_8b_int8_convrot.safetensors(类型 qwen_image)\n vae : qwen_image_2.1_vae_bf16.safetensors(64 通道,别选 qwen_image_vae)"
+ ],
+ "widgets_values_named": {
+ "text": "参考姿势 · 用姿势素材生成图片\n\n▸ 怎么用\n 1. 在「参考姿势」节点上选:类别 / 姿势组 / 姿势 / 视角(前三个联动)\n 2. 执行,节点上会直接画出选中的素材,先确认姿势对不对\n 3. 改 prompt 描述你要的画面(服装、背景、风格),执行\n\n▸ 源:线稿 / 深度\n 默认「线稿」。实测深度图 3/3 会自己补出不存在的鞋或护具\n (深度没有边界线,脚底和地面亮度太接近),线稿只有 1/3 有瑕疵。\n 深度唯一的优势是遮挡关系,肢体交叠复杂的姿势可以切过去试。\n\n▸ 长边 / 翻转\n 素材原始只有 300x400,「长边」默认放大到 1024。\n 「翻转」做左右镜像,反方向的姿势不用另找素材。\n\n▸ 换编辑模型\n 这个节点的输出是普通 IMAGE,直接把「参考姿势」接到别的编辑编码器的\n images 输入即可:\n · TextEncodeQwenImage21(当前用的,Qwen-Image-2.1)\n · TextEncodeFibo2(FIBO 2.0,记得 CLIPLoader 类型选 fibo2、VAE 换 flux2-vae)\n · TextEncodeQwenImageEditPlus / DynamicRefImageEncode 等\n 图片尺寸建议跟 model 的出图尺寸一致,不然模型会自己裁。\n\n▸ 参数\n Qwen-Image-2.1 turbo:steps 8 / cfg 1.0 / euler / simple / denoise 1.0\n 用文件\n unet: Qwen/qwen_image_2.1_turbo_int8_convrot.safetensors\n clip: qwen/qwen3vl_8b_int8_convrot.safetensors(类型 qwen_image)\n vae : qwen_image_2.1_vae_bf16.safetensors(64 通道,别选 qwen_image_vae)"
+ },
+ "color": "#432",
+ "bgcolor": "#653"
+ }
+ ],
+ "links": [
+ [
+ 1,
+ 1,
+ 0,
+ 6,
+ 0,
+ "MODEL"
+ ],
+ [
+ 4,
+ 3,
+ 0,
+ 7,
+ 1,
+ "VAE"
+ ],
+ [
+ 2,
+ 2,
+ 0,
+ 5,
+ 0,
+ "CLIP"
+ ],
+ [
+ 5,
+ 4,
+ 0,
+ 5,
+ 1,
+ "IMAGE"
+ ],
+ [
+ 3,
+ 3,
+ 0,
+ 5,
+ 3,
+ "VAE"
+ ],
+ [
+ 6,
+ 5,
+ 0,
+ 6,
+ 1,
+ "CONDITIONING"
+ ],
+ [
+ 7,
+ 5,
+ 1,
+ 6,
+ 2,
+ "CONDITIONING"
+ ],
+ [
+ 8,
+ 5,
+ 2,
+ 6,
+ 3,
+ "LATENT"
+ ],
+ [
+ 9,
+ 6,
+ 0,
+ 7,
+ 0,
+ "LATENT"
+ ],
+ [
+ 10,
+ 7,
+ 0,
+ 8,
+ 0,
+ "IMAGE"
+ ]
+ ],
+ "groups": [
+ {
+ "id": 1,
+ "title": "加载模型",
+ "bounding": [
+ 20,
+ 50,
+ 330,
+ 490
+ ],
+ "color": "#3f789e",
+ "flags": {}
+ },
+ {
+ "id": 2,
+ "title": "参考姿势 → 出图",
+ "bounding": [
+ 410,
+ 50,
+ 1580,
+ 440
+ ],
+ "color": "#8a6d3b",
+ "flags": {}
+ }
+ ],
+ "config": {},
+ "extra": {
+ "ds": {
+ "scale": 0.62,
+ "offset": [
+ 60,
+ 80
+ ]
+ }
+ },
+ "version": 0.4
+}
\ No newline at end of file
diff --git a/js/broadcast_toggle.js b/js/broadcast_toggle.js
index a9ae707..07ca6fe 100644
--- a/js/broadcast_toggle.js
+++ b/js/broadcast_toggle.js
@@ -1,865 +1,1037 @@
-/**
- * ComfyUI-Toggle-Pass: ToggleUnifiedLoader —「全局广播」开关(自带,不依赖 cg-use-everywhere)
- *
- * 作用:节点上多一个「开 / 关」开关。
- * 开 -> 运行(以及导出 API)时,把 MODEL / CLIP / VAE 自动接到图里**所有空着的同类型输入**上,
- * 不用再一根根拉线;画布上不会留下这些线(提交时临时连、提交完立刻拆)。
- * 同时画布上会用**紫色曲线**把「将会自动接上的线」画出来,方便核对。
- * 关 -> 完全保持原样,自己拉线(默认)。
- *
- * 为什么不用 cg-use-everywhere 的 `properties.ue_convert`:
- * 那是它的私有机制,装了才有、卸载就没了,而且只在它自己的 queuePrompt 钩子下生效。
- * 这里自己实现一份最小广播:零依赖、导出 API 也照样带线。
- *
- * ⚠️ 序列化安全(这个节点最贵的教训,改动前务必读完):
- * - 开关用 `addWidget("toggle", ...)` **追加在 widget 列表最末尾**,并且 `serialize:false`。
- * `widgets_values` 是按位置存的;它既然不进 widgets_values,旧工作流的每一项位置都不动。
- * —— 绝不能插在中间,也不能把一个已有参数标成 serialize:false(那样后面的值会整体前移)。
- * - 开关的状态存在 `node.properties.tp_broadcast`(LiteGraph 原生字段,随工作流保存),
- * 不占用 widgets_values。
- * - 不动 Python 的 INPUT_TYPES,所以这个特性**不需要重启 ComfyUI**,Ctrl+F5 就行。
- *
- * ⚠️ 只在「前端」提交时生效:用 /prompt 接口直接 POST 原始 API 格式 JSON 时没有前端参与,
- * 广播自然不会发生(想让它生效就先在界面里「导出 API」,导出的 JSON 已经带好线了)。
- */
-
-import { app } from "../../scripts/app.js";
-
-const EXT_NAME = "Toggle-Pass.broadcast";
-const NODE_NAME = "ToggleUnifiedLoader";
-const WIDGET_NAME = "全局广播";
-const PROP = "tp_broadcast";
-const BTN_ON = "开";
-const BTN_OFF = "关";
-
-/* 顶部自绘开关的几何常量 —— 必须与 multi_ref_encode.js 里「加载模式胶囊」那套保持一致,
- * 否则开关会跟上面的 UNet/Checkpoint 胶囊对不齐(两套常量各改各的很容易漂)。 */
-const ROW_SLOT_H = 20; // 兜底行高(真值优先取 LiteGraph.NODE_SLOT_HEIGHT)
-const ROW_CAP_MAX = 147; // 胶囊可见宽上限(= multi_ref_encode.js 的 MODE_ROW_MAX)
-const ROW_CAP_MIN = 120; // 节点极窄时的兜底宽
-const ROW_GAP_RIGHT = 45; // 胶囊右端到节点右边的最小留白
-const BC_MIN_W = 66; // 开关自身不窄于此(再窄「广播」+轨道就放不下了)
-const BC_PAD_Y = 3; // 上下留白 —— 与 multi_ref_encode.js 的 TG_PAD_Y 同值,
- // 这样开关高度 = 胶囊高度(都是 行高 - 3*2 = 14)
-
-/* ------------------------------------------------------------------ *
- * 一、节点上的开关
- * ------------------------------------------------------------------ */
-
-function isBroadcastOn(node) {
- const w = (node.widgets || []).find((x) => x && x.name === WIDGET_NAME);
- if (w) return !!w.value;
- return !!(node.properties && node.properties[PROP]);
-}
-
-function numAt(v, i) {
- const x = v?.[i];
- return typeof x === "number" && isFinite(x) ? x : null;
-}
-
-function addBroadcastWidget(node) {
- if ((node.widgets || []).some((x) => x && x.name === WIDGET_NAME)) return;
-
- const on = !!(node.properties && node.properties[PROP]);
-
- /* 原生 toggle:本机前端 1.53.10 的 widget 工厂支持 "toggle",
- * {on, off} 决定两侧文案(ComfyUI 自己的 BOOLEAN 输入就是这么建的)。 */
- let w = null;
- try {
- w = node.addWidget("toggle", WIDGET_NAME, on, (v) => {
- try {
- node.properties = node.properties || {};
- /* 原生 toggle 会把新值当第一个参数传进来;拿不到才回落读 w.value
- * (别只读 w.value:某些路径上 callback 先于 value 赋值,会写反) */
- node.properties[PROP] = typeof v === "boolean" ? v : !!w.value;
- } catch (e) {
- console.warn("[Toggle-Pass] 广播开关状态写入 properties 失败", e);
- }
- app.graph?.setDirtyCanvas?.(true, true);
- node.setDirtyCanvas?.(true, true);
- }, { on: BTN_ON, off: BTN_OFF });
- } catch (e) {
- console.warn("[Toggle-Pass] 原生 toggle 控件不可用,跳过广播开关", e);
- return;
- }
- if (!w) return;
-
- /* 不进 widgets_values / 不进 prompt:旧工作流的位置表一项都不动 */
- w.options = w.options || {};
- w.options.serialize = false;
- w.serialize = false;
- w.tooltip =
- "全局广播:开启后运行时把 MODEL / CLIP / VAE 自动接到图里所有空着的同类型输入上,不用拉线。" +
- "开启时画布上会用紫色曲线画出「将自动接上的线」,方便核对(曲线只是预览,不是真实连线、不会被保存)。" +
- "关闭则照旧手动连线。";
- w.label = WIDGET_NAME;
-
- /* ★ 2026-10-24:开关从「widget 列表末尾的一整行」搬到「顶部胶囊下面」。
- * 做法:原生 widget 只当**状态容器**(值 / properties / 序列化全部原样不动),
- * 用 hidden 让它不参与布局与绘制,再自己画一个小开关上去。
- * 为什么 hidden 是安全的:widgets_values 是按「参与序列化的 widget」顺序存的,
- * 这个 toggle 本来就是 serialize:false(不进 widgets_values),
- * 藏起来既不增也不减参与序列化的项 ⇒ 旧工作流的位置表一项都不动。
- * 顺带的好处:节点底部少了一整行,不再挤在「移除 LoRA」下面。 */
- w.hidden = true;
- node._tpBcW = w;
- attachBroadcastRow(node);
-}
-
-/* ------------------------------------------------------------------ *
- * 一之二、顶部自绘小开关(在 UNet / Checkpoint 胶囊的下一行、左半边)
- *
- * 为什么不用 widget 承载:widget 的 y 由前端布局算死(插槽区之下、按列表顺序往下排),
- * 想放到「第一行插槽左侧的下方」这种位置,只能自己画。
- * 这里复用的是「加载模式」开关同一套打法(见 multi_ref_encode.js 的 attachModeRowToggle):
- * · 位置:第 1 行插槽的正下方(= 第 2 行插槽那一行的左半边,右侧 CLIP 标签不受影响)
- * · 宽度:胶囊的一半(用户要求「一半位置就行」)
- * · 绘制:node.onDrawForeground;命中:node.onMouseDown(返回真值吃掉事件,避免变成拖动节点)
- * ⚠️ 这两个钩子是**实例属性**,必须存旧引用链式调用 —— 直接赋值会吞掉
- * multi_ref_encode.js 挂的「加载模式」开关(两边都挂同一对钩子)。
- * ------------------------------------------------------------------ */
-
-/** 与 multi_ref_encode.js 的 tpWidgetMargin() 同源:BaseWidget.margin 默认 15 */
-function bcMargin() {
- const m = globalThis.BaseWidget?.margin;
- return (typeof m === "number" && m >= 0 && m <= 40) ? m : 15;
-}
-
-function bcRoundRect(ctx, x, y, w, h, r) {
- const rr = Math.max(0, Math.min(r, h / 2, w / 2));
- ctx.beginPath();
- ctx.moveTo(x + rr, y);
- ctx.lineTo(x + w - rr, y);
- ctx.quadraticCurveTo(x + w, y, x + w, y + rr);
- ctx.lineTo(x + w, y + h - rr);
- ctx.quadraticCurveTo(x + w, y + h, x + w - rr, y + h);
- ctx.lineTo(x + rr, y + h);
- ctx.quadraticCurveTo(x, y + h, x, y + h - rr);
- ctx.lineTo(x, y + rr);
- ctx.quadraticCurveTo(x, y, x + rr, y);
- ctx.closePath();
-}
-
-/** 开关在节点本地坐标里的位置与尺寸(x/w 是我们自己这一块的范围,不含右侧留白) */
-function bcRowGeom(node) {
- const SH = Number(globalThis.LiteGraph?.NODE_SLOT_HEIGHT) || ROW_SLOT_H;
- const nw = numAt(node?.size, 0) || 0;
- const left = bcMargin();
- /* 先按「加载模式胶囊」的宽度算(保证和上面的胶囊左右端点对得上) */
- let capW = nw > 0 ? nw - left - ROW_GAP_RIGHT : ROW_CAP_MAX;
- capW = Math.min(ROW_CAP_MAX, Math.max(0, capW));
- if (capW < ROW_CAP_MIN) capW = nw > 0 ? Math.min(ROW_CAP_MIN, Math.max(0, nw - left)) : ROW_CAP_MIN;
- /* 用户要求:占胶囊的一半(红框圈的就是胶囊前一半的宽度) */
- const w = Math.max(BC_MIN_W, Math.round(capW / 2));
-
- /* 第一行插槽的纵向位置(与加载模式胶囊同一套反推),再往下挪一行 = 胶囊正下方 */
- let top = Math.round(SH * 0.2);
- try {
- const cy = numAt(node?.getOutputPos?.(0), 1);
- const py = numAt(node?.pos, 1);
- if (cy !== null && py !== null) top = Math.max(0, Math.round(cy - py - SH / 2));
- } catch (e) { /* 用兜底值 */ }
- return { x: left, y: top + SH, w, h: SH };
-}
-
-/** 自绘:一个完整的小胶囊控件 —— 淡底色托底,左边 label、右边开关轨道。
- * 为什么要有底色:节点里其它控件(下拉框、UNet/Checkpoint 胶囊)都有底色,
- * 只画「裸文字 + 轨道」会显得浮在空白上,跟整体设计语言脱节。
- * ★ 关键是「托底要淡、轨道要细」:
- * 第一版给外框加了 1px 亮描边,结果和下边框围成**两层框**(外框 + 内轨道),
- * 比上面那条单层胶囊笨重得多。现在外框只有一层很淡的填充、默认无描边,
- * 视觉上退成「一块底色」而不是「一个框」,轨道才是主角。
- * 配色对齐节点现有控件:下拉框底色 / 高亮蓝 #3a96f3。 */
-function drawBroadcastRow(ctx, node, on, hover) {
- const g = bcRowGeom(node);
- const cy = g.y + g.h / 2;
- /* 高度与上面的 UNet/Checkpoint 胶囊完全一致:行高 - BC_PAD_Y*2 = 14
- * (胶囊那边是 TG_PAD_Y=3、净高 14 —— 两个常量必须同步改,否则一高一矮) */
- const bh = g.h - BC_PAD_Y * 2;
- const r = bh / 2;
- const bx = g.x, bw = g.w;
-
- try {
- ctx.save();
-
- /* ---- 托底:一层淡填充,只在开启/悬停时略提亮 ---- */
- bcRoundRect(ctx, bx, g.y + BC_PAD_Y, bw, bh, r);
- if (on) ctx.fillStyle = hover ? "rgba(58,150,243,0.24)" : "rgba(58,150,243,0.13)";
- else ctx.fillStyle = hover ? "rgba(255,255,255,0.105)" : "rgba(255,255,255,0.06)";
- ctx.fill();
- /* 悬停加一道极淡描边:明确「这里能点」,又不会变成第二个框 */
- if (hover) {
- ctx.lineWidth = 1;
- ctx.strokeStyle = on ? "rgba(58,150,243,0.45)" : "rgba(255,255,255,0.12)";
- ctx.stroke();
- }
-
- /* ---- 内容整体居中:先量文字宽,再把「文字 + 间隙 + 轨道」作为一条内容居中摆放 ----
- * 之前是「文字贴左 8px、轨道贴右 7px」,两边留白各算各的 ⇒ 一宽一窄,看着偏向一边。
- * 现在统一算 padX,左右留白严格相等。 */
- const label = "广播";
- ctx.textAlign = "left";
- ctx.font = "600 10px sans-serif"; // 用户要求:11px → 10px(小 10%)
- let tw = 20; // 10px「广播」约 20px,量不到时兜底
- try {
- const lm = ctx.measureText(label);
- if (lm && typeof lm.width === "number" && isFinite(lm.width) && lm.width > 0) tw = lm.width;
- } catch (e) { /* 用兜底 */ }
-
- const trackW = 24, GAP = 8;
- const contentW = tw + GAP + trackW;
- const padX = Math.max(5, (bw - contentW) / 2); // 左右留白相等 ⇒ 整条内容居中
- const lx = bx + padX;
- const tx = lx + tw + GAP;
-
- /* ---- label:按视觉盒垂直居中 ----
- * 不用 textBaseline="middle":Canvas 的 middle 按 (ascent+descent)/2 排,
- * 对没有降部的中文会整体偏上。改成量出真实上沿、基线放到 cy + 上沿/2,
- * 这样字形上下留白相等 —— 实测这样仍会低约半个像素,再补 0.5 的视觉修正。 */
- ctx.fillStyle = on ? "rgba(230,238,250,1)" : "rgba(174,182,196,1)";
- let asc = 7.3; // 10px 中文的兜底上沿(量不到时用)
- try {
- const lm = ctx.measureText(label);
- const a = lm && lm.actualBoundingBoxAscent;
- if (typeof a === "number" && isFinite(a) && a > 0) asc = a;
- } catch (e) { /* 用兜底 */ }
- ctx.textBaseline = "alphabetic";
- ctx.fillText(label, lx, cy + asc / 2 - 0.5);
-
- /* ---- 右侧开关:细轨道 + 小滑块(位置 tx 已在上面按居中算好) ---- */
- const th = 10;
- const ty = cy - th / 2;
- bcRoundRect(ctx, tx, ty, trackW, th, th / 2);
- if (on) {
- const grad = ctx.createLinearGradient(tx, ty, tx, ty + th);
- grad.addColorStop(0, "#4aa5ff");
- grad.addColorStop(1, "#2f86e8");
- ctx.fillStyle = grad;
- } else {
- ctx.fillStyle = "rgba(255,255,255,0.13)";
- }
- ctx.fill();
- /* 关闭态补一道内沿,让轨道看起来是「凹槽」而不是一块平色 */
- if (!on) {
- ctx.lineWidth = 1;
- ctx.strokeStyle = "rgba(0,0,0,0.18)";
- ctx.stroke();
- }
-
- /* ---- 滑块:一点点投影,让它「浮」在轨道上 ---- */
- const kr = 4;
- const kx = on ? tx + trackW - 1 - kr : tx + 1 + kr;
- ctx.save();
- ctx.shadowColor = "rgba(0,0,0,0.30)";
- ctx.shadowBlur = 2;
- ctx.shadowOffsetY = 0.5;
- ctx.beginPath();
- ctx.arc(kx, cy, kr, 0, Math.PI * 2);
- ctx.fillStyle = "#ffffff";
- ctx.fill();
- ctx.restore();
- } finally {
- /* ★ 必须 try/finally:漏 restore 会让整个画布的变换永久跑偏(踩过) */
- try { ctx.restore(); } catch (e) { /* ignore */ }
- }
-}
-
-function isBroadcastOnNode(node) {
- const w = node?._tpBcW || (node?.widgets || []).find((x) => x && x.name === WIDGET_NAME);
- if (w && typeof w.value === "boolean") return w.value;
- return !!(node?.properties && node.properties[PROP]);
-}
-
-/** 切开关:真源写 properties,再同步给(隐藏的)原生 widget,前端才知道图被改了 */
-function setBroadcast(node, on) {
- const v = !!on;
- try {
- node.properties = node.properties || {};
- node.properties[PROP] = v;
- } catch (e) { /* ignore */ }
- const w = node._tpBcW || (node.widgets || []).find((x) => x && x.name === WIDGET_NAME);
- if (w) {
- try {
- if (typeof w.setValue === "function") w.setValue(v);
- else w.value = v;
- } catch (e) {
- w.value = v;
- }
- }
- node.setDirtyCanvas?.(true, true);
- app.graph?.setDirtyCanvas?.(true, true);
- app.graph?.change?.();
-}
-
-/** 把自绘开关挂到节点上(幂等) */
-function attachBroadcastRow(node) {
- if (node._tpBcRow) return;
- /* 「现代节点设计」(Vue 节点)不走 canvas 绘制钩子 → 保持原生 widget 可见的回落 */
- if (globalThis.LiteGraph?.vueNodesMode) {
- const w = node._tpBcW;
- if (w) w.hidden = false;
- return;
- }
- node._tpBcRow = true;
-
- const prevDraw = typeof node.onDrawForeground === "function" ? node.onDrawForeground : null;
- const prevDown = typeof node.onMouseDown === "function" ? node.onMouseDown : null;
- const prevMove = typeof node.onMouseMove === "function" ? node.onMouseMove : null;
-
- node.onDrawForeground = function (ctx, ...rest) {
- if (prevDraw) {
- try { prevDraw.call(this, ctx, ...rest); } catch (e) { /* 旧钩子出错不影响开关 */ }
- }
- if (!this._tpBcW || this.flags?.collapsed) return;
- try {
- drawBroadcastRow(ctx, this, isBroadcastOnNode(this), !!this._tpBcHover);
- } catch (e) {
- /* 自绘失败就留空,绝不能抛出去(会中断整块画布绘制) */
- }
- };
-
- /* 悬停高亮:只在「进入/离开」时刷新一次画布,不做逐像素重绘 */
- node.onMouseMove = function (e, pos, canvas) {
- if (this._tpBcW && !this.flags?.collapsed) {
- const x = numAt(pos, 0), y = numAt(pos, 1);
- let hv = false;
- if (x !== null && y !== null) {
- const g = bcRowGeom(this);
- hv = x >= g.x && x <= g.x + g.w && y >= g.y && y <= g.y + g.h;
- }
- if (this._tpBcHover !== hv) {
- this._tpBcHover = hv;
- this.setDirtyCanvas?.(true, true);
- }
- }
- return prevMove ? prevMove.call(this, e, pos, canvas) : false;
- };
-
- /* ⚠️ 光有 onMouseMove 不够:鼠标一移出节点,前端就不再给它派发 move,
- * 高亮会**永久卡在亮着**的状态(实测:移开画布后 _tpBcHover 仍是 true)。
- * 所以补一个离开钩子复位。 */
- const prevLeave = typeof node.onMouseLeave === "function" ? node.onMouseLeave : null;
- node.onMouseLeave = function (...args) {
- if (this._tpBcHover) {
- this._tpBcHover = false;
- this.setDirtyCanvas?.(true, true);
- }
- return prevLeave ? prevLeave.apply(this, args) : undefined;
- };
-
- node.onMouseDown = function (e, pos, canvas) {
- if (this._tpBcW && !this.flags?.collapsed) {
- const x = numAt(pos, 0), y = numAt(pos, 1);
- if (x !== null && y !== null) {
- const g = bcRowGeom(this);
- if (x >= g.x && x <= g.x + g.w && y >= g.y && y <= g.y + g.h) {
- setBroadcast(this, !isBroadcastOnNode(this));
- return true; // 吃掉点击,避免变成拖动节点
- }
- }
- }
- return prevDown ? (prevDown.call(this, e, pos, canvas) || false) : false;
- };
-}
-
-/* 注:原 growToFit()(给追加的那行 widget 补节点高度)已随「开关搬到顶部」一起删除 ——
- * 开关不再占用 widget 布局,节点高度不需要额外补。 */
-
-function syncBroadcastWidget(node) {
- const w = (node.widgets || []).find((x) => x && x.name === WIDGET_NAME);
- if (!w) return;
- const v = !!(node.properties && node.properties[PROP]);
- if (!!w.value !== v) w.value = v;
- /* 保险:极端情况下(前端没走 onNodeCreated 就直接 configure)自绘钩子可能还没挂 */
- if (w.hidden) {
- node._tpBcW = w;
- attachBroadcastRow(node);
- }
-}
-
-/* ------------------------------------------------------------------ *
- * 二、提交时临时连线(最小广播实现)
- * ------------------------------------------------------------------ */
-
-/** 输入类型与输出类型是否匹配(兼容 "MODEL" / "A,B" / "*" 这几种写法) */
-function typeMatch(inputType, outputType) {
- const a = String(inputType ?? "");
- const b = String(outputType ?? "");
- if (!a || !b) return false;
- if (a === b) return true;
- if (a === "*" || b === "*") return true;
- return a.split(",").some((s) => s.trim() === b);
-}
-
-/**
- * 计算「广播计划」:哪些空着的输入会被接到哪个输出。
- *
- * ⚠️ 真接线(inflate)和画布上的曲线预览(computeShapes)**必须共用这一份**,
- * 否则会出现「画的线」和「真接的线」不一致 —— 那种 bug 用户根本没法自查。
- */
-function planBroadcast(graph) {
- const pairs = [];
- const ambiguous = new Set();
- if (!graph || !Array.isArray(graph._nodes)) return { pairs, ambiguous };
-
- /* 每个类型只认一个广播源:多个加载器都开广播时取第一个,并提示一次 */
- const srcByType = new Map();
- for (const n of graph._nodes) {
- if (!n || n.type !== NODE_NAME || !isBroadcastOn(n)) continue;
- const outs = n.outputs || [];
- for (let i = 0; i < outs.length; i++) {
- const t = outs[i] && outs[i].type;
- if (!t || t === "*") continue;
- if (srcByType.has(t)) {
- ambiguous.add(t);
- continue;
- }
- srcByType.set(t, { node: n, slot: i });
- }
- }
- if (!srcByType.size) return { pairs, ambiguous };
-
- for (const [t, src] of srcByType) {
- for (const target of graph._nodes) {
- /* 加载器自己不算,避免自己接自己 */
- if (!target || target === src.node || target.type === NODE_NAME) continue;
- const inputs = target.inputs || [];
- for (let idx = 0; idx < inputs.length; idx++) {
- const inp = inputs[idx];
- /* 已经接了线的一律不动 —— 广播只补空位,绝不覆盖用户手连的线 */
- if (!inp || inp.link != null) continue;
- if (!typeMatch(inp.type, t)) continue;
- pairs.push({ srcNode: src.node, srcSlot: src.slot, srcType: t, dstNode: target, dstSlot: idx });
- }
- }
- }
- return { pairs, ambiguous };
-}
-
-/**
- * 把「开着广播」的加载器的三个输出,临时接到所有空着的同类型输入上。
- * 返回一个还原函数;调用它会把临时连线全部拆掉。
- */
-function inflate(appRef) {
- const graph = appRef.rootGraph || appRef.graph;
- const { pairs, ambiguous } = planBroadcast(graph);
- if (ambiguous.size) {
- console.warn(
- "[Toggle-Pass] 有多个加载器开着「全局广播」,同类型输出只取第一个:",
- Array.from(ambiguous).join(", "),
- );
- }
- const undo = [];
-
- for (const p of pairs) {
- try {
- p.srcNode.connect(p.srcSlot, p.dstNode, p.dstSlot);
- } catch (e) {
- continue;
- }
- /* connect 失败时不会抛,只表现为 link 仍为空 */
- if (p.dstNode.inputs?.[p.dstSlot] && p.dstNode.inputs[p.dstSlot].link != null) {
- const { dstNode, dstSlot } = p;
- undo.push(() => {
- try {
- dstNode.disconnectInput(dstSlot);
- } catch (e) {
- /* 目标节点已被删掉之类,忽略 */
- }
- });
- }
- }
-
- return () => {
- for (let i = undo.length - 1; i >= 0; i--) undo[i]();
- try {
- appRef.graph?.setDirtyCanvas?.(true, true);
- } catch (e) {
- /* 无画布环境(导出脚本)忽略 */
- }
- };
-}
-
-/* ------------------------------------------------------------------ *
- * 三、画布上的预览曲线(只画,不建真实 link)
- * ------------------------------------------------------------------ */
-
-/* 观感对齐 cg-use-everywhere:紫罗兰实线 + 一层柔光,比青色虚线耐看,
- * 也不会被误当成「报错警告线」。 */
-const PREVIEW_COLOR = "#a78bfa";
-const PREVIEW_GLOW = "#7c5cff";
-
-/** 从槽位的 boundingRect(官方渲染算出来的真实盒子)取中心点,图坐标 */
-function rectCenter(r) {
- if (!r) return null;
- if (Array.isArray(r) || typeof r[0] === "number") {
- const x = numAt(r, 0);
- const y = numAt(r, 1);
- if (x == null || y == null) return null;
- return [x + (numAt(r, 2) || 0) / 2, y + (numAt(r, 3) || 0) / 2];
- }
- const x = typeof r.x === "number" ? r.x : r.left;
- const y = typeof r.y === "number" ? r.y : r.top;
- if (typeof x !== "number" || typeof y !== "number") return null;
- const w = r.width ?? r.w ?? 0;
- const h = r.height ?? r.h ?? 0;
- return [x + w / 2, y + h / 2];
-}
-
-/**
- * 槽位中心(图坐标)。
- *
- * ⚠️ 优先 `boundingRect`,不要只信 `getConnectionPos`:
- * 本机前端里槽位的 `pos` 字段**经常是 null**(只有走 widget 布局的那几个才被填),
- * 而 `pos` 为 null 时 getConnectionPos 会退化成「按输入顺序估算」的公式
- * (`node.pos + (index+0.7)*NODE_SLOT_HEIGHT`) —— 一旦节点里有 widget 夹在输入之间,
- * 估出来的位置就和实际渲染对不上,线看起来就是「错位」。
- * `boundingRect` 是渲染时算出来的真实盒子,节点一移动它就跟着更新。
- */
-function slotPoint(node, isInput, idx) {
- const list = isInput ? node?.inputs : node?.outputs;
- const s = list && list[idx];
- if (!s) return null;
- const c = rectCenter(s.boundingRect);
- if (c) return c;
- try {
- const p = node.getConnectionPos(isInput, idx);
- if (p && isFinite(p[0]) && isFinite(p[1])) return [p[0], p[1]];
- } catch (e) {
- /* 节点被删/布局未完成 */
- }
- return null;
-}
-
-/**
- * 把「运行时会自动接上的线」算成屏幕坐标下的贝塞尔。
- * 不创建任何 link ⇒ 不进工作流、不影响保存,纯视觉提示。
- *
- * 坐标链路:槽位(图坐标)→ `ds.convertOffsetToCanvas` → 屏幕坐标,
- * 然后 setTransform 到 dpr,直接按屏幕坐标画。
- * ⚠️ 不要自己手搓 `(p + offset) * scale`:那是在赌前端内部变换的实现细节。
- */
-function computeShapes(canvas) {
- /* ⚠️ 必须和 inflate() 用**同一张图**(rootGraph 优先):
- * 广播接哪张图,就画哪张图。两边取不同引用(canvas.graph / app.graph)
- * 在切换工作流或进子图的瞬间会不一致,线就会指向图里已不存在的位置。 */
- const g = (app && (app.rootGraph || app.graph)) || (canvas && canvas.graph);
- const ds = canvas && canvas.ds;
- if (!g || !ds) return null;
-
- const { pairs } = planBroadcast(g);
- if (!pairs.length) return null;
-
- const scale = ds.scale || 1;
- let dpr = canvas.dpr;
- if (!dpr) {
- const r = canvas.canvas?.getBoundingClientRect?.();
- dpr = r && r.width > 0 ? canvas.canvas.width / r.width : 1;
- }
- const off = ds.offset || [0, 0];
- const toScreen = (p) => {
- try {
- const r = ds.convertOffsetToCanvas?.([p[0], p[1]]);
- if (r && isFinite(r[0]) && isFinite(r[1])) return [r[0], r[1]];
- } catch (e) {
- /* 兜底走下面的手算 */
- }
- return [(p[0] + (off[0] || 0)) * scale, (p[1] + (off[1] || 0)) * scale];
- };
-
- const items = [];
- for (const p of pairs) {
- const aG = slotPoint(p.srcNode, false, p.srcSlot);
- const bG = slotPoint(p.dstNode, true, p.dstSlot);
- if (!aG || !bG) continue;
- const a = toScreen(aG);
- const b = toScreen(bG);
- if (!isFinite(a[0]) || !isFinite(b[0])) continue;
- /* 控制点跟官方 Spline 连线同一套:取两点距离的 3 成(不小于 40 图单位),
- * 起点往右甩、终点从左边进 —— 收口方向和真实连线一致,
- * 一眼就能看出线是从哪个口出来的。 */
- const dist = Math.hypot(bG[0] - aG[0], bG[1] - aG[1]);
- const d = Math.max(40, dist * 0.3) * scale;
- items.push({
- aG,
- bG,
- a,
- b,
- c1: [a[0] + d, a[1]],
- c2: [b[0] - d, b[1]],
- });
- }
- if (!items.length) return null;
- return { items, scale, dpr };
-}
-
-/**
- * 取「背景层」的 ctx。
- *
- * ⚠️⚠️ 这里是最容易白忙一场的地方:新版前端把背景画在**离屏** canvas 上
- * (`this.bgcanvas`),画完之后才 `ctx.drawImage(bgcanvas, ...)` 贴到主画布,
- * 再在主画布上画节点。所以往主 ctx 上画背景层的内容 —— 会立刻被那张贴图盖掉,
- * 代码跑了、坐标也对,就是看不见(实测一个紫色像素都没有)。
- * 必须画进 bgcanvas 自己的 ctx,贴图时才会把它一起带上来,节点再盖在上面。
- * 老架构没有 bgcanvas(背景直接画在主 ctx 上),此时退回主 ctx。
- */
-function bgCtx(canvas) {
- const bg = canvas && canvas.bgcanvas;
- if (bg && typeof bg.getContext === "function") {
- if (!canvas.__tpBgCtx || canvas.__tpBgCtx.canvas !== bg) canvas.__tpBgCtx = bg.getContext("2d");
- return canvas.__tpBgCtx;
- }
- return canvas && canvas.ctx;
-}
-
-/**
- * 线本体 —— 画在**节点下层**(背景层 ctx,交付 `drawBackCanvas` 之后)。
- * 所以线穿过节点时会被节点自然遮住,跟真实连线一个观感:
- * 该露的缝隙里露出来,节点上干干净净,不挡标题也不挡参数。
- */
-function drawBroadcastLines(ctx, canvas) {
- const plan = computeShapes(canvas);
- if (!plan || !ctx) return;
- const { items, scale, dpr } = plan;
-
- ctx.save();
- /* ⚠️ save / restore 必须用 try/finally 包住:
- * 中间任何一次 `it.a` 取值、bezier 计算出问题抛异常,若跳过 restore,
- * 这个 ctx 就会**永久**留在 `dpr + translate + scale` 变换下 ——
- * 之后所有绘制(包括官方的选择框、节点)都会整体偏移、放大,
- * 而且看起来跟本插件毫无关系,极难排查。宁可少画一帧,也不能漏 restore。 */
- try {
- ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
- ctx.lineCap = "round";
- ctx.lineJoin = "round";
-
- for (const it of items) {
- const trace = () => {
- ctx.beginPath();
- ctx.moveTo(it.a[0], it.a[1]);
- ctx.bezierCurveTo(it.c1[0], it.c1[1], it.c2[0], it.c2[1], it.b[0], it.b[1]);
- };
-
- /* 一层柔光底:深色画布上紫线才不会是「一根生硬的细线」 */
- ctx.globalAlpha = 0.16;
- ctx.strokeStyle = PREVIEW_GLOW;
- ctx.lineWidth = Math.max(5, 7 * scale);
- trace();
- ctx.stroke();
-
- /* 主线 */
- ctx.globalAlpha = 0.95;
- ctx.strokeStyle = PREVIEW_COLOR;
- ctx.lineWidth = Math.max(1.8, 2.2 * scale);
- trace();
- ctx.stroke();
- }
- } finally {
- ctx.restore();
- }
-
- if (typeof window !== "undefined") {
- window.__tpLastDraw = items.map((it) => ({
- a: [Math.round(it.aG[0]), Math.round(it.aG[1])],
- b: [Math.round(it.bG[0]), Math.round(it.bG[1])],
- aS: [Math.round(it.a[0]), Math.round(it.a[1])],
- bS: [Math.round(it.b[0]), Math.round(it.b[1])],
- bend: 0,
- }));
- }
-}
-
-/**
- * 端点小圆点 —— 画在**节点上层**。
- * 槽位本身就压在节点边线上,放下层会被节点整个盖掉,线头看着像断的;
- * 两颗 3px 的点不挡任何文字,却能把「接在哪」钉死。
- */
-function drawBroadcastDots(ctx, canvas) {
- const plan = computeShapes(canvas);
- if (!plan || !ctx) return;
- const { items, scale, dpr } = plan;
-
- ctx.save();
- /* 同 drawBroadcastLines:restore 必须兜底,否则整个画布的变换会被带偏 */
- try {
- ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
- ctx.globalAlpha = 0.95;
- ctx.fillStyle = PREVIEW_COLOR;
- const r = Math.max(2.2, 2.6 * scale);
- for (const it of items) {
- for (const pt of [it.a, it.b]) {
- ctx.beginPath();
- ctx.arc(pt[0], pt[1], r, 0, Math.PI * 2);
- ctx.fill();
- }
- }
- } finally {
- ctx.restore();
- }
-}
-
-/**
- * 装配两处钩子:
- * ① `drawBackCanvas` **之后** → 线(画进 bgcanvas,节点下层)
- * ② `draw()` 末尾 → 端点圆点(主 ctx,节点上层)
- *
- * ⚠️ 为什么不用 `onDrawForeground`(踩过的坑):
- * ComfyUI 前端用 `watch(() => app.canvas, e => e.onDrawForeground = chain(...))`
- * 维护画布钩子,那个 watch 会在我们之后重新赋值 —— 包装被整个替换掉,
- * 实测 hookLen 变成了别人的 88 字符函数,绘制一次都没执行。
- */
-function installPreviewPainter(appRef) {
- const canvas = appRef.canvas;
- if (!canvas || typeof canvas.draw !== "function") return;
- if (canvas.__tpDrawPatched) return;
- canvas.__tpDrawPatched = true;
-
- /* ⚠️ 为什么挂在 `drawBackCanvas` **之后**(踩过的坑):
- * 一开始插在 `drawFrontCanvas` **之前**,结果一个像素都看不到 ——
- * drawFrontCanvas 内部会把前景层重绘一遍,我们画的东西被它盖掉了。
- * 画在 drawBackCanvas 之后:背景和真实连线都画完了,节点还没画 ⇒
- * 线正好落在「节点下层」,节点一盖就自然遮住,节点之间的空白处保留。
- *
- * ⚠️ 只用 `this.ctx` / `this`,**不看入参**:实测 drawBackCanvas 的实参
- * 既不是 ctx 也不是 canvas(另一个入口报过 `ctx.save is not a function`),
- * 照它取坐标系会一条线都算不出来。参数原样透传,绝不改写。 */
- const wrapBack = (cv) => {
- const inner = cv.drawBackCanvas;
- if (typeof inner !== "function" || inner.__tpPainter) return;
- const wrapped = function (...args) {
- const r = inner.apply(this, args);
- try {
- drawBroadcastLines(bgCtx(this), this);
- } catch (e) {
- if (typeof window !== "undefined") window.__tpDrawErr = "line:" + String((e && e.message) || e);
- }
- return r;
- };
- wrapped.__tpPainter = true;
- cv.drawBackCanvas = wrapped;
- };
-
- wrapBack(canvas);
-
- const origDraw = canvas.draw;
- canvas.draw = function (...args) {
- /* 前端某些路径会重新赋值 drawBackCanvas(拖拽中断时见过),
- * 每帧开头兜一次,发现被换掉就重包 —— 成本是一次属性读。 */
- if (!this.drawBackCanvas || !this.drawBackCanvas.__tpPainter) wrapBack(this);
- let r;
- try {
- r = origDraw.apply(this, args);
- } finally {
- try {
- drawBroadcastDots(this.ctx, this);
- } catch (e) {
- if (typeof window !== "undefined") window.__tpDrawErr = "dot:" + String((e && e.message) || e);
- }
- }
- return r;
- };
-}
-
-function patchGraphToPrompt(appRef) {
- if (appRef.__tpBroadcastPatched) return;
-
- /* ⚠️ 必须**两层都包**,只包 graphToPrompt 会漏:
- * cg-use-everywhere 在它自己的 setup() 里就把**当时的** app.graphToPrompt 存成变量,
- * 点「运行」时它走 queuePrompt → 用存下来的原函数(可能绕过我们这一层)→ 广播静默失效。
- * 包住 queuePrompt 就能兜住这条路径:不管里面谁调谁,临时线在我们这一层就已经接好了。
- * 用 depth 计数保证「只广播一次」:外层已经接过,内层直接透传、不要重复接、更不要提前拆。 */
- let depth = 0;
-
- function around(fn) {
- if (depth > 0) return fn();
- depth += 1;
- const restore = inflate(appRef);
- const done = () => {
- depth -= 1;
- restore();
- };
- let ret;
- try {
- ret = fn();
- } catch (e) {
- done();
- throw e;
- }
- if (ret && typeof ret.then === "function") {
- return ret.then(
- (v) => {
- done();
- return v;
- },
- (e) => {
- done();
- throw e;
- },
- );
- }
- done();
- return ret;
- }
-
- const origPrompt = appRef.graphToPrompt;
- if (typeof origPrompt === "function") {
- appRef.graphToPrompt = function (...args) {
- return around(() => origPrompt.apply(this, args));
- };
- }
-
- const origQueue = appRef.queuePrompt;
- if (typeof origQueue === "function") {
- appRef.queuePrompt = function (...args) {
- return around(() => origQueue.apply(this, args));
- };
- }
-
- appRef.__tpBroadcastPatched = true;
- /* 给自检脚本用:直接在「广播生效」上下文里跑一段同步/异步逻辑 */
- appRef.__tpBroadcastAround = (fn) => around(fn);
- /* 给自检脚本用:列出当前会广播哪些线(只算不接) */
- appRef.__tpBroadcastPlan = () =>
- planBroadcast(appRef.graph).pairs.map(
- (p) => `${p.dstNode.id}:${p.dstNode.inputs?.[p.dstSlot]?.name}<-${p.srcNode.id}:${p.srcSlot}`,
- );
-}
-
-/* ------------------------------------------------------------------ *
- * 三、注册
- * ------------------------------------------------------------------ */
-
-app.registerExtension({
- name: EXT_NAME,
- async setup() {
- patchGraphToPrompt(app);
- installPreviewPainter(app);
- },
- beforeRegisterNodeDef(nodeType, nodeData) {
- if (nodeData.name !== NODE_NAME) return;
-
- const origCreated = nodeType.prototype.onNodeCreated;
- nodeType.prototype.onNodeCreated = function () {
- const r = origCreated ? origCreated.apply(this, arguments) : undefined;
- const node = this;
- /* 加载器自己的 onNodeCreated 末尾会 setSize([270,220]),
- * 所以这里必须排在它之后加控件、再补高度 */
- addBroadcastWidget(node);
- /* 前端重建过画布实例的话,钩子会挂在新实例上缺失——这里顺手兜一次 */
- try {
- installPreviewPainter(app);
- } catch (e) {
- /* 装不上不影响功能 */
- }
- return r;
- };
-
- /* 读档时 properties 已经恢复,把开关同步成存档里的状态 */
- const origConfigure = nodeType.prototype.onConfigure;
- nodeType.prototype.onConfigure = function () {
- const r = origConfigure ? origConfigure.apply(this, arguments) : undefined;
- syncBroadcastWidget(this);
- return r;
- };
- },
-});
+/**
+ * ComfyUI-Toggle-Pass: ToggleUnifiedLoader —「全局广播」开关(自带,不依赖 cg-use-everywhere)
+ *
+ * 作用:节点上多一个「开 / 关」开关。
+ * 开 -> 运行(以及导出 API)时,把 MODEL / CLIP / VAE 自动接到图里**所有空着的同类型输入**上,
+ * 不用再一根根拉线;画布上不会留下这些线(提交时临时连、提交完立刻拆)。
+ * 同时画布上会用**紫色曲线**把「将会自动接上的线」画出来,方便核对。
+ * 关 -> 完全保持原样,自己拉线(默认)。
+ *
+ * 为什么不用 cg-use-everywhere 的 `properties.ue_convert`:
+ * 那是它的私有机制,装了才有、卸载就没了,而且只在它自己的 queuePrompt 钩子下生效。
+ * 这里自己实现一份最小广播:零依赖、导出 API 也照样带线。
+ *
+ * ⚠️ 序列化安全(这个节点最贵的教训,改动前务必读完):
+ * - 开关用 `addWidget("toggle", ...)` **追加在 widget 列表最末尾**,并且 `serialize:false`。
+ * `widgets_values` 是按位置存的;它既然不进 widgets_values,旧工作流的每一项位置都不动。
+ * —— 绝不能插在中间,也不能把一个已有参数标成 serialize:false(那样后面的值会整体前移)。
+ * - 开关的状态存在 `node.properties.tp_broadcast`(LiteGraph 原生字段,随工作流保存),
+ * 不占用 widgets_values。
+ * - 不动 Python 的 INPUT_TYPES,所以这个特性**不需要重启 ComfyUI**,Ctrl+F5 就行。
+ *
+ * ⚠️ 只在「前端」提交时生效:用 /prompt 接口直接 POST 原始 API 格式 JSON 时没有前端参与,
+ * 广播自然不会发生(想让它生效就先在界面里「导出 API」,导出的 JSON 已经带好线了)。
+ */
+
+import { app } from "../../scripts/app.js";
+
+const EXT_NAME = "Toggle-Pass.broadcast";
+const NODE_NAME = "ToggleUnifiedLoader";
+const WIDGET_NAME = "全局广播";
+const PROP = "tp_broadcast";
+const BTN_ON = "开";
+const BTN_OFF = "关";
+
+/* 顶部自绘开关的几何常量 —— 必须与 multi_ref_encode.js 里「加载模式胶囊」那套保持一致,
+ * 否则开关会跟上面的 UNet/Checkpoint 胶囊对不齐(两套常量各改各的很容易漂)。 */
+const ROW_SLOT_H = 20; // 兜底行高(真值优先取 LiteGraph.NODE_SLOT_HEIGHT)
+const ROW_CAP_MAX = 147; // 胶囊可见宽上限(= multi_ref_encode.js 的 MODE_ROW_MAX)
+const ROW_CAP_MIN = 120; // 节点极窄时的兜底宽
+const ROW_GAP_RIGHT = 45; // 胶囊右端到节点右边的最小留白
+const BC_MIN_W = 66; // 开关自身不窄于此(再窄「广播」+轨道就放不下了)
+const BC_PAD_Y = 3; // 上下留白 —— 与 multi_ref_encode.js 的 TG_PAD_Y 同值,
+ // 这样开关高度 = 胶囊高度(都是 行高 - 3*2 = 14)
+
+/* ------------------------------------------------------------------ *
+ * 一、节点上的开关
+ * ------------------------------------------------------------------ */
+
+function isBroadcastOn(node) {
+ const w = (node.widgets || []).find((x) => x && x.name === WIDGET_NAME);
+ if (w) return !!w.value;
+ return !!(node.properties && node.properties[PROP]);
+}
+
+function numAt(v, i) {
+ const x = v?.[i];
+ return typeof x === "number" && isFinite(x) ? x : null;
+}
+
+function addBroadcastWidget(node) {
+ if ((node.widgets || []).some((x) => x && x.name === WIDGET_NAME)) return;
+
+ const on = !!(node.properties && node.properties[PROP]);
+
+ /* 原生 toggle:本机前端 1.53.10 的 widget 工厂支持 "toggle",
+ * {on, off} 决定两侧文案(ComfyUI 自己的 BOOLEAN 输入就是这么建的)。 */
+ let w = null;
+ try {
+ w = node.addWidget("toggle", WIDGET_NAME, on, (v) => {
+ try {
+ node.properties = node.properties || {};
+ /* 原生 toggle 会把新值当第一个参数传进来;拿不到才回落读 w.value
+ * (别只读 w.value:某些路径上 callback 先于 value 赋值,会写反) */
+ node.properties[PROP] = typeof v === "boolean" ? v : !!w.value;
+ } catch (e) {
+ console.warn("[Toggle-Pass] 广播开关状态写入 properties 失败", e);
+ }
+ app.graph?.setDirtyCanvas?.(true, true);
+ node.setDirtyCanvas?.(true, true);
+ }, { on: BTN_ON, off: BTN_OFF });
+ } catch (e) {
+ console.warn("[Toggle-Pass] 原生 toggle 控件不可用,跳过广播开关", e);
+ return;
+ }
+ if (!w) return;
+
+ /* 不进 widgets_values / 不进 prompt:旧工作流的位置表一项都不动 */
+ w.options = w.options || {};
+ w.options.serialize = false;
+ w.serialize = false;
+ w.tooltip =
+ "全局广播:开启后运行时把 MODEL / CLIP / VAE 自动接到图里所有空着的同类型输入上,不用拉线。" +
+ "开启时画布上会用紫色曲线画出「将自动接上的线」,方便核对(曲线只是预览,不是真实连线、不会被保存)。" +
+ "关闭则照旧手动连线。";
+ w.label = WIDGET_NAME;
+
+ /* ★ 2026-10-24:开关从「widget 列表末尾的一整行」搬到「顶部胶囊下面」。
+ * 做法:原生 widget 只当**状态容器**(值 / properties / 序列化全部原样不动),
+ * 用 hidden 让它不参与布局与绘制,再自己画一个小开关上去。
+ * 为什么 hidden 是安全的:widgets_values 是按「参与序列化的 widget」顺序存的,
+ * 这个 toggle 本来就是 serialize:false(不进 widgets_values),
+ * 藏起来既不增也不减参与序列化的项 ⇒ 旧工作流的位置表一项都不动。
+ * 顺带的好处:节点底部少了一整行,不再挤在「移除 LoRA」下面。 */
+ w.hidden = true;
+ node._tpBcW = w;
+ attachBroadcastRow(node);
+}
+
+/* ------------------------------------------------------------------ *
+ * 一之二、顶部自绘小开关(在 UNet / Checkpoint 胶囊的下一行、左半边)
+ *
+ * 为什么不用 widget 承载:widget 的 y 由前端布局算死(插槽区之下、按列表顺序往下排),
+ * 想放到「第一行插槽左侧的下方」这种位置,只能自己画。
+ * 这里复用的是「加载模式」开关同一套打法(见 multi_ref_encode.js 的 attachModeRowToggle):
+ * · 位置:第 1 行插槽的正下方(= 第 2 行插槽那一行的左半边,右侧 CLIP 标签不受影响)
+ * · 宽度:胶囊的一半(用户要求「一半位置就行」)
+ * · 绘制:node.onDrawForeground;命中:node.onMouseDown(返回真值吃掉事件,避免变成拖动节点)
+ * ⚠️ 这两个钩子是**实例属性**,必须存旧引用链式调用 —— 直接赋值会吞掉
+ * multi_ref_encode.js 挂的「加载模式」开关(两边都挂同一对钩子)。
+ * ------------------------------------------------------------------ */
+
+/** 与 multi_ref_encode.js 的 tpWidgetMargin() 同源:BaseWidget.margin 默认 15 */
+function bcMargin() {
+ const m = globalThis.BaseWidget?.margin;
+ return (typeof m === "number" && m >= 0 && m <= 40) ? m : 15;
+}
+
+function bcRoundRect(ctx, x, y, w, h, r) {
+ const rr = Math.max(0, Math.min(r, h / 2, w / 2));
+ ctx.beginPath();
+ ctx.moveTo(x + rr, y);
+ ctx.lineTo(x + w - rr, y);
+ ctx.quadraticCurveTo(x + w, y, x + w, y + rr);
+ ctx.lineTo(x + w, y + h - rr);
+ ctx.quadraticCurveTo(x + w, y + h, x + w - rr, y + h);
+ ctx.lineTo(x + rr, y + h);
+ ctx.quadraticCurveTo(x, y + h, x, y + h - rr);
+ ctx.lineTo(x, y + rr);
+ ctx.quadraticCurveTo(x, y, x + rr, y);
+ ctx.closePath();
+}
+
+/** 开关在节点本地坐标里的位置与尺寸(x/w 是我们自己这一块的范围,不含右侧留白) */
+function bcRowGeom(node) {
+ const SH = Number(globalThis.LiteGraph?.NODE_SLOT_HEIGHT) || ROW_SLOT_H;
+ const nw = numAt(node?.size, 0) || 0;
+ const left = bcMargin();
+ /* 先按「加载模式胶囊」的宽度算(保证和上面的胶囊左右端点对得上) */
+ let capW = nw > 0 ? nw - left - ROW_GAP_RIGHT : ROW_CAP_MAX;
+ capW = Math.min(ROW_CAP_MAX, Math.max(0, capW));
+ if (capW < ROW_CAP_MIN) capW = nw > 0 ? Math.min(ROW_CAP_MIN, Math.max(0, nw - left)) : ROW_CAP_MIN;
+ /* 用户要求:占胶囊的一半(红框圈的就是胶囊前一半的宽度) */
+ const w = Math.max(BC_MIN_W, Math.round(capW / 2));
+
+ /* 第一行插槽的纵向位置(与加载模式胶囊同一套反推),再往下挪一行 = 胶囊正下方 */
+ let top = Math.round(SH * 0.2);
+ try {
+ const cy = numAt(node?.getOutputPos?.(0), 1);
+ const py = numAt(node?.pos, 1);
+ if (cy !== null && py !== null) top = Math.max(0, Math.round(cy - py - SH / 2));
+ } catch (e) { /* 用兜底值 */ }
+ return { x: left, y: top + SH, w, h: SH };
+}
+
+/** 自绘:一个完整的小胶囊控件 —— 淡底色托底,左边 label、右边开关轨道。
+ * 为什么要有底色:节点里其它控件(下拉框、UNet/Checkpoint 胶囊)都有底色,
+ * 只画「裸文字 + 轨道」会显得浮在空白上,跟整体设计语言脱节。
+ * ★ 关键是「托底要淡、轨道要细」:
+ * 第一版给外框加了 1px 亮描边,结果和下边框围成**两层框**(外框 + 内轨道),
+ * 比上面那条单层胶囊笨重得多。现在外框只有一层很淡的填充、默认无描边,
+ * 视觉上退成「一块底色」而不是「一个框」,轨道才是主角。
+ * 配色对齐节点现有控件:下拉框底色 / 高亮蓝 #3a96f3。 */
+function drawBroadcastRow(ctx, node, on, hover) {
+ const g = bcRowGeom(node);
+ const cy = g.y + g.h / 2;
+ /* 高度与上面的 UNet/Checkpoint 胶囊完全一致:行高 - BC_PAD_Y*2 = 14
+ * (胶囊那边是 TG_PAD_Y=3、净高 14 —— 两个常量必须同步改,否则一高一矮) */
+ const bh = g.h - BC_PAD_Y * 2;
+ const r = bh / 2;
+ const bx = g.x, bw = g.w;
+
+ try {
+ ctx.save();
+
+ /* ---- 托底:一层淡填充,只在开启/悬停时略提亮 ---- */
+ bcRoundRect(ctx, bx, g.y + BC_PAD_Y, bw, bh, r);
+ if (on) ctx.fillStyle = hover ? "rgba(58,150,243,0.24)" : "rgba(58,150,243,0.13)";
+ else ctx.fillStyle = hover ? "rgba(255,255,255,0.105)" : "rgba(255,255,255,0.06)";
+ ctx.fill();
+ /* 悬停加一道极淡描边:明确「这里能点」,又不会变成第二个框 */
+ if (hover) {
+ ctx.lineWidth = 1;
+ ctx.strokeStyle = on ? "rgba(58,150,243,0.45)" : "rgba(255,255,255,0.12)";
+ ctx.stroke();
+ }
+
+ /* ---- 内容整体居中:先量文字宽,再把「文字 + 间隙 + 轨道」作为一条内容居中摆放 ----
+ * 之前是「文字贴左 8px、轨道贴右 7px」,两边留白各算各的 ⇒ 一宽一窄,看着偏向一边。
+ * 现在统一算 padX,左右留白严格相等。 */
+ const label = "广播";
+ ctx.textAlign = "left";
+ ctx.font = "600 10px sans-serif"; // 用户要求:11px → 10px(小 10%)
+ let tw = 20; // 10px「广播」约 20px,量不到时兜底
+ try {
+ const lm = ctx.measureText(label);
+ if (lm && typeof lm.width === "number" && isFinite(lm.width) && lm.width > 0) tw = lm.width;
+ } catch (e) { /* 用兜底 */ }
+
+ const trackW = 24, GAP = 8;
+ const contentW = tw + GAP + trackW;
+ const padX = Math.max(5, (bw - contentW) / 2); // 左右留白相等 ⇒ 整条内容居中
+ const lx = bx + padX;
+ const tx = lx + tw + GAP;
+
+ /* ---- label:按视觉盒垂直居中 ----
+ * 不用 textBaseline="middle":Canvas 的 middle 按 (ascent+descent)/2 排,
+ * 对没有降部的中文会整体偏上。改成量出真实上沿、基线放到 cy + 上沿/2,
+ * 这样字形上下留白相等 —— 实测这样仍会低约半个像素,再补 0.5 的视觉修正。 */
+ ctx.fillStyle = on ? "rgba(230,238,250,1)" : "rgba(174,182,196,1)";
+ let asc = 7.3; // 10px 中文的兜底上沿(量不到时用)
+ try {
+ const lm = ctx.measureText(label);
+ const a = lm && lm.actualBoundingBoxAscent;
+ if (typeof a === "number" && isFinite(a) && a > 0) asc = a;
+ } catch (e) { /* 用兜底 */ }
+ ctx.textBaseline = "alphabetic";
+ ctx.fillText(label, lx, cy + asc / 2 - 0.5);
+
+ /* ---- 右侧开关:细轨道 + 小滑块(位置 tx 已在上面按居中算好) ---- */
+ const th = 10;
+ const ty = cy - th / 2;
+ bcRoundRect(ctx, tx, ty, trackW, th, th / 2);
+ if (on) {
+ const grad = ctx.createLinearGradient(tx, ty, tx, ty + th);
+ grad.addColorStop(0, "#4aa5ff");
+ grad.addColorStop(1, "#2f86e8");
+ ctx.fillStyle = grad;
+ } else {
+ ctx.fillStyle = "rgba(255,255,255,0.13)";
+ }
+ ctx.fill();
+ /* 关闭态补一道内沿,让轨道看起来是「凹槽」而不是一块平色 */
+ if (!on) {
+ ctx.lineWidth = 1;
+ ctx.strokeStyle = "rgba(0,0,0,0.18)";
+ ctx.stroke();
+ }
+
+ /* ---- 滑块:一点点投影,让它「浮」在轨道上 ---- */
+ const kr = 4;
+ const kx = on ? tx + trackW - 1 - kr : tx + 1 + kr;
+ ctx.save();
+ ctx.shadowColor = "rgba(0,0,0,0.30)";
+ ctx.shadowBlur = 2;
+ ctx.shadowOffsetY = 0.5;
+ ctx.beginPath();
+ ctx.arc(kx, cy, kr, 0, Math.PI * 2);
+ ctx.fillStyle = "#ffffff";
+ ctx.fill();
+ ctx.restore();
+ } finally {
+ /* ★ 必须 try/finally:漏 restore 会让整个画布的变换永久跑偏(踩过) */
+ try { ctx.restore(); } catch (e) { /* ignore */ }
+ }
+}
+
+function isBroadcastOnNode(node) {
+ const w = node?._tpBcW || (node?.widgets || []).find((x) => x && x.name === WIDGET_NAME);
+ if (w && typeof w.value === "boolean") return w.value;
+ return !!(node?.properties && node.properties[PROP]);
+}
+
+/** 切开关:真源写 properties,再同步给(隐藏的)原生 widget,前端才知道图被改了 */
+function setBroadcast(node, on) {
+ const v = !!on;
+ try {
+ node.properties = node.properties || {};
+ node.properties[PROP] = v;
+ } catch (e) { /* ignore */ }
+ const w = node._tpBcW || (node.widgets || []).find((x) => x && x.name === WIDGET_NAME);
+ if (w) {
+ try {
+ if (typeof w.setValue === "function") w.setValue(v);
+ else w.value = v;
+ } catch (e) {
+ w.value = v;
+ }
+ }
+ node.setDirtyCanvas?.(true, true);
+ app.graph?.setDirtyCanvas?.(true, true);
+ app.graph?.change?.();
+}
+
+/** 把自绘开关挂到节点上(幂等) */
+function attachBroadcastRow(node) {
+ if (node._tpBcRow) return;
+ /* 「现代节点设计」(Vue 节点)不走 canvas 绘制钩子 → 保持原生 widget 可见的回落 */
+ if (globalThis.LiteGraph?.vueNodesMode) {
+ const w = node._tpBcW;
+ if (w) w.hidden = false;
+ return;
+ }
+ node._tpBcRow = true;
+
+ const prevDraw = typeof node.onDrawForeground === "function" ? node.onDrawForeground : null;
+ const prevDown = typeof node.onMouseDown === "function" ? node.onMouseDown : null;
+ const prevMove = typeof node.onMouseMove === "function" ? node.onMouseMove : null;
+
+ node.onDrawForeground = function (ctx, ...rest) {
+ if (prevDraw) {
+ try { prevDraw.call(this, ctx, ...rest); } catch (e) { /* 旧钩子出错不影响开关 */ }
+ }
+ if (!this._tpBcW || this.flags?.collapsed) return;
+ try {
+ drawBroadcastRow(ctx, this, isBroadcastOnNode(this), !!this._tpBcHover);
+ } catch (e) {
+ /* 自绘失败就留空,绝不能抛出去(会中断整块画布绘制) */
+ }
+ };
+
+ /* 悬停高亮:只在「进入/离开」时刷新一次画布,不做逐像素重绘 */
+ node.onMouseMove = function (e, pos, canvas) {
+ if (this._tpBcW && !this.flags?.collapsed) {
+ const x = numAt(pos, 0), y = numAt(pos, 1);
+ let hv = false;
+ if (x !== null && y !== null) {
+ const g = bcRowGeom(this);
+ hv = x >= g.x && x <= g.x + g.w && y >= g.y && y <= g.y + g.h;
+ }
+ if (this._tpBcHover !== hv) {
+ this._tpBcHover = hv;
+ this.setDirtyCanvas?.(true, true);
+ }
+ }
+ return prevMove ? prevMove.call(this, e, pos, canvas) : false;
+ };
+
+ /* ⚠️ 光有 onMouseMove 不够:鼠标一移出节点,前端就不再给它派发 move,
+ * 高亮会**永久卡在亮着**的状态(实测:移开画布后 _tpBcHover 仍是 true)。
+ * 所以补一个离开钩子复位。 */
+ const prevLeave = typeof node.onMouseLeave === "function" ? node.onMouseLeave : null;
+ node.onMouseLeave = function (...args) {
+ if (this._tpBcHover) {
+ this._tpBcHover = false;
+ this.setDirtyCanvas?.(true, true);
+ }
+ return prevLeave ? prevLeave.apply(this, args) : undefined;
+ };
+
+ node.onMouseDown = function (e, pos, canvas) {
+ if (this._tpBcW && !this.flags?.collapsed) {
+ const x = numAt(pos, 0), y = numAt(pos, 1);
+ if (x !== null && y !== null) {
+ const g = bcRowGeom(this);
+ if (x >= g.x && x <= g.x + g.w && y >= g.y && y <= g.y + g.h) {
+ setBroadcast(this, !isBroadcastOnNode(this));
+ return true; // 吃掉点击,避免变成拖动节点
+ }
+ }
+ }
+ return prevDown ? (prevDown.call(this, e, pos, canvas) || false) : false;
+ };
+}
+
+/* 注:原 growToFit()(给追加的那行 widget 补节点高度)已随「开关搬到顶部」一起删除 ——
+ * 开关不再占用 widget 布局,节点高度不需要额外补。 */
+
+function syncBroadcastWidget(node) {
+ const w = (node.widgets || []).find((x) => x && x.name === WIDGET_NAME);
+ if (!w) return;
+ const v = !!(node.properties && node.properties[PROP]);
+ if (!!w.value !== v) w.value = v;
+ /* 保险:极端情况下(前端没走 onNodeCreated 就直接 configure)自绘钩子可能还没挂 */
+ if (w.hidden) {
+ node._tpBcW = w;
+ attachBroadcastRow(node);
+ }
+}
+
+/* ------------------------------------------------------------------ *
+ * 二、提交时临时连线(最小广播实现)
+ * ------------------------------------------------------------------ */
+
+/** 输入类型与输出类型是否匹配(兼容 "MODEL" / "A,B" / "*" 这几种写法) */
+function typeMatch(inputType, outputType) {
+ const a = String(inputType ?? "");
+ const b = String(outputType ?? "");
+ if (!a || !b) return false;
+ if (a === b) return true;
+ if (a === "*" || b === "*") return true;
+ return a.split(",").some((s) => s.trim() === b);
+}
+
+/**
+ * 计算「广播计划」:哪些空着的输入会被接到哪个输出。
+ *
+ * ⚠️ 真接线(inflate)和画布上的曲线预览(computeShapes)**必须共用这一份**,
+ * 否则会出现「画的线」和「真接的线」不一致 —— 那种 bug 用户根本没法自查。
+ */
+function planBroadcast(graph) {
+ const pairs = [];
+ const ambiguous = new Set();
+ if (!graph || !Array.isArray(graph._nodes)) return { pairs, ambiguous };
+
+ /* 每个类型只认一个广播源:多个加载器都开广播时取第一个,并提示一次 */
+ const srcByType = new Map();
+ for (const n of graph._nodes) {
+ if (!n || n.type !== NODE_NAME || !isBroadcastOn(n)) continue;
+ const outs = n.outputs || [];
+ for (let i = 0; i < outs.length; i++) {
+ const t = outs[i] && outs[i].type;
+ if (!t || t === "*") continue;
+ if (srcByType.has(t)) {
+ ambiguous.add(t);
+ continue;
+ }
+ srcByType.set(t, { node: n, slot: i });
+ }
+ }
+ if (!srcByType.size) return { pairs, ambiguous };
+
+ for (const [t, src] of srcByType) {
+ for (const target of graph._nodes) {
+ /* 加载器自己不算,避免自己接自己 */
+ if (!target || target === src.node || target.type === NODE_NAME) continue;
+ const inputs = target.inputs || [];
+ for (let idx = 0; idx < inputs.length; idx++) {
+ const inp = inputs[idx];
+ /* 已经接了线的一律不动 —— 广播只补空位,绝不覆盖用户手连的线 */
+ if (!inp || inp.link != null) continue;
+ if (!typeMatch(inp.type, t)) continue;
+ pairs.push({ srcNode: src.node, srcSlot: src.slot, srcType: t, dstNode: target, dstSlot: idx });
+ }
+ }
+ }
+ return { pairs, ambiguous };
+}
+
+/**
+ * 把「开着广播」的加载器的三个输出,临时接到所有空着的同类型输入上。
+ * 返回一个还原函数;调用它会把临时连线全部拆掉。
+ */
+function inflate(appRef) {
+ const graph = appRef.rootGraph || appRef.graph;
+ const { pairs, ambiguous } = planBroadcast(graph);
+ if (ambiguous.size) {
+ console.warn(
+ "[Toggle-Pass] 有多个加载器开着「全局广播」,同类型输出只取第一个:",
+ Array.from(ambiguous).join(", "),
+ );
+ }
+ const undo = [];
+
+ for (const p of pairs) {
+ try {
+ p.srcNode.connect(p.srcSlot, p.dstNode, p.dstSlot);
+ } catch (e) {
+ continue;
+ }
+ /* connect 失败时不会抛,只表现为 link 仍为空 */
+ if (p.dstNode.inputs?.[p.dstSlot] && p.dstNode.inputs[p.dstSlot].link != null) {
+ const { dstNode, dstSlot } = p;
+ undo.push(() => {
+ try {
+ dstNode.disconnectInput(dstSlot);
+ } catch (e) {
+ /* 目标节点已被删掉之类,忽略 */
+ }
+ });
+ }
+ }
+
+ return () => {
+ for (let i = undo.length - 1; i >= 0; i--) undo[i]();
+ try {
+ appRef.graph?.setDirtyCanvas?.(true, true);
+ } catch (e) {
+ /* 无画布环境(导出脚本)忽略 */
+ }
+ };
+}
+
+/* ------------------------------------------------------------------ *
+ * 三、画布上的预览曲线(只画,不建真实 link)
+ * ------------------------------------------------------------------ */
+
+/* 观感对齐 cg-use-everywhere:紫罗兰实线 + 一层柔光,比青色虚线耐看,
+ * 也不会被误当成「报错警告线」。 */
+const PREVIEW_COLOR = "#a78bfa";
+const PREVIEW_GLOW = "#7c5cff";
+
+/**
+ * ⚠️⚠️ `boundingRect` 只在**画过**这个槽位之后才有效。
+ * 节点在可视区外 / 从未渲染时,槽位的 `boundingRect` 是 `[0,0,0,0]`,
+ * 而 `rectCenter` 对零尺寸会老老实实返回 `[0,0]` —— 于是端点被算成**图坐标原点**,
+ * 线就画到画布左上角那片空白里,看着像一根「悬空紫线」。
+ * 2026-11-06 用户截图里那根从节点往左伸出去就断掉的线就是这个:
+ * 目标是画面外的 `VAE解码`(pos.x=1352,槽位 boundingRect 全 0)。
+ * ⇒ 零尺寸一律视为「未布局」,退回 `getConnectionPos` 估算。
+ */
+function rectCenter(r) {
+ if (!r) return null;
+ if (Array.isArray(r) || typeof r[0] === "number") {
+ const x = numAt(r, 0);
+ const y = numAt(r, 1);
+ const w = numAt(r, 2);
+ const h = numAt(r, 3);
+ if (x == null || y == null) return null;
+ if (!(w > 0) || !(h > 0)) return null; /* 未布局 */
+ return [x + w / 2, y + h / 2];
+ }
+ const x = typeof r.x === "number" ? r.x : r.left;
+ const y = typeof r.y === "number" ? r.y : r.top;
+ if (typeof x !== "number" || typeof y !== "number") return null;
+ const w = r.width ?? r.w ?? 0;
+ const h = r.height ?? r.h ?? 0;
+ if (!(w > 0) || !(h > 0)) return null; /* 未布局 */
+ return [x + w / 2, y + h / 2];
+}
+
+/**
+ * 槽位中心(图坐标)。
+ *
+ * ⚠️ 优先 `boundingRect`,不要只信 `getConnectionPos`:
+ * 本机前端里槽位的 `pos` 字段**经常是 null**(只有走 widget 布局的那几个才被填),
+ * 而 `pos` 为 null 时 getConnectionPos 会退化成「按输入顺序估算」的公式
+ * (`node.pos + (index+0.7)*NODE_SLOT_HEIGHT`) —— 一旦节点里有 widget 夹在输入之间,
+ * 估出来的位置就和实际渲染对不上,线看起来就是「错位」。
+ * `boundingRect` 是渲染时算出来的真实盒子,节点一移动它就跟着更新。
+ */
+function slotPoint(node, isInput, idx) {
+ const list = isInput ? node?.inputs : node?.outputs;
+ const s = list && list[idx];
+ if (!s) return null;
+ const c = rectCenter(s.boundingRect);
+ if (c) return c;
+ try {
+ const p = node.getConnectionPos(isInput, idx);
+ if (p && isFinite(p[0]) && isFinite(p[1])) return [p[0], p[1]];
+ } catch (e) {
+ /* 节点被删/布局未完成 */
+ }
+ return null;
+}
+
+/**
+ * 把「运行时会自动接上的线」算成屏幕坐标下的贝塞尔。
+ * 不创建任何 link ⇒ 不进工作流、不影响保存,纯视觉提示。
+ *
+ * 坐标链路:槽位(图坐标)→ `ds.convertOffsetToCanvas` → 屏幕坐标,
+ * 然后 setTransform 到 dpr,直接按屏幕坐标画。
+ * ⚠️ 不要自己手搓 `(p + offset) * scale`:那是在赌前端内部变换的实现细节。
+ */
+function computeShapes(canvas) {
+ /* ⚠️ 必须和 inflate() 用**同一张图**(rootGraph 优先):
+ * 广播接哪张图,就画哪张图。两边取不同引用(canvas.graph / app.graph)
+ * 在切换工作流或进子图的瞬间会不一致,线就会指向图里已不存在的位置。 */
+ const g = (app && (app.rootGraph || app.graph)) || (canvas && canvas.graph);
+ const ds = canvas && canvas.ds;
+ if (!g || !ds) return null;
+
+ const { pairs } = planBroadcast(g);
+ if (!pairs.length) return null;
+
+ const scale = ds.scale || 1;
+ let dpr = canvas.dpr;
+ if (!dpr) {
+ const r = canvas.canvas?.getBoundingClientRect?.();
+ dpr = r && r.width > 0 ? canvas.canvas.width / r.width : 1;
+ }
+ const off = ds.offset || [0, 0];
+ const toScreen = (p) => {
+ try {
+ const r = ds.convertOffsetToCanvas?.([p[0], p[1]]);
+ if (r && isFinite(r[0]) && isFinite(r[1])) return [r[0], r[1]];
+ } catch (e) {
+ /* 兜底走下面的手算 */
+ }
+ return [(p[0] + (off[0] || 0)) * scale, (p[1] + (off[1] || 0)) * scale];
+ };
+
+ const items = [];
+ for (const p of pairs) {
+ const aG = slotPoint(p.srcNode, false, p.srcSlot);
+ const bG = slotPoint(p.dstNode, true, p.dstSlot);
+ if (!aG || !bG) continue;
+ const a = toScreen(aG);
+ const b = toScreen(bG);
+ if (!isFinite(a[0]) || !isFinite(b[0])) continue;
+ /* 控制点跟官方 Spline 连线同一套:取两点距离的 3 成(不小于 40 图单位),
+ * 起点往右甩、终点从左边进 —— 收口方向和真实连线一致,
+ * 一眼就能看出线是从哪个口出来的。 */
+ const dist = Math.hypot(bG[0] - aG[0], bG[1] - aG[1]);
+ const d = Math.max(40, dist * 0.3) * scale;
+ items.push({
+ aG,
+ bG,
+ a,
+ b,
+ c1: [a[0] + d, a[1]],
+ c2: [b[0] - d, b[1]],
+ /* 原始引用留着:点亮槽位时要拿槽位的 type(决定颜色)和归属节点(判遮挡) */
+ srcNode: p.srcNode,
+ srcSlot: p.srcSlot,
+ dstNode: p.dstNode,
+ dstSlot: p.dstSlot,
+ });
+ }
+ if (!items.length) return null;
+ return { items, scale, dpr };
+}
+
+/**
+ * 取「背景层」的 ctx。
+ *
+ * ⚠️⚠️ 这里是最容易白忙一场的地方:新版前端把背景画在**离屏** canvas 上
+ * (`this.bgcanvas`),画完之后才 `ctx.drawImage(bgcanvas, ...)` 贴到主画布,
+ * 再在主画布上画节点。所以往主 ctx 上画背景层的内容 —— 会立刻被那张贴图盖掉,
+ * 代码跑了、坐标也对,就是看不见(实测一个紫色像素都没有)。
+ * 必须画进 bgcanvas 自己的 ctx,贴图时才会把它一起带上来,节点再盖在上面。
+ * 老架构没有 bgcanvas(背景直接画在主 ctx 上),此时退回主 ctx。
+ */
+function bgCtx(canvas) {
+ const bg = canvas && canvas.bgcanvas;
+ if (bg && typeof bg.getContext === "function") {
+ if (!canvas.__tpBgCtx || canvas.__tpBgCtx.canvas !== bg) canvas.__tpBgCtx = bg.getContext("2d");
+ return canvas.__tpBgCtx;
+ }
+ return canvas && canvas.ctx;
+}
+
+/**
+ * 线本体 —— 画在**节点下层**(背景层 ctx,交付 `drawBackCanvas` 之后)。
+ * 所以线穿过节点时会被节点自然遮住,跟真实连线一个观感:
+ * 该露的缝隙里露出来,节点上干干净净,不挡标题也不挡参数。
+ */
+function drawBroadcastLines(ctx, canvas) {
+ const plan = computeShapes(canvas);
+ if (!plan || !ctx) return;
+ const { items, scale, dpr } = plan;
+
+ ctx.save();
+ /* ⚠️ save / restore 必须用 try/finally 包住:
+ * 中间任何一次 `it.a` 取值、bezier 计算出问题抛异常,若跳过 restore,
+ * 这个 ctx 就会**永久**留在 `dpr + translate + scale` 变换下 ——
+ * 之后所有绘制(包括官方的选择框、节点)都会整体偏移、放大,
+ * 而且看起来跟本插件毫无关系,极难排查。宁可少画一帧,也不能漏 restore。 */
+ try {
+ ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
+ ctx.lineCap = "round";
+ ctx.lineJoin = "round";
+
+ for (const it of items) {
+ const trace = () => {
+ ctx.beginPath();
+ ctx.moveTo(it.a[0], it.a[1]);
+ ctx.bezierCurveTo(it.c1[0], it.c1[1], it.c2[0], it.c2[1], it.b[0], it.b[1]);
+ };
+
+ /* 一层柔光底:深色画布上紫线才不会是「一根生硬的细线」 */
+ ctx.globalAlpha = 0.16;
+ ctx.strokeStyle = PREVIEW_GLOW;
+ ctx.lineWidth = Math.max(5, 7 * scale);
+ trace();
+ ctx.stroke();
+
+ /* 主线 */
+ ctx.globalAlpha = 0.95;
+ ctx.strokeStyle = PREVIEW_COLOR;
+ ctx.lineWidth = Math.max(1.8, 2.2 * scale);
+ trace();
+ ctx.stroke();
+ }
+ } finally {
+ ctx.restore();
+ }
+
+ if (typeof window !== "undefined") {
+ window.__tpLastDraw = items.map((it) => ({
+ a: [Math.round(it.aG[0]), Math.round(it.aG[1])],
+ b: [Math.round(it.bG[0]), Math.round(it.bG[1])],
+ aS: [Math.round(it.a[0]), Math.round(it.a[1])],
+ bS: [Math.round(it.b[0]), Math.round(it.b[1])],
+ bend: 0,
+ }));
+ }
+}
+
+/**
+ * 端点小圆点 —— 默认和线**同一层**(背景层,被节点盖住)。
+ *
+ * ⚠️ 为什么改了(2026-11-06 用户实测):
+ * 早先画在 `draw()` 末尾 = 全画布最上层,理由是「槽位压在节点边线上,
+ * 放下层会被盖掉、线头看着像断的」。但这个优先级会让圆点在**任何**节点
+ * 移到线上方时照样穿出来 —— 用户拿节点当遮罩盖内容时,一串紫点浮在
+ * 节点上面,看着像脏点。
+ * 现在和线同层:节点盖住线的同时把点一起盖住,观感统一(线从节点边缘
+ * 伸出来,正好是官方连线的样子)。
+ * 想回到旧行为:`localStorage.tp_dots_layer = "front"` 再刷新。
+ */
+function drawBroadcastDots(ctx, canvas) {
+ const plan = computeShapes(canvas);
+ if (!plan || !ctx) return;
+ const { items, scale, dpr } = plan;
+
+ ctx.save();
+ /* 同 drawBroadcastLines:restore 必须兜底,否则整个画布的变换会被带偏 */
+ try {
+ ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
+ ctx.globalAlpha = 0.95;
+ ctx.fillStyle = PREVIEW_COLOR;
+ const r = Math.max(2.2, 2.6 * scale);
+ for (const it of items) {
+ for (const pt of [it.a, it.b]) {
+ ctx.beginPath();
+ ctx.arc(pt[0], pt[1], r, 0, Math.PI * 2);
+ ctx.fill();
+ }
+ }
+ } finally {
+ ctx.restore();
+ }
+}
+
+/**
+ * 取某个类型(MODEL / CLIP / VAE…)的官方配色。
+ * 前端把颜色放在 `LGraphCanvas.link_type_colors`,没命中再看
+ * `canvas.default_connection_color_byType`,都没有就退回中灰。
+ */
+function slotTypeColor(canvas, type) {
+ const t = String(type || "").toUpperCase();
+ const tbl = (typeof window !== "undefined" && window.LGraphCanvas && window.LGraphCanvas.link_type_colors) || {};
+ let c = tbl[t];
+ if (!c && canvas && canvas.default_connection_color_byType) c = canvas.default_connection_color_byType[t];
+ return c || "#9A9";
+}
+
+/**
+ * 这个槽位会不会被**后绘制**的节点盖住?
+ * 画布按 `graph._nodes` 顺序绘制,下标大的在上面。只要有点落在
+ * 某个「更晚绘制」的节点矩形里,就说明它被挡住了 —— 此时不该点亮,
+ * 否则又是一颗浮在别的节点上的假点。
+ */
+function slotHiddenByOtherNode(pt, owner, nodes) {
+ if (!pt || !owner || !nodes) return false;
+ const i = nodes.indexOf(owner);
+ if (i < 0) return false;
+ for (let k = i + 1; k < nodes.length; k++) {
+ const n = nodes[k];
+ if (!n || n === owner || !n.pos || !n.size) continue;
+ const x0 = n.pos[0];
+ const y0 = n.pos[1] - 30;
+ if (pt[0] >= x0 && pt[0] <= x0 + n.size[0] && pt[1] >= y0 && pt[1] <= y0 + n.size[1] + 30) return true;
+ }
+ return false;
+}
+
+/**
+ * 把会被广播接上的槽位**点亮**(补一个和「已连接」一样的实心点)。
+ *
+ * ⚠️ 为什么必须先看 `slot.link`:
+ * 官方槽位是「有 link 填实心、没 link 只描边」。广播只是**预览**,提交前不会
+ * 真的建连线,所以 `slot.link` 一直是 null ⇒ 槽位永远显示成空心,线却已经
+ * 画过去了,看着就是「接上了但没点亮」。
+ * 这里只在「空着、且没被别的节点盖住、位置确定(boundingRect 有效)」时补实心点,
+ * 颜色取该槽位类型的官方配色,所以和手动连线的观感一致。
+ *
+ * 画在**节点之后**(`draw()` 末尾):槽位点在节点边框上,属于节点自身的一部分,
+ * 画在下层会被节点吃掉。
+ */
+function drawBroadcastSlotLit(ctx, canvas) {
+ const plan = computeShapes(canvas);
+ if (!plan || !ctx) return;
+ const g = (app && (app.rootGraph || app.graph)) || (canvas && canvas.graph);
+ const nodes = (g && g._nodes) || [];
+ const { items, scale, dpr } = plan;
+
+ ctx.save();
+ try {
+ ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
+ const r = Math.max(2, 3 * scale);
+ for (const it of items) {
+ const ends = [
+ { node: it.srcNode, idx: it.srcSlot, isInput: false, pt: it.a, ptG: it.aG },
+ { node: it.dstNode, idx: it.dstSlot, isInput: true, pt: it.b, ptG: it.bG },
+ ];
+ for (const q of ends) {
+ const list = q.isInput ? q.node && q.node.inputs : q.node && q.node.outputs;
+ const slot = list && list[q.idx];
+ if (!slot) continue;
+ if (slot.link != null) continue; /* 真连过了,官方自己就画实心 */
+ if (q.node.flags && q.node.flags.collapsed) continue;
+ const br = slot.boundingRect;
+ if (!br || !(numAt(br, 2) > 0)) continue; /* 位置不确定就别瞎点 */
+ if (slotHiddenByOtherNode(q.ptG, q.node, nodes)) continue;
+ ctx.beginPath();
+ ctx.fillStyle = slotTypeColor(canvas, slot.type);
+ ctx.arc(q.pt[0], q.pt[1], r, 0, Math.PI * 2);
+ ctx.fill();
+ }
+ }
+ } finally {
+ ctx.restore();
+ }
+}
+
+/**
+ * 端点圆点放哪一层:
+ * "back"(默认)→ 跟线一起画进 bgcanvas,节点能盖住
+ * "front" → 旧的 draw() 末尾,全画布最上层(能穿出节点)
+ * 用 localStorage 而不是 `app.extensionManager.setting`:后者会 POST 到
+ * 服务端 `comfy.settings.json`,污染用户真实环境。
+ */
+function dotsOnFront() {
+ try {
+ return window.localStorage && window.localStorage.getItem("tp_dots_layer") === "front";
+ } catch (e) {
+ return false;
+ }
+}
+
+/**
+ * 诊断工具:把当前每一根广播线的两端、归属节点、槽位实算位置全部列表打印。
+ * 只读,不改任何行为。控制台执行 `__tpAudit()` 即可。
+ *
+ * 用途:线画到空白处(端点悬空、没有归属节点)时,一眼看出是哪条 pair 算错、
+ * 目标槽位的 `boundingRect` 到底是什么。
+ */
+function installAudit() {
+ if (typeof window === "undefined" || window.__tpAudit) return;
+ window.__tpAudit = function (opts) {
+ const cv = app.canvas;
+ const g = (app && (app.rootGraph || app.graph)) || (cv && cv.graph);
+ if (!g) return "没有图";
+ const near = (p, n) => {
+ if (!p || !n) return "noPoint";
+ const pad = 14;
+ const x0 = n.pos[0] - pad;
+ const y0 = n.pos[1] - 30 - pad;
+ const x1 = n.pos[0] + n.size[0] + pad;
+ const y1 = n.pos[1] + n.size[1] + pad;
+ return p[0] >= x0 && p[0] <= x1 && p[1] >= y0 && p[1] <= y1;
+ };
+ const rows = [];
+ const { pairs } = planBroadcast(g);
+ (pairs || []).forEach((p, i) => {
+ const aG = slotPoint(p.srcNode, false, p.srcSlot);
+ const bG = slotPoint(p.dstNode, true, p.dstSlot);
+ const slot = p.dstNode?.inputs?.[p.dstSlot];
+ rows.push({
+ "#": i,
+ 源: (p.srcNode?.title || p.srcNode?.type) + " [" + p.srcSlot + "]",
+ 目标: (p.dstNode?.title || p.dstNode?.type) + " [" + p.dstSlot + "] " + (slot?.name || ""),
+ 起点: aG ? aG.map(Math.round).join(",") : "-",
+ 起点在节点内: near(aG, p.srcNode),
+ 终点: bG ? bG.map(Math.round).join(",") : "-",
+ 终点在节点内: near(bG, p.dstNode),
+ 目标节点矩形: p.dstNode ? [p.dstNode.pos[0], p.dstNode.pos[1], p.dstNode.size[0], p.dstNode.size[1]].map(Math.round).join(",") : "-",
+ 终点槽boundingRect: slot && slot.boundingRect ? Array.from(slot.boundingRect).map(Math.round).join(",") : String(slot && slot.boundingRect),
+ });
+ });
+ console.table(rows);
+ const bad = rows.filter((r) => r.起点在节点内 !== true || r.终点在节点内 !== true);
+ if (bad.length) console.warn(`[Toggle-Pass] ${bad.length} 根线的端点不在自己节点范围内(悬空):`, bad);
+ if (!opts || opts.raw !== false) return rows;
+ };
+}
+
+/**
+ * 装配两处钩子:
+ * ① `drawBackCanvas` **之后** → 线 + 端点圆点(画进 bgcanvas,节点下层)
+ * ② `draw()` 开头 → 兜底重包 `drawBackCanvas`(前端偶尔会换掉它)
+ *
+ * ⚠️ 为什么不用 `onDrawForeground`(踩过的坑):
+ * ComfyUI 前端用 `watch(() => app.canvas, e => e.onDrawForeground = chain(...))`
+ * 维护画布钩子,那个 watch 会在我们之后重新赋值 —— 包装被整个替换掉,
+ * 实测 hookLen 变成了别人的 88 字符函数,绘制一次都没执行。
+ */
+function installPreviewPainter(appRef) {
+ const canvas = appRef.canvas;
+ if (!canvas || typeof canvas.draw !== "function") return;
+ if (canvas.__tpDrawPatched) return;
+ canvas.__tpDrawPatched = true;
+ installAudit();
+
+ /* ⚠️ 为什么挂在 `drawBackCanvas` **之后**(踩过的坑):
+ * 一开始插在 `drawFrontCanvas` **之前**,结果一个像素都看不到 ——
+ * drawFrontCanvas 内部会把前景层重绘一遍,我们画的东西被它盖掉了。
+ * 画在 drawBackCanvas 之后:背景和真实连线都画完了,节点还没画 ⇒
+ * 线正好落在「节点下层」,节点一盖就自然遮住,节点之间的空白处保留。
+ *
+ * ⚠️ 只用 `this.ctx` / `this`,**不看入参**:实测 drawBackCanvas 的实参
+ * 既不是 ctx 也不是 canvas(另一个入口报过 `ctx.save is not a function`),
+ * 照它取坐标系会一条线都算不出来。参数原样透传,绝不改写。 */
+ const wrapBack = (cv) => {
+ const inner = cv.drawBackCanvas;
+ if (typeof inner !== "function" || inner.__tpPainter) return;
+ const wrapped = function (...args) {
+ const r = inner.apply(this, args);
+ try {
+ const bg = bgCtx(this);
+ drawBroadcastLines(bg, this);
+ if (!dotsOnFront()) drawBroadcastDots(bg, this);
+ } catch (e) {
+ if (typeof window !== "undefined") window.__tpDrawErr = "line:" + String((e && e.message) || e);
+ }
+ return r;
+ };
+ wrapped.__tpPainter = true;
+ cv.drawBackCanvas = wrapped;
+ };
+
+ wrapBack(canvas);
+
+ const origDraw = canvas.draw;
+ canvas.draw = function (...args) {
+ /* 前端某些路径会重新赋值 drawBackCanvas(拖拽中断时见过),
+ * 每帧开头兜一次,发现被换掉就重包 —— 成本是一次属性读。 */
+ if (!this.drawBackCanvas || !this.drawBackCanvas.__tpPainter) wrapBack(this);
+ let r;
+ try {
+ r = origDraw.apply(this, args);
+ } finally {
+ try {
+ drawBroadcastSlotLit(this.ctx, this);
+ if (dotsOnFront()) drawBroadcastDots(this.ctx, this);
+ } catch (e) {
+ if (typeof window !== "undefined") window.__tpDrawErr = "dot:" + String((e && e.message) || e);
+ }
+ }
+ return r;
+ };
+}
+
+function patchGraphToPrompt(appRef) {
+ if (appRef.__tpBroadcastPatched) return;
+
+ /* ⚠️ 必须**两层都包**,只包 graphToPrompt 会漏:
+ * cg-use-everywhere 在它自己的 setup() 里就把**当时的** app.graphToPrompt 存成变量,
+ * 点「运行」时它走 queuePrompt → 用存下来的原函数(可能绕过我们这一层)→ 广播静默失效。
+ * 包住 queuePrompt 就能兜住这条路径:不管里面谁调谁,临时线在我们这一层就已经接好了。
+ * 用 depth 计数保证「只广播一次」:外层已经接过,内层直接透传、不要重复接、更不要提前拆。 */
+ let depth = 0;
+
+ function around(fn) {
+ if (depth > 0) return fn();
+ depth += 1;
+ const restore = inflate(appRef);
+ const done = () => {
+ depth -= 1;
+ restore();
+ };
+ let ret;
+ try {
+ ret = fn();
+ } catch (e) {
+ done();
+ throw e;
+ }
+ if (ret && typeof ret.then === "function") {
+ return ret.then(
+ (v) => {
+ done();
+ return v;
+ },
+ (e) => {
+ done();
+ throw e;
+ },
+ );
+ }
+ done();
+ return ret;
+ }
+
+ const origPrompt = appRef.graphToPrompt;
+ if (typeof origPrompt === "function") {
+ appRef.graphToPrompt = function (...args) {
+ return around(() => origPrompt.apply(this, args));
+ };
+ }
+
+ const origQueue = appRef.queuePrompt;
+ if (typeof origQueue === "function") {
+ appRef.queuePrompt = function (...args) {
+ return around(() => origQueue.apply(this, args));
+ };
+ }
+
+ appRef.__tpBroadcastPatched = true;
+ /* 给自检脚本用:直接在「广播生效」上下文里跑一段同步/异步逻辑 */
+ appRef.__tpBroadcastAround = (fn) => around(fn);
+ /* 给自检脚本用:列出当前会广播哪些线(只算不接) */
+ appRef.__tpBroadcastPlan = () =>
+ planBroadcast(appRef.graph).pairs.map(
+ (p) => `${p.dstNode.id}:${p.dstNode.inputs?.[p.dstSlot]?.name}<-${p.srcNode.id}:${p.srcSlot}`,
+ );
+}
+
+/* ------------------------------------------------------------------ *
+ * 三、注册
+ * ------------------------------------------------------------------ */
+
+app.registerExtension({
+ name: EXT_NAME,
+ async setup() {
+ patchGraphToPrompt(app);
+ installPreviewPainter(app);
+ },
+ beforeRegisterNodeDef(nodeType, nodeData) {
+ if (nodeData.name !== NODE_NAME) return;
+
+ const origCreated = nodeType.prototype.onNodeCreated;
+ nodeType.prototype.onNodeCreated = function () {
+ const r = origCreated ? origCreated.apply(this, arguments) : undefined;
+ const node = this;
+ /* 加载器自己的 onNodeCreated 末尾会 setSize([270,220]),
+ * 所以这里必须排在它之后加控件、再补高度 */
+ addBroadcastWidget(node);
+ /* 前端重建过画布实例的话,钩子会挂在新实例上缺失——这里顺手兜一次 */
+ try {
+ installPreviewPainter(app);
+ } catch (e) {
+ /* 装不上不影响功能 */
+ }
+ return r;
+ };
+
+ /* 读档时 properties 已经恢复,把开关同步成存档里的状态 */
+ const origConfigure = nodeType.prototype.onConfigure;
+ nodeType.prototype.onConfigure = function () {
+ const r = origConfigure ? origConfigure.apply(this, arguments) : undefined;
+ syncBroadcastWidget(this);
+ return r;
+ };
+ },
+});
diff --git a/js/canvas_menu.js b/js/canvas_menu.js
index 6bee2ed..d8c407c 100644
--- a/js/canvas_menu.js
+++ b/js/canvas_menu.js
@@ -103,7 +103,7 @@ app.registerExtension({
try {
const nodes = collectTogglePassNodes();
if (!nodes.length) return [];
- return [
+ const items = [
{
content: MENU_LABEL,
has_submenu: true,
@@ -115,6 +115,19 @@ app.registerExtension({
},
},
];
+ // 素材库是运行时可变的(本机目录里丢进新姿势就多出来),给一个手动重扫入口。
+ // 平时不用点:节点自己每 15 秒比对一次指纹,变了就重建下拉。
+ if (nodes.some((n) => n.type === "PoseReference")) {
+ items.push({
+ content: "🔄 刷新姿势素材库",
+ callback: () => {
+ if (typeof window.__tpRefreshPoses === "function") {
+ window.__tpRefreshPoses();
+ }
+ },
+ });
+ }
+ return items;
} catch (err) {
console.error("[Toggle-Pass] getCanvasMenuItems failed:", err);
return [];
diff --git a/js/multi_ref_encode.js b/js/multi_ref_encode.js
index d8c8dd5..f625d6c 100644
--- a/js/multi_ref_encode.js
+++ b/js/multi_ref_encode.js
@@ -89,7 +89,128 @@ function refreshNodeSize(node) {
});
}
+/* ---- 模型类型改名迁移 ----
+ * 2026-11-06:`SD / SDXL` 改名为 `SD / SDXL / Z-Image`(两者 latent 行为完全一样,
+ * Z-Image 就是「不接参考图的通用档」,合进一个名字里省得再开一项)。
+ * 旧工作流的 widgets_values 里存的是旧字面量,不在下拉选项里 → 前端会显示空白。
+ * 这里在加载时直接改值,用户看不到中间态。
+ * ⚠️ 后端 multi_ref_encode.py 有一份同样的表,两层都兜(第三方节点转存 / 手工改 JSON)。
+ */
+const MODEL_TYPE_MIGRATIONS = {
+ "SD / SDXL": "SD / SDXL / Z-Image",
+ "SD/SDXL": "SD / SDXL / Z-Image",
+ "SD / SDXL / z-image": "SD / SDXL / Z-Image",
+ "SD/SDXL/z-image": "SD / SDXL / Z-Image",
+ "SDXL": "SD / SDXL / Z-Image",
+ "SD 1.5": "SD / SDXL / Z-Image",
+ "Z-Image": "SD / SDXL / Z-Image",
+ "z-image": "SD / SDXL / Z-Image",
+ "ZImage": "SD / SDXL / Z-Image",
+};
+
+function migrateModelType(node) {
+ const w = (node.widgets || []).find(x => x.name === "模型类型");
+ if (!w || typeof w.value !== "string") return false;
+ const to = MODEL_TYPE_MIGRATIONS[w.value.trim()];
+ if (!to || to === w.value) return false;
+ console.log(`[Toggle-Pass] 模型类型 已迁移: "${w.value}" -> "${to}"`);
+ w.value = to;
+ return true;
+}
+
+/* ---- Ref Image Encode 输出顺序迁移 ----
+ * 2026-11-06:`negative` 从末尾挪到 `latent` 前面(纯排版,node 上好看)。
+ * 老布局 outputs = [conditioning, latent, negative]
+ * 新布局 outputs = [conditioning, negative, latent]
+ * ⚠️ 索引 1/2 的含义互换了,老工作流存在 JSON 里的 link.origin_slot 会指向错的输出口
+ * (负面被当 latent、latent 被当负面,类型对不上直接断线)。
+ * 这里按 outputs[i].name 判断布局(不依赖存盘标记,幂等):
+ * - 检测到老布局 ⇒ 交换 1/2 号口的整个 output 元素(name/type/links 一起走)
+ * - 每次都把 graph.links 的 origin_slot 对齐到当前 outputs 位置
+ */
+const OUT_ORDER_TAG = "negative_before_latent";
+
+// ① 只给槽位改名(幂等:新布局下不做任何事)。同步执行,抢在渲染连线之前。
+function renameOutputSlots(node) {
+ const outs = node?.outputs;
+ if (!outs || outs.length < 3) return false;
+ if (outs[1]?.name !== "latent" || outs[2]?.name !== "negative") return false;
+
+ // ⚠️ 不能交换 outputs 数组元素本身 —— ComfyUI 加载完会按 link.origin_slot
+ // 重新往 outputs[i].links 里填,换掉的数组元素会被"按位置"填回旧连线。
+ // 只换 name/type,位置不变,等价于「给槽位改名」。
+ const nm = outs[1].name, tp = outs[1].type;
+ outs[1].name = outs[2].name; outs[1].type = outs[2].type;
+ outs[2].name = nm; outs[2].type = tp;
+ node.properties = node.properties || {};
+ node.properties.tp_outorder = OUT_ORDER_TAG;
+ console.log("[Toggle-Pass] Ref Image Encode 输出顺序已迁移: conditioning / negative / latent");
+ return true;
+}
+
+// ② 把连线按「类型语义」搬回正确槽位。幂等,可无限次重跑。
+// LATENT → 2 号口(latent),CONDITIONING → 1 号口(negative);0 号口不参与。
+// 返回值:-1 = graph.links 还没建好(要继续重试);>=0 = 本次改动的连线条数。
+function fixLinkSlots(node) {
+ if (!node) return 0;
+ const graph = node.graph || app?.graph;
+ const links = graph?.links;
+ if (!links) return -1;
+
+ // ★ 加载早期 graph.links 是空表(实测 200ms 时仍是空的,几百毫秒后才填满)
+ // ⇒ 空表一律当「未就绪」,否则会在什么都没做的状态下提前收敛。
+ const empty = Array.isArray(links) ? links.length === 0 : Object.keys(links).length === 0;
+ if (empty) return -1;
+
+ let changed = 0;
+ const fix = (getSlot, setSlot, type, originId) => {
+ if (String(originId) !== String(node.id)) return;
+ const s = getSlot();
+ if (s !== 1 && s !== 2) return; // 0 号口(conditioning)不参与
+ const want = type === "LATENT" ? 2 : 1;
+ if (s !== want) { setSlot(want); changed++; }
+ };
+
+ if (Array.isArray(links)) {
+ // 老式:[[id, origin_id, origin_slot, target_id, target_slot, type], ...]
+ for (const l of links) {
+ if (!l) continue;
+ fix(() => l[2], (v) => { l[2] = v; }, l[5], l[1]);
+ }
+ } else {
+ // 新版:{[id]: LLink},origin_slot 是 getter/setter,直接赋值有效
+ for (const lk of Object.values(links)) {
+ if (!lk) continue;
+ fix(() => lk.origin_slot, (v) => { lk.origin_slot = v; }, lk.type, lk.origin_id);
+ }
+ }
+ return changed;
+}
+
+// ③ 阶梯重试直到收敛。graph.links 的就绪时机在不同机器/图规模下差别很大,
+// 单靠一帧 rAF 兜底会漏(这一版就栽在这:name 换了、slot 没换 ⇒ 用户看到「连错了」)。
+const OUT_ORDER_RETRY_MS = [0, 50, 120, 260, 550, 1000, 1800, 3000];
+
+function scheduleOutputOrderFix(node) {
+ let i = 0;
+ const step = () => {
+ if (!node || !node.graph) return; // 节点已被移除/图已换
+ const r = fixLinkSlots(node);
+ if (r === 0) return; // 已收敛,收手,不再干扰用户手动接线
+ i++;
+ if (i < OUT_ORDER_RETRY_MS.length) setTimeout(step, OUT_ORDER_RETRY_MS[i]);
+ };
+ setTimeout(step, OUT_ORDER_RETRY_MS[0]);
+}
+
+// 兼容旧调用点
+function migrateOutputOrder(node) {
+ renameOutputSlots(node);
+ return fixLinkSlots(node);
+}
+
function applyModelVisibility(node) {
+ migrateModelType(node); // 先把旧名字换成新名字,再决定显隐
const get = n => (node.widgets || []).find(w => w.name === n);
const mw = get("模型类型");
const model = mw ? mw.value : null;
@@ -137,6 +258,12 @@ app.registerExtension({
const origConfigure = nodeType.prototype.onConfigure;
nodeType.prototype.onConfigure = function () {
origConfigure?.apply(this, arguments);
+ // 输出口改名必须抢在画布渲染连线之前(同步执行);
+ // 连线归位要等 graph.links 建好,交给阶梯重试(只等一帧太早,实测那时 links 还是空的)。
+ if (nodeData.name === "DynamicRefImageEncode") {
+ renameOutputSlots(this);
+ scheduleOutputOrderFix(this);
+ }
requestAnimationFrame(() => {
const w = this.widgets?.find(w => w.name === cfg.widget);
if (w) syncInputs(this, cfg, Math.max(1, Math.min(cfg.max, w.value || 1)));
diff --git a/js/pose_reference.js b/js/pose_reference.js
new file mode 100644
index 0000000..bb2e3ca
--- /dev/null
+++ b/js/pose_reference.js
@@ -0,0 +1,637 @@
+/**
+ * ComfyUI-Toggle-Pass: 参考姿势(PoseReference)— 三级联动 + 节点内缩略图
+ *
+ * Python 端把全部选项平铺给出(大类 4 / 姿势组 26 / 姿势 288 / 视角 5),
+ * 不联动也能用。这里做三件事:
+ * 1. 选了大类就把「姿势组」收窄到该类下的组,选了组再把「姿势」收窄到该组下的,
+ * 切完顺手把画布重绘一次,免得下拉还显示旧选项。
+ * 2. 任何下拉一变(大类/组/姿势/视角/线稿深度/翻转)就去 /toggle_pass/pose_image
+ * 取一张缩略图,直接画在节点下半部分 —— 不用执行工作流就能看到选的是哪张。
+ * 3. 图进来了按比例把节点撑高,保证图不会被挤成一条缝。
+ *
+ * 图片走自绘(onDrawForeground)而不是 node.imgs:后者需要 HTMLImage 对象、
+ * 还依赖前端内部绘制逻辑,跨版本不稳。自绘只依赖 LiteGraph 的公开钩子。
+ */
+
+import { app } from "../../scripts/app.js";
+import { api } from "../../scripts/api.js";
+
+const NODE_NAME = "PoseReference";
+const TREE_API = "/toggle_pass/pose_tree";
+const IMAGE_API = "/toggle_pass/pose_image";
+const STAMP_API = "/toggle_pass/pose_stamp";
+
+const PAD = 10;
+const DEBOUNCE_MS = 120;
+// 素材指纹轮询间隔:往本机素材目录里丢新姿势,不用刷新浏览器,最多等这么久自己就出现
+const POLL_MS = 15000;
+// 会改变「该显示哪张图」的六个下拉
+const WATCHED = ["category", "group", "pose", "view", "source", "flip"];
+// 1.57 前端给「有 imgs 的节点」自动挂的官方画布预览 widget
+const PREVIEW_WIDGET = "$$canvas-image-preview";
+
+let treePromise = null;
+
+function fetchTree(force) {
+ if (force) treePromise = null; // 强制重扫:走 ?refresh=1 让后端丢掉缓存
+ if (!treePromise) {
+ treePromise = api
+ .fetchApi(TREE_API + (force ? "?refresh=1" : ""))
+ .then((r) => (r.ok ? r.json() : null))
+ .then((d) => {
+ // 失败/空结果不能留在缓存里:否则后面所有节点都拿这个 null,
+ // 联动永远建不起来,只有刷新页面(清掉模块状态)才恢复。
+ if (!d || !d.tree) treePromise = null;
+ return d;
+ })
+ .catch(() => {
+ treePromise = null;
+ return null;
+ });
+ }
+ return treePromise;
+}
+
+function widget(node, name) {
+ return (node.widgets || []).find((w) => w.name === name);
+}
+
+function val(node, name, fallback) {
+ const w = widget(node, name);
+ return w && w.value !== undefined && w.value !== null ? w.value : fallback;
+}
+
+/**
+ * 换一套选项。keep=true 时保留当前值(加载工作流用,避免把用户存的姿势改掉)。
+ * 返回是否真的变了,用于决定要不要重绘。
+ */
+function setValues(w, values, keep) {
+ if (!w || !Array.isArray(values) || values.length === 0) return false;
+ w.options = w.options || {};
+ const old = w.options.values;
+ const same =
+ Array.isArray(old) &&
+ old.length === values.length &&
+ old.every((v, i) => v === values[i]);
+ if (same) return false;
+
+ w.options.values = values.slice();
+ if (!keep && !values.includes(w.value)) w.value = values[0];
+ return true;
+}
+
+function buildSync(node, tree) {
+ const wCat = widget(node, "category");
+ const wGroup = widget(node, "group");
+ const wPose = widget(node, "pose");
+ if (!wCat || !wGroup || !wPose) return null;
+
+ const groupsOf = (cat) => Object.keys((tree && tree[cat]) || {});
+ const posesOf = (cat, grp) => Object.keys(((tree && tree[cat]) || {})[grp] || {});
+
+ return function sync(keep) {
+ let dirty = false;
+ dirty = setValues(wGroup, groupsOf(wCat.value), keep) || dirty;
+ dirty = setValues(wPose, posesOf(wCat.value, wGroup.value), keep) || dirty;
+ if (dirty) {
+ node.setDirtyCanvas(true, true);
+ app.graph?.setDirtyCanvas?.(true, true);
+ }
+ return dirty;
+ };
+}
+
+// ---------------- 工作流内嵌 ----------------
+// 选中的素材原文件(webp 约 5KB)以 data URI 存进 node.properties.tp_pose,
+// 跟着工作流一起走:别人下载后既能看到图,素材库不在时后端也能拿它出图。
+// 后端从 extra_pnginfo 里按 id 找 properties,所以 key 必须和 Python 的 embed_key 拼法一致。
+
+function embedKey(node) {
+ return [
+ val(node, "category", ""),
+ val(node, "group", ""),
+ val(node, "pose", ""),
+ val(node, "view", ""),
+ val(node, "source", "线稿"),
+ ]
+ .map((x) => String(x))
+ .join("|");
+}
+
+function flipOn(node) {
+ return val(node, "flip", "关") === "开";
+}
+
+function blobToDataUrl(blob) {
+ return new Promise((resolve, reject) => {
+ const fr = new FileReader();
+ fr.onload = () => resolve(String(fr.result));
+ fr.onerror = () => reject(fr.error);
+ fr.readAsDataURL(blob);
+ });
+}
+
+function loadImage(src) {
+ return new Promise((resolve, reject) => {
+ const img = new Image();
+ img.onload = () => resolve(img);
+ img.onerror = () => reject(new Error("image decode failed"));
+ img.src = src;
+ });
+}
+
+function storeEmbed(node, dataUrl) {
+ const key = embedKey(node);
+ node.properties = node.properties || {};
+ const cur = node.properties.tp_pose;
+ if (cur && cur.key === key && cur.img === dataUrl) return;
+ node.properties.tp_pose = { key, img: dataUrl };
+}
+
+/** 兜底显示:素材库取不到时,先用工作流里带的那张。 */
+function showEmbedded(node) {
+ const emb = node.properties && node.properties.tp_pose;
+ if (!emb || !emb.img) return false;
+ loadImage(emb.img)
+ .then((img) => {
+ if (node._tpPoseFromNet) return; // 真图已经到了,不自找麻烦
+ node._tpPoseImg = img;
+ node._tpPoseFlip = flipOn(node);
+ node._tpPoseErr = emb.key === embedKey(node) ? null : "素材库缺失,显示内嵌旧图";
+ fitNode(node, img);
+ node.setDirtyCanvas(true, true);
+ })
+ .catch(() => {});
+ return true;
+}
+
+// ---------------- 缩略图 ----------------
+
+function previewUrl(node) {
+ // raw=1:直接返回素材原文件(webp 约 5KB),不缩放不翻转 —— 既当缩略图又当内嵌源
+ const q = new URLSearchParams({
+ category: String(val(node, "category", "")),
+ group: String(val(node, "group", "")),
+ pose: String(val(node, "pose", "")),
+ view: String(val(node, "view", "")),
+ source: String(val(node, "source", "线稿")),
+ raw: "1",
+ });
+ return `${IMAGE_API}?${q.toString()}`;
+}
+
+/** 所有 widget 画完后的底部 y(节点 body 坐标系,原点在标题栏下沿)。 */
+function widgetsBottom(node) {
+ let bottom = 0;
+ const ws = node.widgets || [];
+ for (let i = 0; i < ws.length; i++) {
+ const w = ws[i];
+ let y = typeof w.last_y === "number" ? w.last_y : 4 + i * 28;
+ let h = 20;
+ if (typeof w.height === "number" && w.height > 0) {
+ h = w.height;
+ } else if (typeof w.computeSize === "function") {
+ try {
+ const s = w.computeSize(node.size[0]);
+ if (Array.isArray(s) && s.length > 1) h = s[1];
+ } catch (e) {
+ /* 忽略:拿不到就用默认行高 */
+ }
+ }
+ bottom = Math.max(bottom, y + h);
+ }
+ return bottom;
+}
+
+function fitNode(node, img) {
+ const top = widgetsBottom(node);
+ const availW = Math.max(80, node.size[0] - PAD * 2);
+ // 按图比例算一个「看得清又不占满屏」的高度,限制在 190~300
+ const wanted = Math.round(Math.min(300, Math.max(190, (availW * img.height) / img.width * 0.72)));
+ const need = Math.ceil(top + 6 + wanted + PAD);
+ if (node.size[1] < need) {
+ node.size[1] = need; // size 是类数组对象,整块赋值会被吞,逐下标写
+ node.setDirtyCanvas(true, true);
+ }
+}
+
+function refreshPreview(node) {
+ const url = previewUrl(node);
+ // flip 不参与 URL(拿的是未翻转的原文件),所以单独同步,不能跟着 URL 早退
+ const f = flipOn(node);
+ if (node._tpPoseFlip !== f) {
+ node._tpPoseFlip = f;
+ node.setDirtyCanvas(true, true);
+ }
+ // 已经有这张图就不重复取;但图对象丢了(出错被清、加载中新节点)还是要重取
+ if (node._tpPoseUrl === url && node._tpPoseImg) return;
+ node._tpPoseUrl = url;
+ const keyAtRequest = embedKey(node);
+
+ (async () => {
+ try {
+ const res = await api.fetchApi(url);
+ if (!res.ok) throw new Error("HTTP " + res.status);
+ const blob = await res.blob();
+ const dataUrl = await blobToDataUrl(blob);
+ if (node._tpPoseUrl !== url) return; // 期间又切了别的,丢弃
+ const img = await loadImage(dataUrl);
+ if (node._tpPoseUrl !== url) return;
+ node._tpPoseImg = img;
+ node._tpPoseFlip = flipOn(node);
+ node._tpPoseErr = null;
+ node._tpPoseFromNet = true;
+ // 只有参数没在旁边被改过才内嵌,避免把 A 的图写进 B 的设置
+ if (embedKey(node) === keyAtRequest) storeEmbed(node, dataUrl);
+ fitNode(node, img);
+ node.setDirtyCanvas(true, true);
+ // litegraph 0.4 里单个节点的 dirty 标记不一定能把画布叫醒,
+ // 图换了却停在旧画面,看着就是「点了没反应」。图是重点,再踹一脚整图。
+ app.graph?.setDirtyCanvas?.(true, true);
+ app.canvas?.setDirty?.(true, true);
+ } catch (e) {
+ if (node._tpPoseUrl !== url) return;
+ // 失败时解锁,否则这个参数组合会被永久判成「已请求过」,
+ // 后端恢复后切回来也不重试。
+ node._tpPoseUrl = null;
+ node._tpPoseFromNet = false;
+ const emb = node.properties && node.properties.tp_pose;
+ const curKey = embedKey(node);
+ // 只有内嵌的那张「正好就是当前选的」才能顶上去。
+ // 以前不管三七二十一都拿内嵌图兜底,结果切到别的姿势时画面还是老图,
+ // 用户看到的是「点了没反应」,还把真正的取图失败藏得干干净净。
+ if (emb && emb.img && emb.key === curKey) {
+ try {
+ const img = await loadImage(emb.img);
+ node._tpPoseImg = img;
+ node._tpPoseFlip = flipOn(node);
+ node._tpPoseErr = null;
+ fitNode(node, img);
+ node.setDirtyCanvas(true, true);
+ return;
+ } catch (e2) {
+ /* 解码也失败,走下面统一报错 */
+ }
+ }
+ node._tpPoseImg = null;
+ node._tpPoseErr = emb && emb.img ? "这张没取到(素材库缺失)" : "素材库缺失";
+ node.setDirtyCanvas(true, true);
+ app.graph?.setDirtyCanvas?.(true, true);
+ console.warn("[PoseReference] 取图失败:", url, e && e.message);
+ }
+ })();
+}
+
+function schedulePreview(node) {
+ if (node._tpPoseTimer) clearTimeout(node._tpPoseTimer);
+ node._tpPoseTimer = setTimeout(() => {
+ node._tpPoseTimer = null;
+ try {
+ refreshPreview(node);
+ } catch (e) {
+ console.warn("[PoseReference] 预览刷新失败", e);
+ }
+ }, DEBOUNCE_MS);
+}
+
+/**
+ * 参数自检:当前六个下拉的取值,和「上一次送去取图的那套参数」不一致就重取。
+ *
+ * 这个检查放在绘制里每帧跑,是刻意不依赖 widget.callback 的。实测(1.57 /
+ * litegraph 0.4)下拉选完只有 callback 一条通知路径,而 callback 可能被第三方
+ * 扩展重写、被旧版本闭包吃掉,或者干脆不触发 —— 一旦漏掉,节点就会永远停在
+ * 上一张图上,看起来像「切换不了,得重启」。绘制路径只要画布在动就一定跑,
+ * 拿它当兜底,任何漏通知的情况都能自己补上。
+ */
+function watchParams(node) {
+ const key = embedKey(node);
+ if (node._tpPoseKey === key) return;
+ node._tpPoseKey = key;
+ schedulePreview(node);
+}
+
+function drawPreview(node, ctx) {
+ watchParams(node); // 先自检:参数变了但没人通知,这里补一次
+ const top = widgetsBottom(node);
+ const x0 = PAD;
+ const y0 = top + 6;
+ const w0 = node.size[0] - PAD * 2;
+ const h0 = node.size[1] - y0 - PAD;
+ if (w0 < 40 || h0 < 30) return;
+
+ ctx.save();
+ try {
+ // 底衬:避免透明网格/深色背景上白线稿看不清边界
+ ctx.fillStyle = "#1b1b1b";
+ ctx.fillRect(x0, y0, w0, h0);
+
+ const img = node._tpPoseImg;
+ if (!img) {
+ ctx.fillStyle = "#7a7a7a";
+ ctx.font = "12px sans-serif";
+ ctx.textAlign = "center";
+ ctx.textBaseline = "middle";
+ ctx.fillText(node._tpPoseErr || "加载中…", x0 + w0 / 2, y0 + h0 / 2);
+ return;
+ }
+
+ const scale = Math.min(w0 / img.width, h0 / img.height);
+ const dw = img.width * scale;
+ const dh = img.height * scale;
+ const dx = x0 + (w0 - dw) / 2;
+ const dy = y0 + (h0 - dh) / 2;
+ ctx.imageSmoothingEnabled = true;
+ ctx.imageSmoothingQuality = "high";
+ if (node._tpPoseFlip) {
+ // 缩略图取的是素材原文件(未翻转),翻转在这里镜像
+ ctx.save();
+ try {
+ ctx.translate(dx + dw, dy);
+ ctx.scale(-1, 1);
+ ctx.drawImage(img, 0, 0, dw, dh);
+ } finally {
+ ctx.restore();
+ }
+ } else {
+ ctx.drawImage(img, dx, dy, dw, dh);
+ }
+
+ ctx.strokeStyle = "rgba(255,255,255,0.14)";
+ ctx.lineWidth = 1;
+ ctx.strokeRect(dx + 0.5, dy + 0.5, dw - 1, dh - 1);
+ } finally {
+ ctx.restore();
+ }
+}
+
+function hookCallback(w, node) {
+ if (!w || w._tpPoseHooked) return;
+ w._tpPoseHooked = true;
+ const orig = w.callback;
+ w.callback = function (...args) {
+ const ret = orig ? orig.apply(this, args) : undefined;
+ // 联动和取图分开 try:联动抛异常不能把取图一起带走,
+ // 否则下拉值变了、图却停在上一张。
+ try {
+ // 必须每次现取 node._tpPoseSync:素材库热更新会换上新树的闭包,
+ // 如果在这里闭包捕获旧 sync,下拉永远按旧树联动 —— 新增的类别/组
+ // 切不过去,只有重启(重新挂钩)才恢复。
+ if (typeof node._tpPoseSync === "function") node._tpPoseSync(false);
+ } catch (e) {
+ console.warn("[PoseReference] 联动失败", e);
+ }
+ try {
+ schedulePreview(node);
+ } catch (e) {
+ console.warn("[PoseReference] 预览排队失败", e);
+ }
+ return ret;
+ };
+}
+
+function attach(node, tree) {
+ const sync = buildSync(node, tree);
+ if (sync) node._tpPoseSync = sync;
+ // 六个下拉都要挂:前三个带联动,后三个只触发换图
+ WATCHED.forEach((name) => {
+ hookCallback(widget(node, name), node);
+ });
+ if (sync) sync(true);
+ showEmbedded(node);
+ schedulePreview(node);
+}
+
+// ---------------- 素材库热更新 ----------------
+// 素材分两层:插件自带 pose_assets/(随插件分发、只放非敏感大类)+ 本机外挂
+// (D:\pose 或 TP_POSE_ROOT,敏感/自建素材放这里)。往本机目录里丢新姿势后,
+// 后端指纹会变,这里自动把下拉重建一遍 —— 不用刷新浏览器。
+
+function poseNodes() {
+ return (app.graph?._nodes || []).filter((n) => n.type === NODE_NAME);
+}
+
+async function refreshAll(reason) {
+ const nodes = poseNodes();
+ if (!nodes.length) return 0;
+ const data = await fetchTree(true);
+ if (!data || !data.tree) return 0;
+ for (const n of nodes) {
+ try {
+ attach(n, data.tree); // 换上新的素材树
+ // 新树里可能没有当前选中的组/姿势了(素材被删或改名),这里校正一次,
+ // 否则下拉会显示一个不存在的值、点别的又对不上。
+ if (typeof n._tpPoseSync === "function") n._tpPoseSync(false);
+ // 素材可能被同名替换了内容,URL 却一模一样,不清掉就永远不会重取。
+ n._tpPoseUrl = null;
+ n._tpPoseFromNet = false;
+ schedulePreview(n);
+ } catch (e) {
+ console.warn("[PoseReference] 重建下拉失败", e);
+ }
+ }
+ console.log(`[PoseReference] 素材库已刷新(${reason}):${nodes.length} 个节点`);
+ return nodes.length;
+}
+
+let lastStamp = null;
+let pollStarted = false;
+
+function startStampPoll() {
+ if (pollStarted) return;
+ pollStarted = true;
+
+ const tick = async () => {
+ if (!poseNodes().length) return; // 画布上没有本节点就不打扰后端
+ try {
+ const r = await api.fetchApi(STAMP_API);
+ if (!r.ok) return;
+ const d = await r.json();
+ if (!d || !d.stamp) return;
+ if (lastStamp === null) {
+ lastStamp = d.stamp; // 首次只记基准,不触发重建
+ return;
+ }
+ if (d.stamp === lastStamp) return;
+ lastStamp = d.stamp;
+ await refreshAll("指纹变化");
+ } catch (e) {
+ /* 网络抖动忽略,下一轮再说 */
+ }
+ };
+
+ // 立刻记一次基准(和画布上有没有节点无关),不能等第一个 interval ——
+ // 否则「打开页面后 15 秒内放进去的素材」会被当成基准吞掉,指纹再也不变,永远不刷新。
+ (async () => {
+ try {
+ const r = await api.fetchApi(STAMP_API);
+ if (!r.ok) return;
+ const d = await r.json();
+ if (d && d.stamp) lastStamp = d.stamp;
+ } catch (e) {
+ /* 拿不到就退化成 tick 里首次记录基准 */
+ }
+ })();
+ setInterval(tick, POLL_MS);
+}
+
+/**
+ * 摘掉 ComfyUI 1.57 自动挂的官方画布预览 widget。
+ *
+ * 前端 `useNodeCanvasImagePreview` 的规则很简单:只要节点有 `node.imgs`,
+ * 就 `addCustomWidget("$$canvas-image-preview")`。这个 widget 会占掉节点底部
+ * 一行,并把执行输出的那张 PNG 画在节点下部 —— 正好压在我们的预览区上面。
+ *
+ * 于是「生图一开始」就等于给节点盖了一张定死的图:下拉照点、我们的图在背面
+ * 其实也换了,但画面上永远停着那张执行结果,看起来就是再也切不动。
+ * 本节点的图完全由 onDrawForeground 自己画,不需要官方这一份,直接摘掉;
+ * 同时清空 `node.imgs`,否则它下次判断又会把 widget 挂回来。
+ */
+function stripOfficialPreview(node) {
+ if (!node || !node.widgets) return false;
+ let hit = false;
+ for (let i = node.widgets.length - 1; i >= 0; i--) {
+ const w = node.widgets[i];
+ if (String((w && w.name) || "") !== PREVIEW_WIDGET) continue;
+ if (typeof w.onRemove === "function") {
+ try {
+ w.onRemove();
+ } catch (e) {
+ /* 清理回调失败也要把 widget 摘掉 */
+ }
+ }
+ node.widgets.splice(i, 1);
+ hit = true;
+ }
+ if (hit) {
+ node.imgs = null;
+ node.setDirtyCanvas(true, true);
+ }
+ return hit;
+}
+
+/**
+ * 参数巡检:300ms 扫一遍画布上的本节点,参数变了就补一次取图。
+ *
+ * 绘制里已经有一道同样的检查,但节点被折叠、画布静止不重绘时绘制不一定会跑。
+ * 这里只读六个 widget 的 value 拼个字符串,画布上没有本节点时直接返回,
+ * 开销可以忽略,换来的是「不管通知从哪条路径丢了,图都能自己跟上」。
+ *
+ * 顺便每轮摘一次官方预览 widget(见 stripOfficialPreview)。
+ */
+function startParamWatch() {
+ setInterval(() => {
+ for (const n of poseNodes()) {
+ try {
+ stripOfficialPreview(n);
+ watchParams(n);
+ } catch (e) {
+ /* 单个节点异常不能拖垮整轮巡检 */
+ }
+ }
+ }, 300);
+}
+
+// 画布右键菜单「刷新姿势素材库」通过这个全局调用(canvas_menu.js 里引用)
+window.__tpRefreshPoses = () => refreshAll("手动");
+
+/**
+ * 排查用:在浏览器控制台敲 __tpPoseDiag(),打印画布上每个本节点的
+ * 选项值 / 已加载图 / 上次请求的 URL / 错误信息。出问题时一眼看出卡在哪一步。
+ */
+window.__tpPoseDiag = () => {
+ const rows = poseNodes().map((n) => ({
+ 选中: WATCHED.map((k) => val(n, k, "")).join(" / "),
+ 上次请求: decodeURIComponent((n._tpPoseUrl || "").split("?")[1] || "(无)"),
+ 已加载图: n._tpPoseImg ? `${n._tpPoseImg.naturalWidth}x${n._tpPoseImg.naturalHeight}` : "(无)",
+ 来自网络: !!n._tpPoseFromNet,
+ 错误: n._tpPoseErr || "",
+ }));
+ console.table(rows);
+ return rows;
+};
+
+app.registerExtension({
+ name: "TogglePass.PoseReference",
+
+ async beforeRegisterNodeDef(nodeType, nodeData) {
+ if (nodeData.name !== NODE_NAME) return;
+
+ // ---- 节点内缩略图(自绘,链式调用宿主钩子)----
+ const origDraw = nodeType.prototype.onDrawForeground;
+ nodeType.prototype.onDrawForeground = function (ctx) {
+ const ret = origDraw ? origDraw.apply(this, arguments) : undefined;
+ if (ctx) {
+ try {
+ drawPreview(this, ctx);
+ } catch (e) {
+ console.warn("[PoseReference] 绘制失败", e);
+ }
+ }
+ return ret;
+ };
+
+ // ---- 创建节点:拉目录树、挂联动、取首张预览 ----
+ const origCreated = nodeType.prototype.onNodeCreated;
+ nodeType.prototype.onNodeCreated = function () {
+ const ret = origCreated ? origCreated.apply(this, arguments) : undefined;
+ const node = this;
+
+ // size 是类数组对象,整块赋值会被忽略,必须逐下标写
+ if (node.size && node.size[0] < 320) {
+ node.size[0] = 340;
+ }
+
+ fetchTree().then((data) => {
+ if (!data || !data.tree) {
+ schedulePreview(node); // 树拉不到也先把图取上
+ return;
+ }
+ attach(node, data.tree);
+ });
+ return ret;
+ };
+
+ // ---- 加载工作流:选项可能和存的不一致,刷新一次但保留原值 ----
+ const origConfigure = nodeType.prototype.onConfigure;
+ nodeType.prototype.onConfigure = function () {
+ const ret = origConfigure ? origConfigure.apply(this, arguments) : undefined;
+ const node = this;
+ // 换了工作流:上一张的 URL / 来源标记作废,先把内嵌图顶上去再拉本机的
+ node._tpPoseUrl = null;
+ node._tpPoseFromNet = false;
+ node._tpPoseKey = null; // 让绘制自检也认为「参数刚变过」
+ showEmbedded(node);
+ fetchTree().then((data) => {
+ if (!data || !data.tree) {
+ schedulePreview(node);
+ return;
+ }
+ attach(node, data.tree);
+ });
+ return ret;
+ };
+
+ // ---- 执行完:立刻摘掉官方预览 widget,别让它盖住预览区 ----
+ // 这是「生图一开始就再也切不动」的元凶:节点返回 ui.images 后前端会给它
+ // 挂一个固定显示执行结果的预览 widget,正好压在预览区上。
+ const origExecuted = nodeType.prototype.onExecuted;
+ nodeType.prototype.onExecuted = function () {
+ const ret = origExecuted ? origExecuted.apply(this, arguments) : undefined;
+ try {
+ this.imgs = null; // 官方预览靠它判断要不要挂
+ stripOfficialPreview(this);
+ schedulePreview(this); // 执行结束是「该重画」的信号,顺手对齐一次
+ } catch (e) {
+ console.warn("[PoseReference] 清理官方预览失败", e);
+ }
+ return ret;
+ };
+ },
+
+ setup() {
+ // 前端就绪后开始轮询素材指纹(每 POLL_MS 一次,画布没本节点时直接跳过)
+ startStampPoll();
+ // 参数巡检:回调漏通知时靠它把图补上
+ startParamWatch();
+ },
+});
diff --git a/js/sampler_widgets.js b/js/sampler_widgets.js
index 3374329..c0ba95b 100644
--- a/js/sampler_widgets.js
+++ b/js/sampler_widgets.js
@@ -13,14 +13,47 @@
*/
import { app } from "../../scripts/app.js";
+import { api } from "../../scripts/api.js";
const NODE_NAME = "ToggleSampler";
const SCHEME_AUTO = "自动(按步数 + 调度器)";
const SCHEME_CUSTOM = "自定义表";
-/* 新建节点时的初始宽度(高度用 computeSize 的默认值,不加高)。
- 仅在 onNodeCreated 生效,不影响已保存的工作流尺寸。 */
-const INITIAL_WIDTH = 300;
+/* 节点宽度。预设用的是完整模型名,最长一条实测 240px("Qwen-Image Layered(9步·CFG 2.5)"),
+ 加上左侧 47px 的「⚡预设」和两侧留白,340 就会开始重叠 ⇒ 取 350。
+
+ ⚠️ 宽度不够时 combo 的值是右对齐画的,会把左边的标题整个盖住,
+ 看起来就成了「一个没有名字的下拉框」—— 这正是之前被误认成"重复控件"的原因。
+ ⇒ 老工作流里存的是 300/340,加载时若不够就补到 PRESET_FIT_WIDTH(只加不缩)。 */
+const INITIAL_WIDTH = 350;
+const PRESET_FIT_WIDTH = 350;
+
+/* node.size 是"类数组对象"(Array.isArray 恒为 false),取值必须逐下标。 */
+function sizeAt(node, i) {
+ const s = node && node.size;
+ if (!s) return 0;
+ const v = typeof s[i] === "number" ? s[i] : s[String(i)];
+ return typeof v === "number" ? v : 0;
+}
+
+/** 节点太窄就把标题挤没了,补到能放下最长预设名的宽度。只加宽,不缩窄。 */
+function ensureWidthForPreset(node) {
+ const w = sizeAt(node, 0);
+ if (!w || w >= PRESET_FIT_WIDTH) return false;
+ try {
+ node.size[0] = PRESET_FIT_WIDTH; // 逐下标赋值,整体赋值会被类数组吞掉
+ node.setDirtyCanvas?.(true, true);
+ app.canvas?.setDirty?.(true, true);
+ return true;
+ } catch (e) {
+ return false;
+ }
+}
+
+/* 控件上显示的名字。**内部 name 一律不改** —— widgets_values_named 和 /prompt 的
+ inputs 都按 name 走,改 name 等于让所有已存工作流失联。改 label 才是安全的。 */
+const LABEL_SCHEME = "Sigma 曲线"; // 原名「采样方案」:它只管噪声曲线,容易和「预设」混
+const LABEL_PRESET = "⚡预设"; // 原名「模型预设」:四个字太长,窄节点上会没地方显示
/* 各预置表对应的真实步数(= 表点数 - 1)。
与 sampler.py 的 SIGMA_PRESETS 保持一致;只用于把「步数」显示得跟实际一致,
@@ -32,9 +65,197 @@ const PRESET_STEPS = {
};
const W_SCHEME = "采样方案";
+const W_SAMPLER = "采样器";
const W_SCHEDULER = "调度器";
const W_STEPS = "步数";
+const W_CFG = "CFG";
const W_CUSTOM = "自定义Sigma表";
+const W_MODEL_PRESET = "模型预设";
+
+/* ==================== 模型预设 ====================
+ *
+ * 预设表只存在后端(sampler.py 的 MODEL_PRESETS),这里通过
+ * /toggle_pass/sampler_presets 拉回来,**不在 JS 里再抄一份**,
+ * 免得以后加模型时两边对不上。
+ *
+ * 语义是「一键填充」而不是「持续锁定」:选完预设后,只要用户手动改了
+ * 采样方案/采样器/调度器/步数/CFG 中的任何一个,下拉就自己退回「手动」——
+ * 这样控件显示的永远是真实状态,不会出现「写着 Qwen 预设、其实在跑 40 步」。
+ */
+
+const PRESET_NONE = "手动(不套用)";
+const PRESET_API = "/toggle_pass/sampler_presets";
+// 预设会写到的五个参数(降噪和随机种不归预设管,改它们不该影响预设显示)
+const PRESET_KEYS = [W_SCHEME, W_SAMPLER, W_SCHEDULER, W_STEPS, W_CFG];
+
+/* 「模型预设」挪到最前面之前的控件顺序(与 sampler.py 的 LEGACY_WIDGET_ORDER 同步)。
+ 1.57 的存档会额外写一份 widgets_values_named(按名字恢复,位置无关),但更早的
+ 纯位置存档只能按顺序对号;把这张表交给 nodeData.fallbackWidgetsValuesNames,
+ 老存档就会按名字重新落到正确控件上,而不是整体错一位。 */
+const LEGACY_WIDGET_ORDER = [
+ W_SCHEME, W_SAMPLER, W_SCHEDULER, W_STEPS, W_CFG, "降噪",
+ "噪波随机种", "control_after_generate", W_CUSTOM, W_MODEL_PRESET,
+];
+
+/* 旧预设名 → 当前预设名。权威副本在 sampler.py 的 PRESET_ALIASES,由
+ /toggle_pass/sampler_presets 下发;这里初始只放一份兜底,fetch 成功后会被覆盖。
+
+ 为什么需要兜底:加载工作流(onConfigure)可能发生在接口返回之前,那一刻
+ 如果表是空的,旧短名就翻译不出来,下拉会停在 `Layered · 9步` 这种已不存在的值上。
+ fetch 完成后 retroFixPresets() 会对画布上已有节点再补一次。 */
+const PRESET_ALIASES = {
+ "Qwen 2.1 · 25步": "Qwen-Image 2.1(25步)",
+ "Qwen 2.1 turbo · 8步表": "Qwen-Image 2.1 turbo(8步·固定表)",
+ "Krea2 turbo · 8步": "Krea 2 turbo(8步)",
+ "Krea2 细节 · 12步": "Krea 2 turbo・细节增强(12步)",
+ "FLUX2 klein · 4步": "FLUX.2 klein(4步·beta)",
+ "FLUX2 高清 · 4步": "FLUX.2 klein・高清修复(4步)",
+ "Z-Image turbo · 8步": "Z-Image turbo(8步)",
+ "Layered · 9步": "Qwen-Image Layered(9步·CFG2.5)",
+ "2511 AIO · 4步": "Qwen-Image Edit 2511 AIO(4步)",
+};
+
+let presetPromise = null;
+
+/** 别名到齐后,把画布上已经加载完的节点再修一遍(加载早于接口返回的情况)。 */
+function retroFixPresets() {
+ const nodes = (app.graph && app.graph._nodes) || [];
+ for (const n of nodes) {
+ if (!n || n.type !== NODE_NAME) continue;
+ try {
+ if (fixPresetValue(n)) n.setDirtyCanvas?.(true, true);
+ } catch (e) {
+ /* 单个节点异常不影响其余 */
+ }
+ }
+}
+
+function fetchPresets() {
+ if (!presetPromise) {
+ presetPromise = api
+ .fetchApi(PRESET_API)
+ .then((r) => (r.ok ? r.json() : null))
+ .then((d) => {
+ // 失败不要缓存 null,否则这个页面里永远拿不到预设
+ if (!d || !d.presets) {
+ presetPromise = null;
+ return d;
+ }
+ if (d.aliases) {
+ Object.assign(PRESET_ALIASES, d.aliases);
+ retroFixPresets();
+ }
+ return d;
+ })
+ .catch(() => {
+ presetPromise = null;
+ return null;
+ });
+ }
+ return presetPromise;
+}
+
+const findW = (node, name) => node.widgets && node.widgets.find((w) => w.name === name);
+
+/** 只在值真的不同、且该值确实在下拉可选项里时才写 —— 免得把 widget 写成一个非法值。 */
+function setValue(w, v) {
+ if (!w || v === undefined || v === null) return false;
+ const vals = w.options && w.options.values;
+ if (Array.isArray(vals) && !vals.includes(v)) {
+ console.warn("[Toggle-Pass] 预设值不在可选项里,跳过:", w.name, v);
+ return false;
+ }
+ if (w.value === v) return false;
+ w.value = v; // 直接赋值不触发 callback,正是我们要的
+ return true;
+}
+
+/**
+ * 把某个预设套到节点上。
+ *
+ * 顺序很关键:先换「采样方案」并立刻跑一次 applySchemeState —— 因为调度器/步数
+ * 会随方案被解锁或锁死(锁死时 options.min=max=当前值,这时再写就写不进去了)。
+ * 解锁之后再填其余四项,最后再跑一次让锁定状态和步数显示对齐。
+ */
+async function applyPreset(node, name) {
+ if (!name || name === PRESET_NONE) return;
+ if (!node.__tpPresets) {
+ const d = await fetchPresets();
+ if (d && d.presets) node.__tpPresets = d.presets;
+ }
+ const conf = node.__tpPresets && node.__tpPresets[name];
+ if (!conf) {
+ console.warn("[Toggle-Pass] 找不到预设:", name);
+ return;
+ }
+ if (node.__tpApplying) return;
+ node.__tpApplying = true;
+ try {
+ setValue(findW(node, W_SCHEME), conf.scheme);
+ applySchemeState(node);
+ setValue(findW(node, W_SAMPLER), conf.sampler);
+ setValue(findW(node, W_SCHEDULER), conf.scheduler);
+ setValue(findW(node, W_STEPS), conf.steps);
+ setValue(findW(node, W_CFG), conf.cfg);
+ } finally {
+ node.__tpApplying = false;
+ }
+ applySchemeState(node);
+ node.setDirtyCanvas(true, true);
+ if (node.graph && node.graph.setDirtyCanvas) node.graph.setDirtyCanvas(true, false);
+}
+
+/** 用户手改了预设管辖的参数 —— 把下拉退回「手动」,别让它说谎。 */
+function markManual(node) {
+ if (node.__tpApplying) return; // 预设自己填的值不算
+ const w = findW(node, W_MODEL_PRESET);
+ if (!w || w.value === PRESET_NONE) return;
+ w.value = PRESET_NONE;
+ node.setDirtyCanvas(true, true);
+}
+
+/**
+ * 这个值是不是「采样方案」的取值?
+ *
+ * 用来识别一种错位:老工作流没有 widgets_values_named,只能按位置恢复,而
+ * 「模型预设」被挪到了第一位 —— 于是它拿到的其实是老位置 0 的采样方案值。
+ * 采样方案和模型预设的取值集合完全不重叠,所以这里可以可靠地区分。
+ */
+function looksLikeScheme(v) {
+ if (typeof v !== "string") return false;
+ return v === SCHEME_AUTO || v === SCHEME_CUSTOM
+ || Object.prototype.hasOwnProperty.call(PRESET_STEPS, v);
+}
+
+/**
+ * 把「模型预设」的值修成合法的:
+ * · 旧长名 -> 新短名(改过名的老存档)
+ * · 拿到采样方案的值 -> 退回「手动」(纯位置存档的错位)
+ * 返回是否改动过。
+ */
+function fixPresetValue(node) {
+ const w = findW(node, W_MODEL_PRESET);
+ if (!w || typeof w.value !== "string") return false;
+ if (Object.prototype.hasOwnProperty.call(PRESET_ALIASES, w.value)) {
+ w.value = PRESET_ALIASES[w.value];
+ return true;
+ }
+ if (looksLikeScheme(w.value)) {
+ // 位置错位:这一格拿到的是「采样方案」的值,退回手动
+ w.value = PRESET_NONE;
+ return true;
+ }
+ // 剩下的可能是个已废弃的旧名:别名表没覆盖时留在控件上会显示成一个不存在的值,
+ // 退回「手动」更诚实 —— 真正的采样参数还在,只是不再声称套着某个预设。
+ const vals = w.options && w.options.values;
+ if (Array.isArray(vals) && vals.length && !vals.includes(w.value)) {
+ console.warn("[Toggle-Pass] 未知预设名,已退回手动:", w.value);
+ w.value = PRESET_NONE;
+ return true;
+ }
+ return false;
+}
+
/** 从手填的 sigma 表里数步数(N 个点 = N-1 步;解析不出来就返回 0) */
function countSigmaSteps(text) {
@@ -172,6 +393,12 @@ app.registerExtension({
async beforeRegisterNodeDef(nodeType, nodeData) {
if (nodeData.name !== NODE_NAME) return;
+ /* 老存档兜底:1.57 之前的存档只有按位置的 widgets_values。
+ 「模型预设」从末尾挪到了第一位,纯位置恢复会整体错一位 —— 把老顺序
+ 交给前端,它就会按 widget 名字重新对号。(新版存档有 widgets_values_named,
+ 本来就不受位置影响,这里只是补上更早的那批。) */
+ nodeData.fallbackWidgetsValuesNames = LEGACY_WIDGET_ORDER;
+
// ---- 新建节点 ----
const onNodeCreated = nodeType.prototype.onNodeCreated;
nodeType.prototype.onNodeCreated = function () {
@@ -181,14 +408,61 @@ app.registerExtension({
const wScheme = node.widgets && node.widgets.find((w) => w.name === W_SCHEME);
if (!wScheme) return r;
+ wScheme.label = LABEL_SCHEME;
+ const wPresetInit = node.widgets.find((w) => w.name === W_MODEL_PRESET);
+ if (wPresetInit) wPresetInit.label = LABEL_PRESET;
+
// 拦截方案切换(用户点下拉时走 callback)
const origCb = wScheme.callback;
wScheme.callback = function () {
const out = origCb ? origCb.apply(this, arguments) : undefined;
- applySchemeState(node);
+ try {
+ applySchemeState(node);
+ markManual(node);
+ } catch (e) {
+ console.warn("[Toggle-Pass] 采样方案联动失败:", e);
+ }
return out;
};
+ // 预设表提前拉好,等用户点下拉时基本已经到位
+ fetchPresets().then((d) => {
+ if (d && d.presets) node.__tpPresets = d.presets;
+ });
+
+ // 「模型预设」:选中就把五项参数一次性填好
+ const wPreset = node.widgets.find((w) => w.name === W_MODEL_PRESET);
+ if (wPreset) {
+ const origPresetCb = wPreset.callback;
+ wPreset.callback = function () {
+ const out = origPresetCb ? origPresetCb.apply(this, arguments) : undefined;
+ try {
+ applyPreset(node, wPreset.value);
+ } catch (e) {
+ console.warn("[Toggle-Pass] 套用模型预设失败:", e);
+ }
+ return out;
+ };
+ }
+
+ // 其余四个参数:用户一动就说明偏离预设了,把下拉退回「手动」
+ PRESET_KEYS.forEach((name) => {
+ if (name === W_SCHEME) return; // 方案上面已经包过
+ const w = node.widgets.find((x) => x.name === name);
+ if (!w || w.__tpManualHooked) return;
+ w.__tpManualHooked = true;
+ const orig = w.callback;
+ w.callback = function () {
+ const out = orig ? orig.apply(this, arguments) : undefined;
+ try {
+ markManual(node);
+ } catch (e) {
+ /* 标记失败不影响参数本身 */
+ }
+ return out;
+ };
+ });
+
applySchemeState(node);
/* 初始尺寸:只加宽,高度沿用 computeSize 算出的默认值。
@@ -206,9 +480,21 @@ app.registerExtension({
nodeType.prototype.onConfigure = function () {
const r = onConfigure ? onConfigure.apply(this, arguments) : undefined;
try {
+ // label 不是存档内容,但某些路径会重建 widget,这里补一遍最稳
+ const ws = findW(this, W_SCHEME);
+ if (ws) ws.label = LABEL_SCHEME;
+ const wp = findW(this, W_MODEL_PRESET);
+ if (wp) wp.label = LABEL_PRESET;
+
+ // 先把预设值修成合法的(旧长名 / 位置错位),再对方案做联动
+ fixPresetValue(this);
+
this.__tpPrevScheme = undefined; // 加载时不还原历史步数,按存档来
applySchemeState(this);
this.__tpPrevScheme = this.widgets?.find((w) => w.name === W_SCHEME)?.value;
+
+ // 老存档里节点可能只有 300 宽,全名会把「⚡预设」压在下面看不见
+ ensureWidthForPreset(this);
} catch (e) {
console.warn("[Toggle-Pass] 采样器参数联动失败:", e);
}
diff --git a/multi_ref_encode.py b/multi_ref_encode.py
index fbab937..6b63e57 100644
--- a/multi_ref_encode.py
+++ b/multi_ref_encode.py
@@ -8,6 +8,7 @@ Version: 3.0 - Multiple node classes (3/5/10 images) + Custom output size for im
import math
import torch
+import torch.nn.functional as F
import comfy.utils
import node_helpers
import comfy.model_management
@@ -154,6 +155,10 @@ KREA2_VISION_TOKEN = "<|vision_start|><|image_pad|><|vision_end|>"
def _krea2_ref_preprocess(samples, vae):
"""Krea2 参考图预处理,返回 (ref_latent, vl_image)。
+ ⚠️ 2026-11-05 起三个编码节点的 Krea2 分支都改用 `_krea2_fit_ref`(参考图必须先
+ fit 到出图网格,否则 ref latent 与采样起点的 h/w 不同 ⇒ 线稿/边缘渗进画面),
+ 本函数已无调用者,保留作参考(它编码的是「约 1 MP、保持原比例」的 latent)。
+
samples : [B, C, H, W](已 movedim(-1, 1))
· ref_latent —— VAE 编码,缩到约 1024x1024 并对齐 8 的倍数,只吃 RGB
(qwen_image_vae 输入 3 通道,Krea2 不吃 alpha)
@@ -187,6 +192,35 @@ def _krea2_ref_preprocess(samples, vae):
return ref_latent, vl_image
+def _krea2_fit_ref(samples, out_w, out_h, mode="参考图保比例"):
+ """把参考图 fit 到 Krea2 采样的**空间网格**(= krea2_edit LoRA 的训练几何)。
+
+ 原生 krea2 forward 给每张参考图用它**自己的网格**造位置编码:
+ ref = (frame=i, h=0..h_ref-1, w=0..w_ref-1)
+ target = (frame=0, h=0..h_tgt-1, w=0..w_tgt-1)
+ ref 与 target 的空间尺寸不一致时,模型把它当成「另一块画布」——坐标对不上,
+ 实测症状是参考图的线条被贴进成图(脸上出现轮廓线)。krea2_edit 训练时源图是
+ 先 fit 到 target 网格再 VAE 编码的。这里照做:ref latent 与采样起点在 h/w 上
+ 逐维相等,位置编码只差 frame 轴。
+
+ mode 沿用节点上的「尺寸适配」:
+ 参考图保比例 → 中心裁到出图宽高比,再缩到出图像素尺寸(默认,几乎无损)
+ 参考图裁剪 → 直接中心裁到出图尺寸
+ 参考图拉伸 → 直接缩到出图尺寸(会变形)
+ """
+ tw = max(8, int(round(out_w / 8.0)) * 8)
+ th = max(8, int(round(out_h / 8.0)) * 8)
+ if mode != "参考图拉伸":
+ samples = _center_crop(samples, tw / th)
+ if (samples.shape[3], samples.shape[2]) == (tw, th):
+ return samples
+ # ★★ antialias 不能省:缩小一张锐利线稿时,无 antialias 的双三次会产生振铃/摩尔纹,
+ # 黑白边界的潜空间特征被放大,模型会照着把线条画进成图(实测:脸上出现轮廓线)。
+ # krea2Edit 的像素路径同样是 bicubic + antialias。
+ return F.interpolate(samples.float(), size=(th, tw), mode="bicubic",
+ antialias=True).to(samples.dtype)
+
+
def _krea2_empty_latent(width, height):
"""Krea2 采样起点:全零 16 通道 / 8x latent。
@@ -205,6 +239,97 @@ def _krea2_align8(v):
return max(8, int(round(v / 8.0)) * 8)
+def _empty_negative(clip):
+ """真正的空文本负条件(不带参考图)。
+
+ ⚠️ 不要用 `ConditioningZeroOut` 把正面条件清零当负面:
+ CFG == 1.0 时负面根本不参与计算,看着没问题;
+ 一旦 CFG > 1,负面真的参与计算了,清零的张量会让整张图花屏(绿紫斑块)。
+ 实测 Qwen 2.1 fp8 / int8 20 步 CFG 2.5 都崩,换成本函数这种空文本就正常。
+ """
+ tokens = clip.tokenize("")
+ return clip.encode_from_tokens_scheduled(tokens)
+
+
+# 模型类型改名兼容:老工作流里存的是旧字面量,后端收到旧值时归一化到新名字。
+# 前端 js/multi_ref_encode.js 里有一份同样的表(加载时直接把 widget 值改掉),
+# 这里再兜一层是为了「手工改 JSON / 第三方节点转存」也能走对分支。
+_MODEL_TYPE_ALIASES = {
+ "SD / SDXL": "SD / SDXL / Z-Image",
+ "SD/SDXL": "SD / SDXL / Z-Image",
+ "SD/SDXL/z-image": "SD / SDXL / Z-Image",
+ "SDXL": "SD / SDXL / Z-Image",
+ "SD 1.5": "SD / SDXL / Z-Image",
+ "Z-Image": "SD / SDXL / Z-Image",
+ "z-image": "SD / SDXL / Z-Image",
+ "ZImage": "SD / SDXL / Z-Image",
+}
+
+
+def _norm_model_type(v):
+ """把旧/别名写法的模型类型归一成当前下拉里的正式值。"""
+ if not isinstance(v, str):
+ return v
+ return _MODEL_TYPE_ALIASES.get(v.strip(), v)
+
+
+def _te_class_name(clip):
+ """取文本编码器的实际类名(如 ZImageTEModel_)。取不到返回 None。
+
+ ⚠️ 必须显式判 None:`type(None).__name__` 是字符串 "NoneType"(truthy),
+ 直接拿去做 `in` 判断会误命中。
+ """
+ try:
+ csm = getattr(clip, "cond_stage_model", None)
+ if csm is None:
+ return None
+ return type(csm).__name__
+ except Exception:
+ return None
+
+
+# 底座没有 in-context 参考图通路的模型:一旦接了参考图,出图必然异常。
+# 只登记**实测确认过**的,不按型号名字猜。
+_NO_REF_CAPABILITY = {
+ "ZImage": (
+ "Z-Image(Lumina2 / NextDiT 系)是纯文生图模型,训练时没有参考图 token;"
+ "官方 5 个 z_image 模板里也没有任何「参考图编辑」接法"
+ "(唯一带图输入的是 fun_union_controlnet,走 ControlNet,机制完全不同)。"
+ "接上 image1 后参考图 token 进不了模型(缺配套的 reference_latents_text_embeds),"
+ "实测出图是满屏方块马赛克。\n"
+ " → 纯文生图:断开 image1 即可,模型类型选「SD / SDXL / Z-Image」"
+ "(空 latent 会自动补到 16 通道);\n"
+ " → 要「看图改图」:换 Qwen-Image 2.1 / Krea2 / Flux2 系;\n"
+ " → 要 Z-Image 的图生图:用 VAE Encode + 采样器 denoise < 1 的普通 img2img。"
+ ),
+}
+
+
+_WARNED_NO_REF = set()
+
+
+def _warn_no_ref_capability(clip, n_refs, tag="Ref Image Encode"):
+ """接了参考图、但底座不支持时打一条明确警告。只打印,不改变任何行为。
+
+ 同一个(节点, 编码器类)只打一次:`Ref Independent` 是按图循环调用的,
+ 不去重会刷满日志。
+ """
+ if n_refs <= 0:
+ return
+ te = _te_class_name(clip) or ""
+ for key, msg in _NO_REF_CAPABILITY.items():
+ if key in te:
+ if (tag, te) in _WARNED_NO_REF:
+ return
+ _WARNED_NO_REF.add((tag, te))
+ print(
+ f"\n[Toggle-Pass][{tag}] ⚠️ 文本编码器 = {te},已接入 {n_refs} 张参考图,"
+ f"但这个底座没有参考图通路。\n {msg}\n"
+ f" (本次仍按你的接线执行,以上仅为提示,不修改任何参数)\n"
+ )
+ return
+
+
class DynamicRefImageEncode:
"""
动态 Ref Image Encode 节点,合并原 III/V/X 三个节点。
@@ -212,6 +337,20 @@ class DynamicRefImageEncode:
所有参考图共享同一个 prompt,输出 1 个 conditioning + 1 个 latent。
"""
+ DESCRIPTION = (
+ "一个 prompt + 最多 10 张参考图,输出 CONDITIONING + LATENT + NEGATIVE。"
+ "第三个输出 negative 是空文本负条件,直接接采样器「负面条件」即可,"
+ "CFG 调多高都不会花屏(别再用 ConditioningZeroOut 清零正面当负面)。"
+ "MOSS-Image 与 FIBO 2.0 的 latent 与 Flux2 完全同族(128 通道 / 16x,都用 flux2-vae),"
+ "「模型类型」请直接选 Flux2。若需要 MOSS 的 edit_format(必须与编辑 LoRA 的训练格式配对)"
+ "或 image_strength、FIBO 的 negative_prompt,请改用官方编码器 "
+ "TextEncodeMOSSImageEdit / TextEncodeFibo2。"
+ "—— Krea 2:「模型类型」选 Krea2 就能做编辑(保身份 / 换姿势),不需要 krea2Edit 插件。"
+ "参考图会先 fit 到出图网格再编码,并以 reference_latents_method=index 注入。"
+ "⚠️ 顺序是硬约定:最后一个参考图 = 主体(姿势线稿放 image1、原照片放 image2),"
+ "反过来会渲成线稿人偶。"
+ )
+
@classmethod
def INPUT_TYPES(cls):
opt = {}
@@ -236,7 +375,7 @@ class DynamicRefImageEncode:
},
"optional": {
**opt,
- "模型类型": (["Flux2", "Qwen Layered", "Qwen Image 2.1", "SD / SDXL", "Krea2"], {"default": "Flux2"}),
+ "模型类型": (["Flux2", "Qwen Layered", "Qwen Image 2.1", "SD / SDXL / Z-Image", "Krea2"], {"default": "Flux2"}),
"匹配原图尺寸": (["OFF", "ON"], {"default": "OFF"}),
"输出宽度": ("INT", {"default": 1024, "min": 256, "max": 4096, "step": 8}),
"输出高度": ("INT", {"default": 1024, "min": 256, "max": 4096, "step": 8}),
@@ -251,8 +390,14 @@ class DynamicRefImageEncode:
},
}
- RETURN_TYPES = ("CONDITIONING", "LATENT")
- RETURN_NAMES = ("conditioning", "latent")
+ # ↓ 第三个输出是后加的,追加在末尾 ⇒ 旧工作流的 0/1 号口不受影响
+ # 输出顺序:conditioning / negative / latent
+ # ⚠️ 2026-11-06 调整:`negative` 从末尾挪到 `latent` 前面(纯粹为了节点上好看)。
+ # ⇒ 索引变了(latent: 1 → 2,negative: 2 → 1),所有老工作流的连线索引都失效。
+ # 前端 js/multi_ref_encode.js 的 `migrateOutputOrder()` 会在加载时按
+ # outputs[i].name 判断布局并交换 1/2 号口的连线,两层都改才一致。
+ RETURN_TYPES = ("CONDITIONING", "CONDITIONING", "LATENT")
+ RETURN_NAMES = ("conditioning", "negative", "latent")
FUNCTION = "encode"
CATEGORY = "Toggle-Pass"
@@ -303,9 +448,18 @@ class DynamicRefImageEncode:
device=comfy.model_management.intermediate_device(),
)
elif 模型类型 == "Flux2":
+ # Flux2 latent:128 通道 / 16x 空间压缩(flux2-vae)。
+ # MOSS-Image 与 FIBO 2.0 用的是同一套 latent,这两个模型请直接选 Flux2。
+ # ⚠️ 这里原来写的是 4 通道(SD 的 latent)。只有「一张参考图都不接、
+ # 纯把它当空 latent 源」时才会走到这个分支(接图时走 ref_latents[0]),
+ # 所以一直没暴露;接上 Flux2/moss/fibo 采样会直接通道不匹配。
+ channels = 128
h = height // 16
w = width // 16
- latent = torch.zeros(1, 4, h, w)
+ latent = torch.zeros(
+ [1, channels, h, w],
+ device=comfy.model_management.intermediate_device(),
+ )
else:
h = height // 8
w = width // 8
@@ -320,6 +474,7 @@ class DynamicRefImageEncode:
n = max(1, min(10, int(num_images)))
llama_template = self._get_system_prompt(instruction)
+ 模型类型 = _norm_model_type(模型类型) # 老存档兼容
is_krea2 = (模型类型 == "Krea2")
# 出图分辨率:2.1 用官方 ResolutionSelector 同款(宽高比 + 百万像素 + 倍数);
@@ -375,21 +530,18 @@ class DynamicRefImageEncode:
vl_images.append(rgb)
# 2.1 不加 "Picture N: " 文本前缀(Qwen3-VL 靠占位符,不靠文本)
elif is_krea2:
- # ---- Krea2:照抄官方 TextEncodeQwenImageEditPlus ----
- # 参考图 VAE 缩放到约 1024x1024、对齐 8 的倍数;VAE 只吃 RGB
- # (qwen_image_vae 输入是 3 通道,Krea2 不吃 alpha)
- total = 1024 * 1024
- scale_by = math.sqrt(total / current_total)
- kw = max(8, round(samples.shape[3] * scale_by / 8.0) * 8)
- kh = max(8, round(samples.shape[2] * scale_by / 8.0) * 8)
- if (kw, kh) == (samples.shape[3], samples.shape[2]):
- s = samples
- else:
- s = comfy.utils.common_upscale(samples, kw, kh, "area", "disabled")
+ # ---- Krea2:参考图先 fit 到「出图网格」再 VAE 编码 ----
+ # 原生 krea2 forward 用每张参考图**自己的网格**造位置编码,尺寸与 target
+ # 不一致时模型把它当另一块画布 ⇒ 参考图的线条会被贴进成图(实测症状:
+ # 脸上出现轮廓线)。krea2_edit LoRA 训练时源图就是先 fit 到 target 网格
+ # 再编码的,这里对齐它。VAE 只吃 RGB(qwen_image_vae 3 通道)。
+ if first_tw is None:
+ first_tw, first_th = _krea2_align8(pixel_width), _krea2_align8(pixel_height)
+ s = _krea2_fit_ref(samples, first_tw, first_th, 尺寸适配)
if vae is not None:
ref_latents.append(vae.encode(s.movedim(1, -1)[:, :, :, :3]))
- # 视觉塔:384x384 附近
+ # 视觉塔:384x384 附近(语义 grounding,与潜空间几何无关)
vl_total = 384 * 384
vl_scale = math.sqrt(vl_total / current_total)
s_vl = comfy.utils.common_upscale(
@@ -441,14 +593,23 @@ class DynamicRefImageEncode:
tokens = clip.tokenize(full_prompt, images=vl_images, llama_template=llama_template)
conditioning = clip.encode_from_tokens_scheduled(tokens)
+ _warn_no_ref_capability(clip, len(ref_latents), "Ref Image Encode")
+
if len(ref_latents) > 0:
ref_vals = {"reference_latents": ref_latents}
if is_krea2:
# ⚠️ Krea2 的 default_ref_method 实测是 None,而模型侧写的是
# if ref_method is not None and ref_latents is not None and len(...)
# ⇒ 不显式给方法时参考图会被**静默忽略**(不报错、只是没效果)。
- # 官方风格参考模板用 FluxKontextMultiReferenceLatentMethod 设成 index_timestep_zero。
- ref_vals["reference_latents_method"] = "index_timestep_zero"
+ #
+ # ★★ 方法必须用 "index",不能照官方模板用 "index_timestep_zero":
+ # "index_timestep_zero" 会让参考图 token 走 **t=0 的 adaLN 调制**
+ # (见 comfy/ldm/krea2/model.py SingleStreamBlock.forward 的
+ # timestep_zero_index 分支),target 走当前 t —— 两套调制。
+ # 而 krea2_edit LoRA(ai-toolkit predict_velocity_edit)训练时
+ # 全序列共用**同一个 tvec**,正好对应原生的 "index"(不分裂 tvec)。
+ # 实测:用 timestep_zero 时参考线稿会被"描"进成图(脸上出轮廓线)。
+ ref_vals["reference_latents_method"] = "index"
conditioning = node_helpers.conditioning_set_values(
conditioning,
ref_vals,
@@ -486,7 +647,11 @@ class DynamicRefImageEncode:
else:
latent_out = self._make_empty_latent(模型类型, final_w, final_h, 图层数)
- return (conditioning, latent_out)
+ # 第二/三个输出:空文本负条件 + 采样起点 latent。
+ # 顺序见 RETURN_NAMES —— negative 在前、latent 在后。
+ # CFG=1.0 时负面不参与计算(等价于原来的 ConditioningZeroOut),
+ # CFG>1 时它是唯一正确的接法。
+ return (conditioning, _empty_negative(clip), latent_out)
NODE_CLASS_MAPPINGS = {
@@ -648,7 +813,7 @@ class OneImageMultiPrompt:
"with the original input where appropriate."
),
}),
- "模型类型": (["Flux2", "Qwen Image 2.1", "SD / SDXL", "Krea2"], {"default": "Flux2"}),
+ "模型类型": (["Flux2", "Qwen Image 2.1", "SD / SDXL / Z-Image", "Krea2"], {"default": "Flux2"}),
"匹配原图尺寸": (["OFF", "ON"], {"default": "OFF"}),
"输出宽度": ("INT", {"default": 1024, "min": 256, "max": 4096, "step": 8}),
"输出高度": ("INT", {"default": 1024, "min": 256, "max": 4096, "step": 8}),
@@ -701,6 +866,7 @@ class OneImageMultiPrompt:
n = max(2, min(8, int(prompt数量)))
llama_template = self._get_system_prompt(instruction)
+ 模型类型 = _norm_model_type(模型类型) # 老存档兼容
is_21 = (模型类型 == "Qwen Image 2.1")
is_krea2 = (模型类型 == "Krea2")
@@ -750,7 +916,19 @@ class OneImageMultiPrompt:
# ⚠️ 传了 llama_template 时 Qwen3VL tokenizer 不会自动插视觉占位符
# (只有用内置 llama_template_images 时才自动),必须自己写
# <|vision_start|><|image_pad|><|vision_end|>,否则参考图对模型完全不可见。
- ref_latent, vl_image = _krea2_ref_preprocess(samples, vae)
+ # ★ 参考图先 fit 到出图网格(krea2_edit 训练几何),理由见 _krea2_fit_ref。
+ kw_, kh_ = (_krea2_align8(pixel_width), _krea2_align8(pixel_height))
+ s = _krea2_fit_ref(samples, kw_, kh_, 尺寸适配)
+ ref_latent = vae.encode(s.movedim(1, -1)[:, :, :, :3]) if vae is not None else None
+ vl_total = 384 * 384
+ vl_scale = math.sqrt(vl_total / current_total)
+ s_vl = comfy.utils.common_upscale(
+ samples,
+ max(8, round(samples.shape[3] * vl_scale)),
+ max(8, round(samples.shape[2] * vl_scale)),
+ "area", "disabled",
+ )
+ vl_image = s_vl.movedim(1, -1)
image_prompt = "Picture 1: " + KREA2_VISION_TOKEN
else:
# VAE 编码参考图(图生图用)
@@ -789,12 +967,17 @@ class OneImageMultiPrompt:
tokens = clip.tokenize(image_prompt + p, images=[vl_image], llama_template=llama_template)
cond = clip.encode_from_tokens_scheduled(tokens)
+ _warn_no_ref_capability(clip, 0 if ref_latent is None else 1, "一图多Prompt")
+
if ref_latent is not None:
ref_vals = {"reference_latents": [ref_latent]}
if is_krea2:
# Krea2 的 default_ref_method 是 None ⇒ 不显式给方法时参考图会被
- # 静默忽略(不报错、只是没效果)。官方风格模板用 index_timestep_zero。
- ref_vals["reference_latents_method"] = "index_timestep_zero"
+ # 静默忽略(不报错、只是没效果)。
+ # ★★ 必须用 "index" 而非 "index_timestep_zero":后者给参考图单独
+ # 一套 t=0 的 adaLN 调制,与 krea2_edit LoRA 的训练(全序列同一
+ # tvec)不符,实测会把参考线稿"描"进成图。详见 DynamicRefImageEncode。
+ ref_vals["reference_latents_method"] = "index"
cond = node_helpers.conditioning_set_values(
cond,
ref_vals,
@@ -829,11 +1012,19 @@ class OneImageMultiPrompt:
elif ref_latent is not None:
latent_out = {"samples": ref_latent}
else:
- # 纯文生图
- scale = 16 if 模型类型 == "Flux2" else 8
+ # 纯文生图:通道数必须跟模型一致。
+ # Flux2(以及同族的 MOSS-Image / FIBO 2.0)是 128 通道 / 16x,SD 是 4 通道 / 8x。
+ # 原来不分类型一律 4 通道,接 Flux2 采样会直接通道不匹配。
+ if 模型类型 == "Flux2":
+ scale, channels = 16, 128
+ else:
+ scale, channels = 8, 4
lw = 输出宽度 // scale
lh = 输出高度 // scale
- latent_out = {"samples": torch.zeros(1, 4, lh, lw)}
+ latent_out = {"samples": torch.zeros(
+ [1, channels, lh, lw],
+ device=comfy.model_management.intermediate_device(),
+ )}
# 补齐到 8 个 conditioning(未使用的填空 conditioning)
while len(results) < 8:
@@ -892,7 +1083,7 @@ class DynamicRefIndependent:
},
"optional": {
**opt,
- "模型类型": (["Flux2", "Qwen Layered", "Qwen Image 2.1", "SD / SDXL", "Krea2"], {"default": "Flux2"}),
+ "模型类型": (["Flux2", "Qwen Layered", "Qwen Image 2.1", "SD / SDXL / Z-Image", "Krea2"], {"default": "Flux2"}),
"匹配原图尺寸": (["OFF", "ON"], {"default": "OFF"}),
"输出宽度": ("INT", {"default": 1024, "min": 256, "max": 4096, "step": 8}),
"输出高度": ("INT", {"default": 1024, "min": 256, "max": 4096, "step": 8}),
@@ -944,8 +1135,17 @@ class DynamicRefIndependent:
尺寸适配="参考图保比例", **kwargs):
n = max(1, min(10, int(num_images)))
llama_template = self._get_system_prompt(instruction)
+ 模型类型 = _norm_model_type(模型类型) # 老存档兼容
is_21 = (模型类型 == "Qwen Image 2.1")
is_krea2 = (模型类型 == "Krea2")
+ if is_krea2 and n > 1:
+ # 本节点把每张图编进各自独立的 conditioning(Qwen 2.1 的每图独立 index 平面那套设计)。
+ # Krea2 需要的是「一条连贯的参考序列」:合并多个独立 conditioning 后,
+ # reference_latents 的 frame 语义会乱 —— 实测线稿残留 + 姿势跑偏,而且不报错。
+ print("[Toggle-Pass] ⚠️ DynamicRefIndependent 在 Krea2 多图下不可靠:多图请改用 "
+ "Ref Image Encode(DynamicRefImageEncode),一个节点就能带上多张参考图。",
+ flush=True)
+
conds = []
latents = [] # 每张图自己的 latent
first_latent = None # 第一张非空图的 latent,用于共享 latent_out
@@ -1012,7 +1212,18 @@ class DynamicRefIndependent:
final_w = _krea2_align8(samples.shape[3])
final_h = _krea2_align8(samples.shape[2])
size_locked = True
- img_latent, vl_image = _krea2_ref_preprocess(samples, vae)
+ # ★ 参考图先 fit 到出图网格(krea2_edit 训练几何),理由见 _krea2_fit_ref
+ s_k = _krea2_fit_ref(samples, final_w, final_h, 尺寸适配)
+ img_latent = vae.encode(s_k.movedim(1, -1)[:, :, :, :3]) if vae is not None else None
+ vl_total = 384 * 384
+ vl_scale = math.sqrt(vl_total / current_total)
+ s_vl = comfy.utils.common_upscale(
+ samples,
+ max(8, round(samples.shape[3] * vl_scale)),
+ max(8, round(samples.shape[2] * vl_scale)),
+ "area", "disabled",
+ )
+ vl_image = s_vl.movedim(1, -1)
if img_latent is not None and first_latent is None:
first_latent = img_latent
else:
@@ -1051,12 +1262,17 @@ class DynamicRefIndependent:
cond = clip.encode_from_tokens_scheduled(tokens)
# ---- 每张图的 conditioning 绑定自己的 latent ----
+ _warn_no_ref_capability(clip, 0 if img_latent is None else 1, "Ref Independent")
+
if img_latent is not None:
ref_vals = {"reference_latents": [img_latent]}
if is_krea2:
# Krea2 的 default_ref_method 是 None ⇒ 不显式给方法时参考图会被
- # 静默忽略(不报错、只是没效果)。官方风格模板用 index_timestep_zero。
- ref_vals["reference_latents_method"] = "index_timestep_zero"
+ # 静默忽略(不报错、只是没效果)。
+ # ★★ 必须用 "index" 而非 "index_timestep_zero":后者给参考图单独
+ # 一套 t=0 的 adaLN 调制,与 krea2_edit LoRA 的训练(全序列同一
+ # tvec)不符,实测会把参考线稿"描"进成图。
+ ref_vals["reference_latents_method"] = "index"
cond = node_helpers.conditioning_set_values(
cond,
ref_vals,
@@ -1094,7 +1310,17 @@ class DynamicRefIndependent:
elif is_krea2:
latent_out = _krea2_empty_latent(final_w, final_h)
elif first_latent is None:
- latent_out = {"samples": torch.zeros(1, 4, 1, 1)}
+ # 一张图都没接:给一个与模型匹配的空 latent。
+ # 原来固定 4 通道 1×1 —— KSampler 的 fix_empty_latent_channels 会把它补成
+ # (1, 128, 1, 1) 并照常采样,最后解码出一张 16×16 的废图(不报错,很难查)。
+ if 模型类型 == "Flux2":
+ scale, channels = 16, 128
+ else:
+ scale, channels = 8, 4
+ latent_out = {"samples": torch.zeros(
+ [1, channels, max(1, 输出高度 // scale), max(1, 输出宽度 // scale)],
+ device=comfy.model_management.intermediate_device(),
+ )}
else:
latent_out = {"samples": first_latent}
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_仰视.webp
new file mode 100644
index 0000000..d9578f8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_侧面.webp
new file mode 100644
index 0000000..49d1165
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_俯视.webp
new file mode 100644
index 0000000..1efd63d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_斜侧.webp
new file mode 100644
index 0000000..18b6745
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_正面.webp
new file mode 100644
index 0000000..84bb37e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P001_胸前双手比心/P001_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_仰视.webp
new file mode 100644
index 0000000..717d03b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_侧面.webp
new file mode 100644
index 0000000..4dc6192
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_俯视.webp
new file mode 100644
index 0000000..524434d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_斜侧.webp
new file mode 100644
index 0000000..60dac23
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_正面.webp
new file mode 100644
index 0000000..c339e3b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P002_头顶双臂比心/P002_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_仰视.webp
new file mode 100644
index 0000000..665a9d5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_侧面.webp
new file mode 100644
index 0000000..b26415a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_俯视.webp
new file mode 100644
index 0000000..47349da
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_斜侧.webp
new file mode 100644
index 0000000..0cee6a0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_正面.webp
new file mode 100644
index 0000000..c2fd50f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P003_脸侧手指比心/P003_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_仰视.webp
new file mode 100644
index 0000000..6133291
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_侧面.webp
new file mode 100644
index 0000000..3c83d89
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_俯视.webp
new file mode 100644
index 0000000..78eded8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_斜侧.webp
new file mode 100644
index 0000000..1529959
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_正面.webp
new file mode 100644
index 0000000..a047f50
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P004_下巴下比双V/P004_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_仰视.webp
new file mode 100644
index 0000000..9e4b800
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_侧面.webp
new file mode 100644
index 0000000..ce54776
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_俯视.webp
new file mode 100644
index 0000000..ad5cca6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_斜侧.webp
new file mode 100644
index 0000000..a8a1338
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_正面.webp
new file mode 100644
index 0000000..bde06e8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_仰视.webp
new file mode 100644
index 0000000..bbf4270
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_侧面.webp
new file mode 100644
index 0000000..660b421
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_俯视.webp
new file mode 100644
index 0000000..6344a2b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_斜侧.webp
new file mode 100644
index 0000000..5e556ec
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_正面.webp
new file mode 100644
index 0000000..afd37f4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_仰视.webp
new file mode 100644
index 0000000..5410086
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_侧面.webp
new file mode 100644
index 0000000..7eb87c9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_俯视.webp
new file mode 100644
index 0000000..a7ad504
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_斜侧.webp
new file mode 100644
index 0000000..29bdb1e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_正面.webp
new file mode 100644
index 0000000..9a98feb
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P007_兔耳手势/P007_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_仰视.webp
new file mode 100644
index 0000000..cd46d15
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_侧面.webp
new file mode 100644
index 0000000..eaa2a19
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_俯视.webp
new file mode 100644
index 0000000..300ac6e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_斜侧.webp
new file mode 100644
index 0000000..3a2a94d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_正面.webp
new file mode 100644
index 0000000..b71c6f6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P008_招财猫猫爪手势/P008_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_仰视.webp
new file mode 100644
index 0000000..71e62d8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_侧面.webp
new file mode 100644
index 0000000..bd35bd1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_俯视.webp
new file mode 100644
index 0000000..5abd167
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_斜侧.webp
new file mode 100644
index 0000000..cf9f4c2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_正面.webp
new file mode 100644
index 0000000..a205914
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_仰视.webp
new file mode 100644
index 0000000..234eda8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_侧面.webp
new file mode 100644
index 0000000..7993276
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_俯视.webp
new file mode 100644
index 0000000..40b54d4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_斜侧.webp
new file mode 100644
index 0000000..18b629b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_正面.webp
new file mode 100644
index 0000000..359df81
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_仰视.webp
new file mode 100644
index 0000000..3a16cb0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_侧面.webp
new file mode 100644
index 0000000..731ff57
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_俯视.webp
new file mode 100644
index 0000000..59a2fc4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_斜侧.webp
new file mode 100644
index 0000000..2be41c1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_正面.webp
new file mode 100644
index 0000000..ecbb46c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_仰视.webp
new file mode 100644
index 0000000..3d10429
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_侧面.webp
new file mode 100644
index 0000000..f5979c5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_俯视.webp
new file mode 100644
index 0000000..c70e0da
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_斜侧.webp
new file mode 100644
index 0000000..2e6e4b6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_正面.webp
new file mode 100644
index 0000000..436c792
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P012_飞吻/P012_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_仰视.webp
new file mode 100644
index 0000000..08ee716
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_侧面.webp
new file mode 100644
index 0000000..c0ff110
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_俯视.webp
new file mode 100644
index 0000000..e71a92e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_斜侧.webp
new file mode 100644
index 0000000..9562202
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_正面.webp
new file mode 100644
index 0000000..c7d9bc9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_仰视.webp
new file mode 100644
index 0000000..00201ff
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_侧面.webp
new file mode 100644
index 0000000..f7e78ee
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_俯视.webp
new file mode 100644
index 0000000..f57e1af
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_斜侧.webp
new file mode 100644
index 0000000..6d10bff
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_正面.webp
new file mode 100644
index 0000000..7db7f01
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P014_食指戳脸/P014_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_仰视.webp
new file mode 100644
index 0000000..f1be362
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_侧面.webp
new file mode 100644
index 0000000..2ea013f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_俯视.webp
new file mode 100644
index 0000000..28cc717
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_斜侧.webp
new file mode 100644
index 0000000..7d88227
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_正面.webp
new file mode 100644
index 0000000..a00b6ed
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_仰视.webp
new file mode 100644
index 0000000..0128360
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_侧面.webp
new file mode 100644
index 0000000..1c7d641
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_俯视.webp
new file mode 100644
index 0000000..456dcba
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_斜侧.webp
new file mode 100644
index 0000000..2ea9f43
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_正面.webp
new file mode 100644
index 0000000..519145a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_仰视.webp
new file mode 100644
index 0000000..befaa42
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_侧面.webp
new file mode 100644
index 0000000..da46d29
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_俯视.webp
new file mode 100644
index 0000000..620ec05
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_斜侧.webp
new file mode 100644
index 0000000..c1c1169
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_正面.webp
new file mode 100644
index 0000000..b158558
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_仰视.webp
new file mode 100644
index 0000000..febfca3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_侧面.webp
new file mode 100644
index 0000000..d144f42
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_俯视.webp
new file mode 100644
index 0000000..676b139
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_斜侧.webp
new file mode 100644
index 0000000..e4aac2d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_正面.webp
new file mode 100644
index 0000000..563fd2b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P018_手指取景框/P018_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_仰视.webp
new file mode 100644
index 0000000..23cae60
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_侧面.webp
new file mode 100644
index 0000000..a81798c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_俯视.webp
new file mode 100644
index 0000000..8fd496e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_斜侧.webp
new file mode 100644
index 0000000..1851dcc
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_正面.webp
new file mode 100644
index 0000000..437c3a0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P019_将发丝挽至耳后/P019_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_仰视.webp
new file mode 100644
index 0000000..e253b11
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_侧面.webp
new file mode 100644
index 0000000..7acea4c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_俯视.webp
new file mode 100644
index 0000000..7a82ee6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_斜侧.webp
new file mode 100644
index 0000000..e062f19
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_正面.webp
new file mode 100644
index 0000000..167dce4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P020_双手捧脸/P020_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_仰视.webp
new file mode 100644
index 0000000..1c2b082
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_侧面.webp
new file mode 100644
index 0000000..e773bc1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_俯视.webp
new file mode 100644
index 0000000..e4fe743
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_斜侧.webp
new file mode 100644
index 0000000..ee041e0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_正面.webp
new file mode 100644
index 0000000..10e7ebe
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P021_敬礼姿势/P021_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_仰视.webp
new file mode 100644
index 0000000..0bf529f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_侧面.webp
new file mode 100644
index 0000000..f4287e3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_俯视.webp
new file mode 100644
index 0000000..a3f1b27
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_斜侧.webp
new file mode 100644
index 0000000..467f3fd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_正面.webp
new file mode 100644
index 0000000..4a4b71f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P022_手指镜头/P022_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_仰视.webp
new file mode 100644
index 0000000..ca8ccd9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_侧面.webp
new file mode 100644
index 0000000..163f02c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_俯视.webp
new file mode 100644
index 0000000..d2a9487
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_斜侧.webp
new file mode 100644
index 0000000..c4f146e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_正面.webp
new file mode 100644
index 0000000..8aef99a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_仰视.webp
new file mode 100644
index 0000000..4f4505b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_侧面.webp
new file mode 100644
index 0000000..9c6d04c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_俯视.webp
new file mode 100644
index 0000000..2210db0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_斜侧.webp
new file mode 100644
index 0000000..024ac4a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_正面.webp
new file mode 100644
index 0000000..411bfaa
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_仰视.webp
new file mode 100644
index 0000000..86bab0f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_侧面.webp
new file mode 100644
index 0000000..dd17823
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_俯视.webp
new file mode 100644
index 0000000..4ff7258
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_斜侧.webp
new file mode 100644
index 0000000..0b80779
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_正面.webp
new file mode 100644
index 0000000..03ebed2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/可爱系/P025_从双手指缝间窥视/P025_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_仰视.webp
new file mode 100644
index 0000000..306f155
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_侧面.webp
new file mode 100644
index 0000000..bafd317
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_俯视.webp
new file mode 100644
index 0000000..4fd8e1a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_斜侧.webp
new file mode 100644
index 0000000..743f7da
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_正面.webp
new file mode 100644
index 0000000..1b2782e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P051_双手捧胸/P051_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_仰视.webp
new file mode 100644
index 0000000..f744a32
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_侧面.webp
new file mode 100644
index 0000000..68fcebf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_俯视.webp
new file mode 100644
index 0000000..27c075c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_斜侧.webp
new file mode 100644
index 0000000..ba70213
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_正面.webp
new file mode 100644
index 0000000..eed6b67
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P052_双手揉胸/P052_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_仰视.webp
new file mode 100644
index 0000000..24ece02
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_侧面.webp
new file mode 100644
index 0000000..e0ae330
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_俯视.webp
new file mode 100644
index 0000000..043c39f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_斜侧.webp
new file mode 100644
index 0000000..8bf105a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_正面.webp
new file mode 100644
index 0000000..fdd2b82
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_仰视.webp
new file mode 100644
index 0000000..70af22a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_侧面.webp
new file mode 100644
index 0000000..ce06a5d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_俯视.webp
new file mode 100644
index 0000000..ad098d6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_斜侧.webp
new file mode 100644
index 0000000..a873cc5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_正面.webp
new file mode 100644
index 0000000..381b5a2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_仰视.webp
new file mode 100644
index 0000000..32e3a37
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_侧面.webp
new file mode 100644
index 0000000..e2ee9f5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_俯视.webp
new file mode 100644
index 0000000..ecd0a69
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_斜侧.webp
new file mode 100644
index 0000000..9457992
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_正面.webp
new file mode 100644
index 0000000..9ca3be5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_仰视.webp
new file mode 100644
index 0000000..d12f103
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_侧面.webp
new file mode 100644
index 0000000..323fdbb
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_俯视.webp
new file mode 100644
index 0000000..edbe16e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_斜侧.webp
new file mode 100644
index 0000000..5eadb82
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_正面.webp
new file mode 100644
index 0000000..83d5c30
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_仰视.webp
new file mode 100644
index 0000000..68f3448
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_侧面.webp
new file mode 100644
index 0000000..f25f99b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_俯视.webp
new file mode 100644
index 0000000..8430aa3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_斜侧.webp
new file mode 100644
index 0000000..cac5806
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_正面.webp
new file mode 100644
index 0000000..bf5c2bf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_仰视.webp
new file mode 100644
index 0000000..0e7d541
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_侧面.webp
new file mode 100644
index 0000000..faa1552
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_俯视.webp
new file mode 100644
index 0000000..8c9710e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_斜侧.webp
new file mode 100644
index 0000000..0f91c0f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_正面.webp
new file mode 100644
index 0000000..f3bd223
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_仰视.webp
new file mode 100644
index 0000000..222f182
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_侧面.webp
new file mode 100644
index 0000000..41d8fde
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_俯视.webp
new file mode 100644
index 0000000..8417a01
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_斜侧.webp
new file mode 100644
index 0000000..69df7e4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_正面.webp
new file mode 100644
index 0000000..7e3761a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_仰视.webp
new file mode 100644
index 0000000..ca1f0ad
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_侧面.webp
new file mode 100644
index 0000000..b6c66c1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_俯视.webp
new file mode 100644
index 0000000..b47bc97
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_斜侧.webp
new file mode 100644
index 0000000..1f53802
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_正面.webp
new file mode 100644
index 0000000..659f647
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_仰视.webp
new file mode 100644
index 0000000..3469655
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_侧面.webp
new file mode 100644
index 0000000..5904028
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_俯视.webp
new file mode 100644
index 0000000..4856707
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_斜侧.webp
new file mode 100644
index 0000000..2599b5a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_正面.webp
new file mode 100644
index 0000000..c4c3a21
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_仰视.webp
new file mode 100644
index 0000000..1dabbfb
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_侧面.webp
new file mode 100644
index 0000000..9e10c21
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_俯视.webp
new file mode 100644
index 0000000..bff772a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_斜侧.webp
new file mode 100644
index 0000000..6e7804a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_正面.webp
new file mode 100644
index 0000000..4a6d6a1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_仰视.webp
new file mode 100644
index 0000000..0eb0321
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_侧面.webp
new file mode 100644
index 0000000..a008b35
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_俯视.webp
new file mode 100644
index 0000000..b5bd72b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_斜侧.webp
new file mode 100644
index 0000000..511ad94
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_正面.webp
new file mode 100644
index 0000000..ac97961
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_仰视.webp
new file mode 100644
index 0000000..2b420de
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_侧面.webp
new file mode 100644
index 0000000..11139a1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_俯视.webp
new file mode 100644
index 0000000..7e59372
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_斜侧.webp
new file mode 100644
index 0000000..bf6fce4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_正面.webp
new file mode 100644
index 0000000..1cfd7d0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_仰视.webp
new file mode 100644
index 0000000..9f01459
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_侧面.webp
new file mode 100644
index 0000000..a2f43c9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_俯视.webp
new file mode 100644
index 0000000..db807e9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_斜侧.webp
new file mode 100644
index 0000000..1f6ac20
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_正面.webp
new file mode 100644
index 0000000..64aa876
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_仰视.webp
new file mode 100644
index 0000000..ca83493
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_侧面.webp
new file mode 100644
index 0000000..6fbb2f1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_俯视.webp
new file mode 100644
index 0000000..7758f97
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_斜侧.webp
new file mode 100644
index 0000000..efaad4c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_正面.webp
new file mode 100644
index 0000000..841a69c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_仰视.webp
new file mode 100644
index 0000000..78c4b89
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_侧面.webp
new file mode 100644
index 0000000..d23e7cc
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_俯视.webp
new file mode 100644
index 0000000..43e5ee2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_斜侧.webp
new file mode 100644
index 0000000..d126650
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_正面.webp
new file mode 100644
index 0000000..e89cecb
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_仰视.webp
new file mode 100644
index 0000000..2df516b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_侧面.webp
new file mode 100644
index 0000000..37fb7ae
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_俯视.webp
new file mode 100644
index 0000000..f84bd4d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_斜侧.webp
new file mode 100644
index 0000000..8d10b34
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_正面.webp
new file mode 100644
index 0000000..4ec7b00
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_仰视.webp
new file mode 100644
index 0000000..7b96083
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_侧面.webp
new file mode 100644
index 0000000..d0092d7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_俯视.webp
new file mode 100644
index 0000000..147f48e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_斜侧.webp
new file mode 100644
index 0000000..d024a17
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_正面.webp
new file mode 100644
index 0000000..7247c28
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_仰视.webp
new file mode 100644
index 0000000..28a0705
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_侧面.webp
new file mode 100644
index 0000000..30701ea
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_俯视.webp
new file mode 100644
index 0000000..b92e07d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_斜侧.webp
new file mode 100644
index 0000000..ca4c4c7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_正面.webp
new file mode 100644
index 0000000..6ad709e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P070_手指含于唇边/P070_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_仰视.webp
new file mode 100644
index 0000000..6dcef4c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_侧面.webp
new file mode 100644
index 0000000..b890017
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_俯视.webp
new file mode 100644
index 0000000..bb84718
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_斜侧.webp
new file mode 100644
index 0000000..f298206
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_正面.webp
new file mode 100644
index 0000000..b78a174
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_仰视.webp
new file mode 100644
index 0000000..dd42042
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_侧面.webp
new file mode 100644
index 0000000..b9e6954
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_俯视.webp
new file mode 100644
index 0000000..7daf601
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_斜侧.webp
new file mode 100644
index 0000000..63789b7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_正面.webp
new file mode 100644
index 0000000..50e77c4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_仰视.webp
new file mode 100644
index 0000000..b556c15
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_侧面.webp
new file mode 100644
index 0000000..e46d002
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_俯视.webp
new file mode 100644
index 0000000..2b2c5a6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_斜侧.webp
new file mode 100644
index 0000000..c62045c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_正面.webp
new file mode 100644
index 0000000..4a4cd5e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_仰视.webp
new file mode 100644
index 0000000..be83a09
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_侧面.webp
new file mode 100644
index 0000000..67c9576
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_俯视.webp
new file mode 100644
index 0000000..538d158
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_斜侧.webp
new file mode 100644
index 0000000..67b6b9c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_正面.webp
new file mode 100644
index 0000000..21579ed
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_仰视.webp
new file mode 100644
index 0000000..212f789
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_侧面.webp
new file mode 100644
index 0000000..5c70b34
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_俯视.webp
new file mode 100644
index 0000000..c698abe
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_斜侧.webp
new file mode 100644
index 0000000..d4ac6b0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_正面.webp
new file mode 100644
index 0000000..d0e7a28
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_仰视.webp
new file mode 100644
index 0000000..fcd0e3f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_侧面.webp
new file mode 100644
index 0000000..e2a6c18
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_俯视.webp
new file mode 100644
index 0000000..49bd5b5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_斜侧.webp
new file mode 100644
index 0000000..f43d307
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_正面.webp
new file mode 100644
index 0000000..3358c58
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_仰视.webp
new file mode 100644
index 0000000..362bef9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_侧面.webp
new file mode 100644
index 0000000..35af5fa
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_俯视.webp
new file mode 100644
index 0000000..6769aa7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_斜侧.webp
new file mode 100644
index 0000000..aa87c57
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_正面.webp
new file mode 100644
index 0000000..17621df
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_仰视.webp
new file mode 100644
index 0000000..05156b3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_侧面.webp
new file mode 100644
index 0000000..4dbf473
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_俯视.webp
new file mode 100644
index 0000000..c5c9ae8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_斜侧.webp
new file mode 100644
index 0000000..5a5d9b3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_正面.webp
new file mode 100644
index 0000000..1d7021e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_仰视.webp
new file mode 100644
index 0000000..327355a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_侧面.webp
new file mode 100644
index 0000000..6060e2a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_俯视.webp
new file mode 100644
index 0000000..908423c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_斜侧.webp
new file mode 100644
index 0000000..77ffed2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_正面.webp
new file mode 100644
index 0000000..25da84d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_仰视.webp
new file mode 100644
index 0000000..aa090e5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_侧面.webp
new file mode 100644
index 0000000..c5a4ceb
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_俯视.webp
new file mode 100644
index 0000000..50b2013
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_斜侧.webp
new file mode 100644
index 0000000..0ad005b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_正面.webp
new file mode 100644
index 0000000..a933b4e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_仰视.webp
new file mode 100644
index 0000000..e8d80ee
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_侧面.webp
new file mode 100644
index 0000000..8413a01
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_俯视.webp
new file mode 100644
index 0000000..b1be94c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_斜侧.webp
new file mode 100644
index 0000000..29d0527
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_正面.webp
new file mode 100644
index 0000000..6e98611
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_仰视.webp
new file mode 100644
index 0000000..a72eced
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_侧面.webp
new file mode 100644
index 0000000..f31569d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_俯视.webp
new file mode 100644
index 0000000..177348e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_斜侧.webp
new file mode 100644
index 0000000..e7af156
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_正面.webp
new file mode 100644
index 0000000..00a835a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_仰视.webp
new file mode 100644
index 0000000..1a0f626
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_侧面.webp
new file mode 100644
index 0000000..1440546
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_俯视.webp
new file mode 100644
index 0000000..275d6e6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_斜侧.webp
new file mode 100644
index 0000000..1ab92cd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_正面.webp
new file mode 100644
index 0000000..c83f3ea
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_仰视.webp
new file mode 100644
index 0000000..31c2606
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_侧面.webp
new file mode 100644
index 0000000..e93ee55
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_俯视.webp
new file mode 100644
index 0000000..8b13522
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_斜侧.webp
new file mode 100644
index 0000000..9cc5d6a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_正面.webp
new file mode 100644
index 0000000..7609409
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_仰视.webp
new file mode 100644
index 0000000..65dad5c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_侧面.webp
new file mode 100644
index 0000000..4bc4d56
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_俯视.webp
new file mode 100644
index 0000000..dad7e5d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_斜侧.webp
new file mode 100644
index 0000000..727e2ec
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_正面.webp
new file mode 100644
index 0000000..5510faa
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_仰视.webp
new file mode 100644
index 0000000..d3f95df
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_侧面.webp
new file mode 100644
index 0000000..95fd997
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_俯视.webp
new file mode 100644
index 0000000..6f890e5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_斜侧.webp
new file mode 100644
index 0000000..f3fb5e7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_正面.webp
new file mode 100644
index 0000000..773c068
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_仰视.webp
new file mode 100644
index 0000000..bba06fd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_侧面.webp
new file mode 100644
index 0000000..08c081d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_俯视.webp
new file mode 100644
index 0000000..a65f653
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_斜侧.webp
new file mode 100644
index 0000000..d0dda49
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_正面.webp
new file mode 100644
index 0000000..30c24e0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_仰视.webp
new file mode 100644
index 0000000..7ef2d35
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_侧面.webp
new file mode 100644
index 0000000..e91d39c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_俯视.webp
new file mode 100644
index 0000000..b3bb4cf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_斜侧.webp
new file mode 100644
index 0000000..cf09ac7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_正面.webp
new file mode 100644
index 0000000..8bf4fa3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_仰视.webp
new file mode 100644
index 0000000..fcf6366
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_侧面.webp
new file mode 100644
index 0000000..af0641c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_俯视.webp
new file mode 100644
index 0000000..dd113ff
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_斜侧.webp
new file mode 100644
index 0000000..2cd143b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_正面.webp
new file mode 100644
index 0000000..a81b97f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_仰视.webp
new file mode 100644
index 0000000..31a1b31
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_侧面.webp
new file mode 100644
index 0000000..cac2260
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_俯视.webp
new file mode 100644
index 0000000..1ebacdf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_斜侧.webp
new file mode 100644
index 0000000..db4bbb7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_正面.webp
new file mode 100644
index 0000000..f2fcb30
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_仰视.webp
new file mode 100644
index 0000000..987d0e8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_侧面.webp
new file mode 100644
index 0000000..d41d56d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_俯视.webp
new file mode 100644
index 0000000..22f284b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_斜侧.webp
new file mode 100644
index 0000000..609d6ac
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_正面.webp
new file mode 100644
index 0000000..5c5ca90
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_仰视.webp
new file mode 100644
index 0000000..45a668b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_侧面.webp
new file mode 100644
index 0000000..3240077
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_俯视.webp
new file mode 100644
index 0000000..ec2e842
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_斜侧.webp
new file mode 100644
index 0000000..bb31a46
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_正面.webp
new file mode 100644
index 0000000..27cce55
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_仰视.webp
new file mode 100644
index 0000000..a300aa1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_侧面.webp
new file mode 100644
index 0000000..8994126
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_俯视.webp
new file mode 100644
index 0000000..bd282b4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_斜侧.webp
new file mode 100644
index 0000000..9acea25
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_正面.webp
new file mode 100644
index 0000000..7e1f00e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_仰视.webp
new file mode 100644
index 0000000..e6de35d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_侧面.webp
new file mode 100644
index 0000000..d69c172
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_俯视.webp
new file mode 100644
index 0000000..6ed2d42
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_斜侧.webp
new file mode 100644
index 0000000..0e123ad
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_正面.webp
new file mode 100644
index 0000000..b666bd9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_仰视.webp
new file mode 100644
index 0000000..d8dd98a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_侧面.webp
new file mode 100644
index 0000000..e7c0b8b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_俯视.webp
new file mode 100644
index 0000000..2b62661
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_斜侧.webp
new file mode 100644
index 0000000..8a5a282
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_正面.webp
new file mode 100644
index 0000000..4a0ab56
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_仰视.webp
new file mode 100644
index 0000000..d85f9d7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_侧面.webp
new file mode 100644
index 0000000..defecbc
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_俯视.webp
new file mode 100644
index 0000000..7f01f31
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_斜侧.webp
new file mode 100644
index 0000000..a64b640
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_正面.webp
new file mode 100644
index 0000000..a8597ad
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_仰视.webp
new file mode 100644
index 0000000..1f17426
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_侧面.webp
new file mode 100644
index 0000000..f6e5f67
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_俯视.webp
new file mode 100644
index 0000000..a7aee89
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_斜侧.webp
new file mode 100644
index 0000000..b581b75
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_正面.webp
new file mode 100644
index 0000000..01843a5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_仰视.webp
new file mode 100644
index 0000000..8aa1159
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_侧面.webp
new file mode 100644
index 0000000..cbc8913
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_俯视.webp
new file mode 100644
index 0000000..c7c5a1d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_斜侧.webp
new file mode 100644
index 0000000..4c6b049
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_正面.webp
new file mode 100644
index 0000000..872b2ae
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_仰视.webp
new file mode 100644
index 0000000..113f4f5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_侧面.webp
new file mode 100644
index 0000000..eed22f9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_俯视.webp
new file mode 100644
index 0000000..2b30556
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_斜侧.webp
new file mode 100644
index 0000000..92d5634
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_正面.webp
new file mode 100644
index 0000000..e6174fa
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_仰视.webp
new file mode 100644
index 0000000..d3dbbe2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_侧面.webp
new file mode 100644
index 0000000..ce99bd2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_俯视.webp
new file mode 100644
index 0000000..c0aa25b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_斜侧.webp
new file mode 100644
index 0000000..86d9bd8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_正面.webp
new file mode 100644
index 0000000..ca04a5e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_仰视.webp
new file mode 100644
index 0000000..376dd3b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_侧面.webp
new file mode 100644
index 0000000..37eaf2e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_俯视.webp
new file mode 100644
index 0000000..483ae63
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_斜侧.webp
new file mode 100644
index 0000000..fc66b46
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_正面.webp
new file mode 100644
index 0000000..8bb7031
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_仰视.webp
new file mode 100644
index 0000000..a0c7520
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_侧面.webp
new file mode 100644
index 0000000..6ced252
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_俯视.webp
new file mode 100644
index 0000000..c4a0309
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_斜侧.webp
new file mode 100644
index 0000000..4f0d8d9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_正面.webp
new file mode 100644
index 0000000..63b7d65
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_仰视.webp
new file mode 100644
index 0000000..4dbf2dd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_侧面.webp
new file mode 100644
index 0000000..a9b1fdb
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_俯视.webp
new file mode 100644
index 0000000..1a6ac6e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_斜侧.webp
new file mode 100644
index 0000000..3651d6d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_正面.webp
new file mode 100644
index 0000000..5ce8fe5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_仰视.webp
new file mode 100644
index 0000000..49c5ea6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_侧面.webp
new file mode 100644
index 0000000..9496017
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_俯视.webp
new file mode 100644
index 0000000..3d57900
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_斜侧.webp
new file mode 100644
index 0000000..e117513
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_正面.webp
new file mode 100644
index 0000000..0d1efc2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_仰视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_仰视.webp
new file mode 100644
index 0000000..42fc662
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_侧面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_侧面.webp
new file mode 100644
index 0000000..178336f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_俯视.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_俯视.webp
new file mode 100644
index 0000000..3a98ba7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_斜侧.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_斜侧.webp
new file mode 100644
index 0000000..691f2a0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_正面.webp b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_正面.webp
new file mode 100644
index 0000000..8a91671
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_仰视.webp
new file mode 100644
index 0000000..25e62d0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_侧面.webp
new file mode 100644
index 0000000..b689bd3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_俯视.webp
new file mode 100644
index 0000000..524d5a2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_斜侧.webp
new file mode 100644
index 0000000..9c4fbf9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_正面.webp
new file mode 100644
index 0000000..3e186ab
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_仰视.webp
new file mode 100644
index 0000000..281ea57
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_侧面.webp
new file mode 100644
index 0000000..87e560e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_俯视.webp
new file mode 100644
index 0000000..1107578
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_斜侧.webp
new file mode 100644
index 0000000..5f84238
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_正面.webp
new file mode 100644
index 0000000..6d999b4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_仰视.webp
new file mode 100644
index 0000000..7e257e2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_侧面.webp
new file mode 100644
index 0000000..ebb13d4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_俯视.webp
new file mode 100644
index 0000000..a545f77
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_斜侧.webp
new file mode 100644
index 0000000..1127a8e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_正面.webp
new file mode 100644
index 0000000..e425c55
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_仰视.webp
new file mode 100644
index 0000000..eb3136e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_侧面.webp
new file mode 100644
index 0000000..3181d94
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_俯视.webp
new file mode 100644
index 0000000..56623a2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_斜侧.webp
new file mode 100644
index 0000000..1bc4951
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_正面.webp
new file mode 100644
index 0000000..b5943e2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_仰视.webp
new file mode 100644
index 0000000..89156d5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_侧面.webp
new file mode 100644
index 0000000..520cfda
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_俯视.webp
new file mode 100644
index 0000000..9ec819c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_斜侧.webp
new file mode 100644
index 0000000..a9c7b68
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_正面.webp
new file mode 100644
index 0000000..0f9c1c2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_仰视.webp
new file mode 100644
index 0000000..0d3a2bd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_侧面.webp
new file mode 100644
index 0000000..77ba176
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_俯视.webp
new file mode 100644
index 0000000..fc41e65
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_斜侧.webp
new file mode 100644
index 0000000..b7cfe05
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_正面.webp
new file mode 100644
index 0000000..9040abd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_仰视.webp
new file mode 100644
index 0000000..3b77cc5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_侧面.webp
new file mode 100644
index 0000000..09c0f12
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_俯视.webp
new file mode 100644
index 0000000..f5bba0c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_斜侧.webp
new file mode 100644
index 0000000..3b1f211
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_正面.webp
new file mode 100644
index 0000000..07d1154
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_仰视.webp
new file mode 100644
index 0000000..3e9c03f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_侧面.webp
new file mode 100644
index 0000000..6cd03dc
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_俯视.webp
new file mode 100644
index 0000000..7788fed
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_斜侧.webp
new file mode 100644
index 0000000..0e02f40
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_正面.webp
new file mode 100644
index 0000000..dd2d67e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_仰视.webp
new file mode 100644
index 0000000..85c9faf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_侧面.webp
new file mode 100644
index 0000000..58d8fe5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_俯视.webp
new file mode 100644
index 0000000..9dfe25c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_斜侧.webp
new file mode 100644
index 0000000..3c801c9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_正面.webp
new file mode 100644
index 0000000..128fc79
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_仰视.webp
new file mode 100644
index 0000000..bad7aa0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_侧面.webp
new file mode 100644
index 0000000..5e05807
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_俯视.webp
new file mode 100644
index 0000000..e251a01
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_斜侧.webp
new file mode 100644
index 0000000..69f3b46
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_正面.webp
new file mode 100644
index 0000000..3a147ef
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_仰视.webp
new file mode 100644
index 0000000..9209ba2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_侧面.webp
new file mode 100644
index 0000000..b79a08e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_俯视.webp
new file mode 100644
index 0000000..ed23333
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_斜侧.webp
new file mode 100644
index 0000000..16914e6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_正面.webp
new file mode 100644
index 0000000..9ac021d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_仰视.webp
new file mode 100644
index 0000000..f076c53
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_侧面.webp
new file mode 100644
index 0000000..a2f78ac
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_俯视.webp
new file mode 100644
index 0000000..99583a8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_斜侧.webp
new file mode 100644
index 0000000..a0f301e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_正面.webp
new file mode 100644
index 0000000..e35ab99
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_仰视.webp
new file mode 100644
index 0000000..7ccce67
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_侧面.webp
new file mode 100644
index 0000000..2f85ee7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_俯视.webp
new file mode 100644
index 0000000..1574397
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_斜侧.webp
new file mode 100644
index 0000000..19bc4da
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_正面.webp
new file mode 100644
index 0000000..6f8a819
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_仰视.webp
new file mode 100644
index 0000000..8948755
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_侧面.webp
new file mode 100644
index 0000000..03ecd88
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_俯视.webp
new file mode 100644
index 0000000..33efca2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_斜侧.webp
new file mode 100644
index 0000000..952a4e3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_正面.webp
new file mode 100644
index 0000000..7d7ebd9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_仰视.webp
new file mode 100644
index 0000000..05ba0f7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_侧面.webp
new file mode 100644
index 0000000..a639742
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_俯视.webp
new file mode 100644
index 0000000..aaedb40
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_斜侧.webp
new file mode 100644
index 0000000..3596c36
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_正面.webp
new file mode 100644
index 0000000..132aac6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_仰视.webp
new file mode 100644
index 0000000..dcc3285
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_侧面.webp
new file mode 100644
index 0000000..7c61f3a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_俯视.webp
new file mode 100644
index 0000000..0980b92
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_斜侧.webp
new file mode 100644
index 0000000..7dfb653
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_正面.webp
new file mode 100644
index 0000000..1e77193
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_仰视.webp
new file mode 100644
index 0000000..efd8af6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_侧面.webp
new file mode 100644
index 0000000..3498de2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_俯视.webp
new file mode 100644
index 0000000..81f8f28
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_斜侧.webp
new file mode 100644
index 0000000..9b0809d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_正面.webp
new file mode 100644
index 0000000..3697d5a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_仰视.webp
new file mode 100644
index 0000000..23a87b5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_侧面.webp
new file mode 100644
index 0000000..9d30d09
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_俯视.webp
new file mode 100644
index 0000000..6b9c2b6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_斜侧.webp
new file mode 100644
index 0000000..70a203f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_正面.webp
new file mode 100644
index 0000000..e1d8f18
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_仰视.webp
new file mode 100644
index 0000000..f1c6cf0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_侧面.webp
new file mode 100644
index 0000000..fcb45d6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_俯视.webp
new file mode 100644
index 0000000..fc644aa
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_斜侧.webp
new file mode 100644
index 0000000..d994ebf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_正面.webp
new file mode 100644
index 0000000..6c24c9c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_仰视.webp
new file mode 100644
index 0000000..fb90a8d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_侧面.webp
new file mode 100644
index 0000000..68cacc4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_俯视.webp
new file mode 100644
index 0000000..f3fc3f4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_斜侧.webp
new file mode 100644
index 0000000..432366d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_正面.webp
new file mode 100644
index 0000000..2765983
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_仰视.webp
new file mode 100644
index 0000000..a31c0fc
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_侧面.webp
new file mode 100644
index 0000000..e539999
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_俯视.webp
new file mode 100644
index 0000000..f82f7dd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_斜侧.webp
new file mode 100644
index 0000000..1022713
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_正面.webp
new file mode 100644
index 0000000..80383c8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_仰视.webp
new file mode 100644
index 0000000..8e9457d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_侧面.webp
new file mode 100644
index 0000000..3d237ef
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_俯视.webp
new file mode 100644
index 0000000..46bc011
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_斜侧.webp
new file mode 100644
index 0000000..af713ef
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_正面.webp
new file mode 100644
index 0000000..738fb6e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_仰视.webp
new file mode 100644
index 0000000..839543c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_侧面.webp
new file mode 100644
index 0000000..72d6f56
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_俯视.webp
new file mode 100644
index 0000000..cf859b7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_斜侧.webp
new file mode 100644
index 0000000..8a474d1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_正面.webp
new file mode 100644
index 0000000..ae52941
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_仰视.webp
new file mode 100644
index 0000000..57d0549
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_侧面.webp
new file mode 100644
index 0000000..44e7388
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_俯视.webp
new file mode 100644
index 0000000..99e7d25
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_斜侧.webp
new file mode 100644
index 0000000..17ff1f0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_正面.webp
new file mode 100644
index 0000000..88112f8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_仰视.webp
new file mode 100644
index 0000000..d9cce79
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_侧面.webp
new file mode 100644
index 0000000..596271f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_俯视.webp
new file mode 100644
index 0000000..651a0fd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_斜侧.webp
new file mode 100644
index 0000000..f522d79
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_正面.webp
new file mode 100644
index 0000000..bf1698a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_仰视.webp
new file mode 100644
index 0000000..e39d29e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_侧面.webp
new file mode 100644
index 0000000..69b0bf2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_俯视.webp
new file mode 100644
index 0000000..4062da8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_斜侧.webp
new file mode 100644
index 0000000..de25e58
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_正面.webp
new file mode 100644
index 0000000..b8e9446
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_仰视.webp
new file mode 100644
index 0000000..5a55950
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_侧面.webp
new file mode 100644
index 0000000..dd6a7e4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_俯视.webp
new file mode 100644
index 0000000..76c9ff8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_斜侧.webp
new file mode 100644
index 0000000..3bfc432
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_正面.webp
new file mode 100644
index 0000000..deb79bc
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P010_手抚脚踝/P010_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_仰视.webp
new file mode 100644
index 0000000..c858ad8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_侧面.webp
new file mode 100644
index 0000000..14c5cad
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_俯视.webp
new file mode 100644
index 0000000..f4ae8c7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_斜侧.webp
new file mode 100644
index 0000000..bdfc37b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_正面.webp
new file mode 100644
index 0000000..6192995
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_仰视.webp
new file mode 100644
index 0000000..20a8cc9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_侧面.webp
new file mode 100644
index 0000000..f423f5b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_俯视.webp
new file mode 100644
index 0000000..2fc600c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_斜侧.webp
new file mode 100644
index 0000000..558601c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_正面.webp
new file mode 100644
index 0000000..5ab0235
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_仰视.webp
new file mode 100644
index 0000000..f462d9e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_侧面.webp
new file mode 100644
index 0000000..5cb46af
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_俯视.webp
new file mode 100644
index 0000000..24a3852
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_斜侧.webp
new file mode 100644
index 0000000..db2c8ad
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_正面.webp
new file mode 100644
index 0000000..5c3e8ba
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_仰视.webp
new file mode 100644
index 0000000..d7569fd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_侧面.webp
new file mode 100644
index 0000000..255a87b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_俯视.webp
new file mode 100644
index 0000000..7662238
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_斜侧.webp
new file mode 100644
index 0000000..2c64dff
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_正面.webp
new file mode 100644
index 0000000..3c06507
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_仰视.webp
new file mode 100644
index 0000000..2c0ccb4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_侧面.webp
new file mode 100644
index 0000000..b533e93
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_俯视.webp
new file mode 100644
index 0000000..192a3e3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_斜侧.webp
new file mode 100644
index 0000000..1b694be
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_正面.webp
new file mode 100644
index 0000000..3ffffdf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_仰视.webp
new file mode 100644
index 0000000..5263354
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_侧面.webp
new file mode 100644
index 0000000..b566795
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_俯视.webp
new file mode 100644
index 0000000..469bdb3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_斜侧.webp
new file mode 100644
index 0000000..b5ecf2f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_正面.webp
new file mode 100644
index 0000000..1badb9c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_仰视.webp
new file mode 100644
index 0000000..cb7d618
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_侧面.webp
new file mode 100644
index 0000000..af36026
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_俯视.webp
new file mode 100644
index 0000000..89f25a8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_斜侧.webp
new file mode 100644
index 0000000..6dbb58d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_正面.webp
new file mode 100644
index 0000000..0307986
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_仰视.webp
new file mode 100644
index 0000000..4674364
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_侧面.webp
new file mode 100644
index 0000000..699d2d5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_俯视.webp
new file mode 100644
index 0000000..20289cd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_斜侧.webp
new file mode 100644
index 0000000..1843bce
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_正面.webp
new file mode 100644
index 0000000..ca5199f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_仰视.webp
new file mode 100644
index 0000000..6ba8f5a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_侧面.webp
new file mode 100644
index 0000000..d768a33
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_俯视.webp
new file mode 100644
index 0000000..375ab9b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_斜侧.webp
new file mode 100644
index 0000000..14c5d5f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_正面.webp
new file mode 100644
index 0000000..68c486f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P016_站立・双手撩发/P016_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_仰视.webp
new file mode 100644
index 0000000..a5c9a3a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_侧面.webp
new file mode 100644
index 0000000..2cd66df
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_俯视.webp
new file mode 100644
index 0000000..9875635
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_斜侧.webp
new file mode 100644
index 0000000..535dd1e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_正面.webp
new file mode 100644
index 0000000..c50804d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_仰视.webp
new file mode 100644
index 0000000..52e953e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_侧面.webp
new file mode 100644
index 0000000..923f4d0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_俯视.webp
new file mode 100644
index 0000000..1e01c27
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_斜侧.webp
new file mode 100644
index 0000000..0d92b11
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_正面.webp
new file mode 100644
index 0000000..5b9243a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_仰视.webp
new file mode 100644
index 0000000..bfb7eb7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_侧面.webp
new file mode 100644
index 0000000..cff770d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_俯视.webp
new file mode 100644
index 0000000..aa151a1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_斜侧.webp
new file mode 100644
index 0000000..65df620
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_正面.webp
new file mode 100644
index 0000000..9765828
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_仰视.webp
new file mode 100644
index 0000000..ab7d9af
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_侧面.webp
new file mode 100644
index 0000000..246af2f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_俯视.webp
new file mode 100644
index 0000000..4b9a89b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_斜侧.webp
new file mode 100644
index 0000000..714678f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_正面.webp
new file mode 100644
index 0000000..3df00db
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_仰视.webp
new file mode 100644
index 0000000..0577892
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_侧面.webp
new file mode 100644
index 0000000..81fe1bf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_俯视.webp
new file mode 100644
index 0000000..a66270b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_斜侧.webp
new file mode 100644
index 0000000..940899a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_正面.webp
new file mode 100644
index 0000000..ea34a40
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_仰视.webp
new file mode 100644
index 0000000..4e124bd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_侧面.webp
new file mode 100644
index 0000000..12b6d21
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_俯视.webp
new file mode 100644
index 0000000..64196f6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_斜侧.webp
new file mode 100644
index 0000000..c1b4639
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_正面.webp
new file mode 100644
index 0000000..bf71919
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_仰视.webp
new file mode 100644
index 0000000..44b2a1a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_侧面.webp
new file mode 100644
index 0000000..0f77dd9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_俯视.webp
new file mode 100644
index 0000000..ce0bf69
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_斜侧.webp
new file mode 100644
index 0000000..5d822bd
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_正面.webp
new file mode 100644
index 0000000..dccaada
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_仰视.webp
new file mode 100644
index 0000000..5d724f5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_侧面.webp
new file mode 100644
index 0000000..52d5d4c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_俯视.webp
new file mode 100644
index 0000000..780314a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_斜侧.webp
new file mode 100644
index 0000000..ca98dcb
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_正面.webp
new file mode 100644
index 0000000..2e669cb
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_仰视.webp
new file mode 100644
index 0000000..6768a3d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_侧面.webp
new file mode 100644
index 0000000..819a468
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_俯视.webp
new file mode 100644
index 0000000..3765643
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_斜侧.webp
new file mode 100644
index 0000000..d5cf161
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_正面.webp
new file mode 100644
index 0000000..49e506c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_仰视.webp
new file mode 100644
index 0000000..bfda7d9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_侧面.webp
new file mode 100644
index 0000000..8af0b4a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_俯视.webp
new file mode 100644
index 0000000..9bd3da5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_斜侧.webp
new file mode 100644
index 0000000..35ba6d5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_正面.webp
new file mode 100644
index 0000000..c031fed
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_仰视.webp
new file mode 100644
index 0000000..45449f0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_侧面.webp
new file mode 100644
index 0000000..27ab268
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_俯视.webp
new file mode 100644
index 0000000..5769368
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_斜侧.webp
new file mode 100644
index 0000000..0ca9271
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_正面.webp
new file mode 100644
index 0000000..ecd8302
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_仰视.webp
new file mode 100644
index 0000000..27b06e0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_侧面.webp
new file mode 100644
index 0000000..9d573c0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_俯视.webp
new file mode 100644
index 0000000..06194bc
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_斜侧.webp
new file mode 100644
index 0000000..bdc0c48
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_正面.webp
new file mode 100644
index 0000000..e40d981
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_仰视.webp
new file mode 100644
index 0000000..49878f7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_侧面.webp
new file mode 100644
index 0000000..918e17b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_俯视.webp
new file mode 100644
index 0000000..d4236a4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_斜侧.webp
new file mode 100644
index 0000000..86aae79
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_正面.webp
new file mode 100644
index 0000000..58cb81c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_仰视.webp
new file mode 100644
index 0000000..7064d02
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_侧面.webp
new file mode 100644
index 0000000..3422c1b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_俯视.webp
new file mode 100644
index 0000000..4a4817b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_斜侧.webp
new file mode 100644
index 0000000..e98122a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_正面.webp
new file mode 100644
index 0000000..f55ed8e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_仰视.webp
new file mode 100644
index 0000000..208d910
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_侧面.webp
new file mode 100644
index 0000000..fdeb45f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_俯视.webp
new file mode 100644
index 0000000..e3653a1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_斜侧.webp
new file mode 100644
index 0000000..dc0f407
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_正面.webp
new file mode 100644
index 0000000..8f7681d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_仰视.webp
new file mode 100644
index 0000000..fb2becf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_侧面.webp
new file mode 100644
index 0000000..fb0cca8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_俯视.webp
new file mode 100644
index 0000000..deee585
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_斜侧.webp
new file mode 100644
index 0000000..34cda50
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_正面.webp
new file mode 100644
index 0000000..3909795
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_仰视.webp
new file mode 100644
index 0000000..8a1cea5
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_侧面.webp
new file mode 100644
index 0000000..91a51d7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_俯视.webp
new file mode 100644
index 0000000..baf9a96
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_斜侧.webp
new file mode 100644
index 0000000..d5b4543
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_正面.webp
new file mode 100644
index 0000000..f99eae4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_仰视.webp
new file mode 100644
index 0000000..1e0f4a7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_侧面.webp
new file mode 100644
index 0000000..9486554
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_俯视.webp
new file mode 100644
index 0000000..71e95f1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_斜侧.webp
new file mode 100644
index 0000000..e30e94f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_正面.webp
new file mode 100644
index 0000000..2f83847
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_仰视.webp
new file mode 100644
index 0000000..2820d99
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_侧面.webp
new file mode 100644
index 0000000..59ebecc
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_俯视.webp
new file mode 100644
index 0000000..b6df7c9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_斜侧.webp
new file mode 100644
index 0000000..db477d9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_正面.webp
new file mode 100644
index 0000000..f3080b7
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_仰视.webp
new file mode 100644
index 0000000..9ef430b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_侧面.webp
new file mode 100644
index 0000000..50c537c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_俯视.webp
new file mode 100644
index 0000000..30a3e37
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_斜侧.webp
new file mode 100644
index 0000000..80b1132
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_正面.webp
new file mode 100644
index 0000000..f1b9989
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_仰视.webp
new file mode 100644
index 0000000..586e312
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_侧面.webp
new file mode 100644
index 0000000..bfc5445
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_俯视.webp
new file mode 100644
index 0000000..5e3dd79
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_斜侧.webp
new file mode 100644
index 0000000..3283622
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_正面.webp
new file mode 100644
index 0000000..b799280
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_仰视.webp
new file mode 100644
index 0000000..9c1a1ba
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_侧面.webp
new file mode 100644
index 0000000..548f982
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_俯视.webp
new file mode 100644
index 0000000..8d4350a
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_斜侧.webp
new file mode 100644
index 0000000..76d63d0
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_正面.webp
new file mode 100644
index 0000000..fda0e03
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_仰视.webp
new file mode 100644
index 0000000..06cf4a6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_侧面.webp
new file mode 100644
index 0000000..9da4a6b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_俯视.webp
new file mode 100644
index 0000000..92c2dd1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_斜侧.webp
new file mode 100644
index 0000000..0a42711
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_正面.webp
new file mode 100644
index 0000000..99ba251
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_仰视.webp
new file mode 100644
index 0000000..38e9fa4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_侧面.webp
new file mode 100644
index 0000000..c59cdde
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_俯视.webp
new file mode 100644
index 0000000..68f4ac4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_斜侧.webp
new file mode 100644
index 0000000..a4f7ed6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_正面.webp
new file mode 100644
index 0000000..06252c6
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_仰视.webp
new file mode 100644
index 0000000..0226a82
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_侧面.webp
new file mode 100644
index 0000000..499292c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_俯视.webp
new file mode 100644
index 0000000..c57022c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_斜侧.webp
new file mode 100644
index 0000000..f12f3f9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_正面.webp
new file mode 100644
index 0000000..04b659f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_仰视.webp
new file mode 100644
index 0000000..ab275b1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_侧面.webp
new file mode 100644
index 0000000..b0f9531
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_俯视.webp
new file mode 100644
index 0000000..6b4a8cf
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_斜侧.webp
new file mode 100644
index 0000000..0460424
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_正面.webp
new file mode 100644
index 0000000..66a4378
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_仰视.webp
new file mode 100644
index 0000000..9090bdc
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_侧面.webp
new file mode 100644
index 0000000..ab1a83d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_俯视.webp
new file mode 100644
index 0000000..4a3fb39
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_斜侧.webp
new file mode 100644
index 0000000..7cadc31
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_正面.webp
new file mode 100644
index 0000000..9de531d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_仰视.webp
new file mode 100644
index 0000000..ceec2b9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_侧面.webp
new file mode 100644
index 0000000..b32f483
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_俯视.webp
new file mode 100644
index 0000000..3ca57d2
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_斜侧.webp
new file mode 100644
index 0000000..a547c6e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_正面.webp
new file mode 100644
index 0000000..9445e80
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_仰视.webp
new file mode 100644
index 0000000..6918f99
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_侧面.webp
new file mode 100644
index 0000000..c747232
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_俯视.webp
new file mode 100644
index 0000000..95cf3f4
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_斜侧.webp
new file mode 100644
index 0000000..ad31a5f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_正面.webp
new file mode 100644
index 0000000..5c1c8d1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_仰视.webp
new file mode 100644
index 0000000..10e0e16
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_侧面.webp
new file mode 100644
index 0000000..a48a78f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_俯视.webp
new file mode 100644
index 0000000..393e9ff
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_斜侧.webp
new file mode 100644
index 0000000..071a149
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_正面.webp
new file mode 100644
index 0000000..6903280
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_仰视.webp
new file mode 100644
index 0000000..d266e1c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_侧面.webp
new file mode 100644
index 0000000..befd382
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_俯视.webp
new file mode 100644
index 0000000..50b3322
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_斜侧.webp
new file mode 100644
index 0000000..ec35c59
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_正面.webp
new file mode 100644
index 0000000..7dadbda
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_仰视.webp
new file mode 100644
index 0000000..b693e15
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_侧面.webp
new file mode 100644
index 0000000..5f0ef73
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_俯视.webp
new file mode 100644
index 0000000..f8d8362
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_斜侧.webp
new file mode 100644
index 0000000..3ad99fb
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_正面.webp
new file mode 100644
index 0000000..07b415c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_仰视.webp
new file mode 100644
index 0000000..46245ab
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_侧面.webp
new file mode 100644
index 0000000..ac9fc31
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_俯视.webp
new file mode 100644
index 0000000..0f7ab49
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_斜侧.webp
new file mode 100644
index 0000000..6735924
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_正面.webp
new file mode 100644
index 0000000..cabe31d
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_仰视.webp
new file mode 100644
index 0000000..c3ca9c8
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_侧面.webp
new file mode 100644
index 0000000..3708f5c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_俯视.webp
new file mode 100644
index 0000000..8a66d4b
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_斜侧.webp
new file mode 100644
index 0000000..a963e08
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_正面.webp
new file mode 100644
index 0000000..fa659d9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_仰视.webp
new file mode 100644
index 0000000..f7ea106
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_侧面.webp
new file mode 100644
index 0000000..b0cf315
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_俯视.webp
new file mode 100644
index 0000000..22adf8c
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_斜侧.webp
new file mode 100644
index 0000000..7aa5600
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_正面.webp
new file mode 100644
index 0000000..29bf82e
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_仰视.webp
new file mode 100644
index 0000000..1b08486
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_侧面.webp
new file mode 100644
index 0000000..ec4b1de
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_俯视.webp
new file mode 100644
index 0000000..36db6e3
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_斜侧.webp
new file mode 100644
index 0000000..2a8a3c1
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_正面.webp
new file mode 100644
index 0000000..55c3bef
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_正面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_仰视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_仰视.webp
new file mode 100644
index 0000000..bf4a571
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_仰视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_侧面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_侧面.webp
new file mode 100644
index 0000000..4228859
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_侧面.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_俯视.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_俯视.webp
new file mode 100644
index 0000000..44f9e02
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_俯视.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_斜侧.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_斜侧.webp
new file mode 100644
index 0000000..7c1a52f
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_斜侧.webp differ
diff --git a/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_正面.webp b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_正面.webp
new file mode 100644
index 0000000..984fab9
Binary files /dev/null and b/pose_assets/01_AI线稿姿势/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_仰视.webp
new file mode 100644
index 0000000..adeab85
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_侧面.webp
new file mode 100644
index 0000000..08c3888
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_俯视.webp
new file mode 100644
index 0000000..1d23079
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_斜侧.webp
new file mode 100644
index 0000000..71b60ae
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_正面.webp
new file mode 100644
index 0000000..42173f2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P001_胸前双手比心/P001_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_仰视.webp
new file mode 100644
index 0000000..42e8371
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_侧面.webp
new file mode 100644
index 0000000..c65681f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_俯视.webp
new file mode 100644
index 0000000..9649a06
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_斜侧.webp
new file mode 100644
index 0000000..3e16c44
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_正面.webp
new file mode 100644
index 0000000..d00a3f7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P002_头顶双臂比心/P002_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_仰视.webp
new file mode 100644
index 0000000..6d5267b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_侧面.webp
new file mode 100644
index 0000000..daf2f1f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_俯视.webp
new file mode 100644
index 0000000..30690de
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_斜侧.webp
new file mode 100644
index 0000000..77d1027
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_正面.webp
new file mode 100644
index 0000000..f5c4cba
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P003_脸侧手指比心/P003_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_仰视.webp
new file mode 100644
index 0000000..1c32062
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_侧面.webp
new file mode 100644
index 0000000..1dcb8d5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_俯视.webp
new file mode 100644
index 0000000..ca88071
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_斜侧.webp
new file mode 100644
index 0000000..3fa4d88
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_正面.webp
new file mode 100644
index 0000000..180ee03
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P004_下巴下比双V/P004_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_仰视.webp
new file mode 100644
index 0000000..8a4e93e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_侧面.webp
new file mode 100644
index 0000000..34c54c6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_俯视.webp
new file mode 100644
index 0000000..9699b31
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_斜侧.webp
new file mode 100644
index 0000000..a01a323
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_正面.webp
new file mode 100644
index 0000000..0580100
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P005_辣妹V(手背朝外比V)/P005_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_仰视.webp
new file mode 100644
index 0000000..f51174e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_侧面.webp
new file mode 100644
index 0000000..9f910ce
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_俯视.webp
new file mode 100644
index 0000000..73a5713
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_斜侧.webp
new file mode 100644
index 0000000..d54f68e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_正面.webp
new file mode 100644
index 0000000..88d53da
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P006_握拳贴脸(撒娇)/P006_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_仰视.webp
new file mode 100644
index 0000000..a334ca7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_侧面.webp
new file mode 100644
index 0000000..455aee2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_俯视.webp
new file mode 100644
index 0000000..2e4a779
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_斜侧.webp
new file mode 100644
index 0000000..6f46fc3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_正面.webp
new file mode 100644
index 0000000..4ffab7e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P007_兔耳手势/P007_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_仰视.webp
new file mode 100644
index 0000000..3c06e2a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_侧面.webp
new file mode 100644
index 0000000..ca0401a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_俯视.webp
new file mode 100644
index 0000000..b069265
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_斜侧.webp
new file mode 100644
index 0000000..f99b48e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_正面.webp
new file mode 100644
index 0000000..fa7bd07
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P008_招财猫猫爪手势/P008_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_仰视.webp
new file mode 100644
index 0000000..24de025
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_侧面.webp
new file mode 100644
index 0000000..412b105
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_俯视.webp
new file mode 100644
index 0000000..d8ce6f4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_斜侧.webp
new file mode 100644
index 0000000..6f22196
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_正面.webp
new file mode 100644
index 0000000..7abe2ff
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P009_咆哮手势(嗷呜)/P009_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_仰视.webp
new file mode 100644
index 0000000..59a5f90
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_侧面.webp
new file mode 100644
index 0000000..cd4592b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_俯视.webp
new file mode 100644
index 0000000..81e80d6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_斜侧.webp
new file mode 100644
index 0000000..49d76e8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_正面.webp
new file mode 100644
index 0000000..ce3e513
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P010_嘘——(食指抵唇)/P010_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_仰视.webp
new file mode 100644
index 0000000..4a31760
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_侧面.webp
new file mode 100644
index 0000000..a9eb6d6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_俯视.webp
new file mode 100644
index 0000000..c9c5974
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_斜侧.webp
new file mode 100644
index 0000000..d32f273
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_正面.webp
new file mode 100644
index 0000000..67d5a3b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P011_歪头+手遮单眼(眨眼风)/P011_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_仰视.webp
new file mode 100644
index 0000000..af7afd7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_侧面.webp
new file mode 100644
index 0000000..1325508
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_俯视.webp
new file mode 100644
index 0000000..27327db
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_斜侧.webp
new file mode 100644
index 0000000..8d69d38
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_正面.webp
new file mode 100644
index 0000000..dd49539
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P012_飞吻/P012_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_仰视.webp
new file mode 100644
index 0000000..bf3201c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_侧面.webp
new file mode 100644
index 0000000..646b266
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_俯视.webp
new file mode 100644
index 0000000..18caa60
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_斜侧.webp
new file mode 100644
index 0000000..9074aa8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_正面.webp
new file mode 100644
index 0000000..d84852e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P013_双掌托腮(花苞手势)/P013_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_仰视.webp
new file mode 100644
index 0000000..0bcbd83
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_侧面.webp
new file mode 100644
index 0000000..5928533
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_俯视.webp
new file mode 100644
index 0000000..f69ea89
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_斜侧.webp
new file mode 100644
index 0000000..b9179b8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_正面.webp
new file mode 100644
index 0000000..740b4ea
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P014_食指戳脸/P014_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_仰视.webp
new file mode 100644
index 0000000..6767b63
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_侧面.webp
new file mode 100644
index 0000000..6ec076d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_俯视.webp
new file mode 100644
index 0000000..58d8db7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_斜侧.webp
new file mode 100644
index 0000000..341a46f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_正面.webp
new file mode 100644
index 0000000..01332d8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P015_萌袖风・双手掩口/P015_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_仰视.webp
new file mode 100644
index 0000000..b1aaa99
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_侧面.webp
new file mode 100644
index 0000000..e360c4b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_俯视.webp
new file mode 100644
index 0000000..99d4b8a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_斜侧.webp
new file mode 100644
index 0000000..0b6214e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_正面.webp
new file mode 100644
index 0000000..f404d1b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P016_拜托手势(双手合十)/P016_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_仰视.webp
new file mode 100644
index 0000000..e690add
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_侧面.webp
new file mode 100644
index 0000000..40825e9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_俯视.webp
new file mode 100644
index 0000000..8719235
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_斜侧.webp
new file mode 100644
index 0000000..df26c34
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_正面.webp
new file mode 100644
index 0000000..b1e02f2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P017_抱紧自己・害羞姿势/P017_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_仰视.webp
new file mode 100644
index 0000000..3f001d3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_侧面.webp
new file mode 100644
index 0000000..bb801d0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_俯视.webp
new file mode 100644
index 0000000..4097079
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_斜侧.webp
new file mode 100644
index 0000000..b0c3e46
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_正面.webp
new file mode 100644
index 0000000..74af911
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P018_手指取景框/P018_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_仰视.webp
new file mode 100644
index 0000000..b728b5a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_侧面.webp
new file mode 100644
index 0000000..978f779
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_俯视.webp
new file mode 100644
index 0000000..7d65cec
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_斜侧.webp
new file mode 100644
index 0000000..ab36383
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_正面.webp
new file mode 100644
index 0000000..bb2b6e9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P019_将发丝挽至耳后/P019_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_仰视.webp
new file mode 100644
index 0000000..1eb92c3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_侧面.webp
new file mode 100644
index 0000000..fdafe8e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_俯视.webp
new file mode 100644
index 0000000..9d9993d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_斜侧.webp
new file mode 100644
index 0000000..9eea88f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_正面.webp
new file mode 100644
index 0000000..b3abc5a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P020_双手捧脸/P020_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_仰视.webp
new file mode 100644
index 0000000..2808081
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_侧面.webp
new file mode 100644
index 0000000..298ca75
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_俯视.webp
new file mode 100644
index 0000000..8206fba
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_斜侧.webp
new file mode 100644
index 0000000..5ce59d1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_正面.webp
new file mode 100644
index 0000000..670bae8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P021_敬礼姿势/P021_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_仰视.webp
new file mode 100644
index 0000000..413fd18
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_侧面.webp
new file mode 100644
index 0000000..b517f3d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_俯视.webp
new file mode 100644
index 0000000..8ce1c06
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_斜侧.webp
new file mode 100644
index 0000000..c201922
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_正面.webp
new file mode 100644
index 0000000..738d418
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P022_手指镜头/P022_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_仰视.webp
new file mode 100644
index 0000000..889f058
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_侧面.webp
new file mode 100644
index 0000000..d9dae78
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_俯视.webp
new file mode 100644
index 0000000..fc5b4e8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_斜侧.webp
new file mode 100644
index 0000000..e249ede
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_正面.webp
new file mode 100644
index 0000000..70adfeb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P023_打哈欠伸懒腰(单手掩口)/P023_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_仰视.webp
new file mode 100644
index 0000000..e842b13
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_侧面.webp
new file mode 100644
index 0000000..f3741cd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_俯视.webp
new file mode 100644
index 0000000..d0ac94d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_斜侧.webp
new file mode 100644
index 0000000..b534f1f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_正面.webp
new file mode 100644
index 0000000..38a5017
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P024_单手比心+另一手抚胸/P024_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_仰视.webp
new file mode 100644
index 0000000..8b273a2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_侧面.webp
new file mode 100644
index 0000000..fb0bc12
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_俯视.webp
new file mode 100644
index 0000000..fc881b0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_斜侧.webp
new file mode 100644
index 0000000..e65475e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_正面.webp
new file mode 100644
index 0000000..7fc80a3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/可爱系/P025_从双手指缝间窥视/P025_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_仰视.webp
new file mode 100644
index 0000000..4285a20
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_侧面.webp
new file mode 100644
index 0000000..dcb4816
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_俯视.webp
new file mode 100644
index 0000000..53c1224
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_斜侧.webp
new file mode 100644
index 0000000..5f43b19
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_正面.webp
new file mode 100644
index 0000000..ac869b8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P051_双手捧胸/P051_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_仰视.webp
new file mode 100644
index 0000000..869bd8c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_侧面.webp
new file mode 100644
index 0000000..5b9a75b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_俯视.webp
new file mode 100644
index 0000000..802fab7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_斜侧.webp
new file mode 100644
index 0000000..cb828eb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_正面.webp
new file mode 100644
index 0000000..82716ac
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P052_双手揉胸/P052_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_仰视.webp
new file mode 100644
index 0000000..1385f2c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_侧面.webp
new file mode 100644
index 0000000..ba2b48c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_俯视.webp
new file mode 100644
index 0000000..c05feeb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_斜侧.webp
new file mode 100644
index 0000000..eb3adf0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_正面.webp
new file mode 100644
index 0000000..f06bc43
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P053_手掌遮掩(双手遮蔽)/P053_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_仰视.webp
new file mode 100644
index 0000000..8c86b54
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_侧面.webp
new file mode 100644
index 0000000..35b5cca
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_俯视.webp
new file mode 100644
index 0000000..83ace03
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_斜侧.webp
new file mode 100644
index 0000000..562d1fd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_正面.webp
new file mode 100644
index 0000000..321acbd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P054_单手遮掩・一手扶腰/P054_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_仰视.webp
new file mode 100644
index 0000000..b88cb47
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_侧面.webp
new file mode 100644
index 0000000..9a0eccd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_俯视.webp
new file mode 100644
index 0000000..c2c9908
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_斜侧.webp
new file mode 100644
index 0000000..f419b10
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_正面.webp
new file mode 100644
index 0000000..64bef5d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P055_单手揉胸・单手撩发/P055_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_仰视.webp
new file mode 100644
index 0000000..46fe27e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_侧面.webp
new file mode 100644
index 0000000..87fca6d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_俯视.webp
new file mode 100644
index 0000000..ce6f190
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_斜侧.webp
new file mode 100644
index 0000000..e000240
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_正面.webp
new file mode 100644
index 0000000..24a2181
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P056_褪下肩带动作/P056_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_仰视.webp
new file mode 100644
index 0000000..916bb14
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_侧面.webp
new file mode 100644
index 0000000..056b356
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_俯视.webp
new file mode 100644
index 0000000..a1a4693
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_斜侧.webp
new file mode 100644
index 0000000..5acb387
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_正面.webp
new file mode 100644
index 0000000..34f3267
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P057_双手撩发大幅后仰/P057_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_仰视.webp
new file mode 100644
index 0000000..b0c5009
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_侧面.webp
new file mode 100644
index 0000000..0d610c5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_俯视.webp
new file mode 100644
index 0000000..fe765de
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_斜侧.webp
new file mode 100644
index 0000000..9c9977d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_正面.webp
new file mode 100644
index 0000000..f7e7512
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P058_双手抱头・展露腋下/P058_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_仰视.webp
new file mode 100644
index 0000000..f2d5bc4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_侧面.webp
new file mode 100644
index 0000000..d71784e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_俯视.webp
new file mode 100644
index 0000000..5a07f46
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_斜侧.webp
new file mode 100644
index 0000000..cbe9f28
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_正面.webp
new file mode 100644
index 0000000..8aec6fa
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P059_手指沿胸下缘滑动/P059_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_仰视.webp
new file mode 100644
index 0000000..34d39f7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_侧面.webp
new file mode 100644
index 0000000..087503e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_俯视.webp
new file mode 100644
index 0000000..3412589
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_斜侧.webp
new file mode 100644
index 0000000..3f8e1cc
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_正面.webp
new file mode 100644
index 0000000..10336b8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P060_手指抵唇+单手抚胸/P060_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_仰视.webp
new file mode 100644
index 0000000..7acdb40
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_侧面.webp
new file mode 100644
index 0000000..e799bbc
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_俯视.webp
new file mode 100644
index 0000000..8d74f25
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_斜侧.webp
new file mode 100644
index 0000000..3c3470c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_正面.webp
new file mode 100644
index 0000000..36fe1b8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P061_指尖遮掩胸前/P061_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_仰视.webp
new file mode 100644
index 0000000..9122a78
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_侧面.webp
new file mode 100644
index 0000000..1e2a9ad
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_俯视.webp
new file mode 100644
index 0000000..89a6c7b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_斜侧.webp
new file mode 100644
index 0000000..1572910
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_正面.webp
new file mode 100644
index 0000000..65a8d72
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P062_单手抚胸・单手抚腹/P062_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_仰视.webp
new file mode 100644
index 0000000..2f3a3bd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_侧面.webp
new file mode 100644
index 0000000..c32dbcd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_俯视.webp
new file mode 100644
index 0000000..86c7d55
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_斜侧.webp
new file mode 100644
index 0000000..af0a644
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_正面.webp
new file mode 100644
index 0000000..6cfe355
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P063_双手后撑・挺胸突出/P063_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_仰视.webp
new file mode 100644
index 0000000..acee9a1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_侧面.webp
new file mode 100644
index 0000000..81d0d07
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_俯视.webp
new file mode 100644
index 0000000..ec1cd6e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_斜侧.webp
new file mode 100644
index 0000000..869950e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_正面.webp
new file mode 100644
index 0000000..cfd0f59
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P064_俯卧单手托胸/P064_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_仰视.webp
new file mode 100644
index 0000000..2f37fa0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_侧面.webp
new file mode 100644
index 0000000..d333246
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_俯视.webp
new file mode 100644
index 0000000..ca3bf66
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_斜侧.webp
new file mode 100644
index 0000000..ec020df
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_正面.webp
new file mode 100644
index 0000000..cdbb7db
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P065_四肢着地・挺背后仰仰望/P065_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_仰视.webp
new file mode 100644
index 0000000..18df25c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_侧面.webp
new file mode 100644
index 0000000..c228a0a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_俯视.webp
new file mode 100644
index 0000000..ad32f39
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_斜侧.webp
new file mode 100644
index 0000000..9c87564
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_正面.webp
new file mode 100644
index 0000000..bc0e848
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P066_四肢着地・单手抚胸/P066_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_仰视.webp
new file mode 100644
index 0000000..c5b8aeb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_侧面.webp
new file mode 100644
index 0000000..b22a0ea
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_俯视.webp
new file mode 100644
index 0000000..3a790ee
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_斜侧.webp
new file mode 100644
index 0000000..746833d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_正面.webp
new file mode 100644
index 0000000..4541fda
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P067_豹式伸展(正面)/P067_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_仰视.webp
new file mode 100644
index 0000000..1f45bc8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_侧面.webp
new file mode 100644
index 0000000..02a6443
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_俯视.webp
new file mode 100644
index 0000000..c85f81d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_斜侧.webp
new file mode 100644
index 0000000..6ff1914
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_正面.webp
new file mode 100644
index 0000000..15d69ff
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P068_跪立后仰・手触脚跟/P068_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_仰视.webp
new file mode 100644
index 0000000..48bdae4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_侧面.webp
new file mode 100644
index 0000000..4df5bef
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_俯视.webp
new file mode 100644
index 0000000..dfc27df
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_斜侧.webp
new file mode 100644
index 0000000..463cf7d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_正面.webp
new file mode 100644
index 0000000..fd9d72d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P069_跪立・双手抱后脑/P069_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_仰视.webp
new file mode 100644
index 0000000..22c621a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_侧面.webp
new file mode 100644
index 0000000..d71926b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_俯视.webp
new file mode 100644
index 0000000..af88331
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_斜侧.webp
new file mode 100644
index 0000000..3b4ba05
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_正面.webp
new file mode 100644
index 0000000..bf16630
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P070_手指含于唇边/P070_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_仰视.webp
new file mode 100644
index 0000000..54ebdc9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_侧面.webp
new file mode 100644
index 0000000..ec4ff08
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_俯视.webp
new file mode 100644
index 0000000..f4dcb60
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_斜侧.webp
new file mode 100644
index 0000000..950d1d7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_正面.webp
new file mode 100644
index 0000000..628f886
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P071_抓握颈侧后仰/P071_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_仰视.webp
new file mode 100644
index 0000000..580b967
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_侧面.webp
new file mode 100644
index 0000000..f21b842
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_俯视.webp
new file mode 100644
index 0000000..2cfa7dd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_斜侧.webp
new file mode 100644
index 0000000..ada777b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_正面.webp
new file mode 100644
index 0000000..6f96c0a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P072_双手向内挤并挺出/P072_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_仰视.webp
new file mode 100644
index 0000000..02e6f2b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_侧面.webp
new file mode 100644
index 0000000..41e1f70
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_俯视.webp
new file mode 100644
index 0000000..75238fe
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_斜侧.webp
new file mode 100644
index 0000000..f715c50
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_正面.webp
new file mode 100644
index 0000000..174d15f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P073_侧卧・抱胸/P073_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_仰视.webp
new file mode 100644
index 0000000..519996d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_侧面.webp
new file mode 100644
index 0000000..defdc58
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_俯视.webp
new file mode 100644
index 0000000..462898f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_斜侧.webp
new file mode 100644
index 0000000..35ea0c1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_正面.webp
new file mode 100644
index 0000000..d0f31a0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P074_仰卧・双手抚胸/P074_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_仰视.webp
new file mode 100644
index 0000000..620eea6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_侧面.webp
new file mode 100644
index 0000000..91f14f0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_俯视.webp
new file mode 100644
index 0000000..821f4ce
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_斜侧.webp
new file mode 100644
index 0000000..bd02efe
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_正面.webp
new file mode 100644
index 0000000..27ab56f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P075_仰卧・双臂上举挺身/P075_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_仰视.webp
new file mode 100644
index 0000000..d896be5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_侧面.webp
new file mode 100644
index 0000000..c9423ab
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_俯视.webp
new file mode 100644
index 0000000..7ad8a87
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_斜侧.webp
new file mode 100644
index 0000000..7057197
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_正面.webp
new file mode 100644
index 0000000..cd3014a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P076_前倾・手放大腿内侧/P076_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_仰视.webp
new file mode 100644
index 0000000..31954e1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_侧面.webp
new file mode 100644
index 0000000..ba7c81a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_俯视.webp
new file mode 100644
index 0000000..5ed4b71
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_斜侧.webp
new file mode 100644
index 0000000..ecd0aae
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_正面.webp
new file mode 100644
index 0000000..301e2f8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P077_背后解挂钩动作/P077_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_仰视.webp
new file mode 100644
index 0000000..c360237
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_侧面.webp
new file mode 100644
index 0000000..319bf75
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_俯视.webp
new file mode 100644
index 0000000..acad61f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_斜侧.webp
new file mode 100644
index 0000000..e78eb45
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_正面.webp
new file mode 100644
index 0000000..01bbd1a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P078_单手遮掩・另一手托起/P078_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_仰视.webp
new file mode 100644
index 0000000..bbd86af
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_侧面.webp
new file mode 100644
index 0000000..efa201e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_俯视.webp
new file mode 100644
index 0000000..0f1e34a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_斜侧.webp
new file mode 100644
index 0000000..a96bc44
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_正面.webp
new file mode 100644
index 0000000..a23d417
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P079_手探入胸前沟壑/P079_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_仰视.webp
new file mode 100644
index 0000000..ed1fa60
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_侧面.webp
new file mode 100644
index 0000000..9d44da8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_俯视.webp
new file mode 100644
index 0000000..eabf5d9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_斜侧.webp
new file mode 100644
index 0000000..2251b79
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_正面.webp
new file mode 100644
index 0000000..a77296a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/性感・大胆系/P080_俯视视角・双手抚胸・上目线/P080_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_仰视.webp
new file mode 100644
index 0000000..c5e070b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_侧面.webp
new file mode 100644
index 0000000..83786c9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_俯视.webp
new file mode 100644
index 0000000..a7b3f69
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_斜侧.webp
new file mode 100644
index 0000000..d4d0cba
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_正面.webp
new file mode 100644
index 0000000..a5ff915
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P026_双手比心贴脸(前倾挤胸)/P026_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_仰视.webp
new file mode 100644
index 0000000..405c251
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_侧面.webp
new file mode 100644
index 0000000..45942b5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_俯视.webp
new file mode 100644
index 0000000..a5feffd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_斜侧.webp
new file mode 100644
index 0000000..2ebb9f9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_正面.webp
new file mode 100644
index 0000000..81a8237
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P027_雏人形式(双手扶膝)/P027_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_仰视.webp
new file mode 100644
index 0000000..a132eb8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_侧面.webp
new file mode 100644
index 0000000..ab5903c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_俯视.webp
new file mode 100644
index 0000000..9e78760
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_斜侧.webp
new file mode 100644
index 0000000..2408ff7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_正面.webp
new file mode 100644
index 0000000..03dd3b7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P028_手肘挤胸・扭转腰身/P028_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_仰视.webp
new file mode 100644
index 0000000..f6c05f3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_侧面.webp
new file mode 100644
index 0000000..97dcdf5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_俯视.webp
new file mode 100644
index 0000000..e0134e1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_斜侧.webp
new file mode 100644
index 0000000..4180851
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_正面.webp
new file mode 100644
index 0000000..74f7ae4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P029_耸肩挤胸(双手下方交叠)/P029_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_仰视.webp
new file mode 100644
index 0000000..94dc9a9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_侧面.webp
new file mode 100644
index 0000000..7602e0d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_俯视.webp
new file mode 100644
index 0000000..13e3eb5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_斜侧.webp
new file mode 100644
index 0000000..98340af
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_正面.webp
new file mode 100644
index 0000000..584ae5e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P030_双臂于胸下交叉托起/P030_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_仰视.webp
new file mode 100644
index 0000000..9b1ec18
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_侧面.webp
new file mode 100644
index 0000000..aaa0a36
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_俯视.webp
new file mode 100644
index 0000000..1e9cce5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_斜侧.webp
new file mode 100644
index 0000000..2a8069e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_正面.webp
new file mode 100644
index 0000000..a4cc6b1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P031_双手自下托起/P031_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_仰视.webp
new file mode 100644
index 0000000..b8b8d17
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_侧面.webp
new file mode 100644
index 0000000..8edbd99
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_俯视.webp
new file mode 100644
index 0000000..9bbd6c1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_斜侧.webp
new file mode 100644
index 0000000..1581c61
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_正面.webp
new file mode 100644
index 0000000..ce46bc5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P032_胸伏桌面/P032_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_仰视.webp
new file mode 100644
index 0000000..d7b7c3a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_侧面.webp
new file mode 100644
index 0000000..94ef453
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_俯视.webp
new file mode 100644
index 0000000..3ecafe5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_斜侧.webp
new file mode 100644
index 0000000..4e18316
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_正面.webp
new file mode 100644
index 0000000..1e2ecf2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P033_前臂竖立・从两侧夹紧/P033_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_仰视.webp
new file mode 100644
index 0000000..e954279
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_侧面.webp
new file mode 100644
index 0000000..fe0d3ff
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_俯视.webp
new file mode 100644
index 0000000..beb689e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_斜侧.webp
new file mode 100644
index 0000000..69334ab
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_正面.webp
new file mode 100644
index 0000000..f83308a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P034_单臂托起胸部/P034_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_仰视.webp
new file mode 100644
index 0000000..469aea4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_侧面.webp
new file mode 100644
index 0000000..631301c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_俯视.webp
new file mode 100644
index 0000000..5b260b8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_斜侧.webp
new file mode 100644
index 0000000..49a3a48
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_正面.webp
new file mode 100644
index 0000000..3c83abe
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P035_俯视构图・双手放锁骨/P035_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_仰视.webp
new file mode 100644
index 0000000..227d759
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_侧面.webp
new file mode 100644
index 0000000..df31b4e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_俯视.webp
new file mode 100644
index 0000000..4c2f490
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_斜侧.webp
new file mode 100644
index 0000000..b92d8bb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_正面.webp
new file mode 100644
index 0000000..dae95a4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P036_双手掐腰挺胸/P036_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_仰视.webp
new file mode 100644
index 0000000..f66507f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_侧面.webp
new file mode 100644
index 0000000..d096555
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_俯视.webp
new file mode 100644
index 0000000..bcd379c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_斜侧.webp
new file mode 100644
index 0000000..83deef0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_正面.webp
new file mode 100644
index 0000000..973d884
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P037_双手从两侧挤胸/P037_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_仰视.webp
new file mode 100644
index 0000000..a42255b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_侧面.webp
new file mode 100644
index 0000000..cc68125
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_俯视.webp
new file mode 100644
index 0000000..4679d67
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_斜侧.webp
new file mode 100644
index 0000000..98a96fb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_正面.webp
new file mode 100644
index 0000000..bc9e268
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P038_双手背后交握・挺胸/P038_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_仰视.webp
new file mode 100644
index 0000000..5a1e44b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_侧面.webp
new file mode 100644
index 0000000..b836be9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_俯视.webp
new file mode 100644
index 0000000..cc8b41c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_斜侧.webp
new file mode 100644
index 0000000..1d0df9a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_正面.webp
new file mode 100644
index 0000000..176a589
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P039_跪立・双手前撑・身体前压/P039_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_仰视.webp
new file mode 100644
index 0000000..e2981e9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_侧面.webp
new file mode 100644
index 0000000..1d4b3c6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_俯视.webp
new file mode 100644
index 0000000..c42385f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_斜侧.webp
new file mode 100644
index 0000000..569362e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_正面.webp
new file mode 100644
index 0000000..32b5a2d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P040_单肘撑膝托腮/P040_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_仰视.webp
new file mode 100644
index 0000000..249f587
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_侧面.webp
new file mode 100644
index 0000000..5aeb720
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_俯视.webp
new file mode 100644
index 0000000..2ded83e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_斜侧.webp
new file mode 100644
index 0000000..dd55040
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_正面.webp
new file mode 100644
index 0000000..b4f06c3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P041_双臂抱胸/P041_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_仰视.webp
new file mode 100644
index 0000000..2a3db72
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_侧面.webp
new file mode 100644
index 0000000..98973a5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_俯视.webp
new file mode 100644
index 0000000..c22fec9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_斜侧.webp
new file mode 100644
index 0000000..ab918a7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_正面.webp
new file mode 100644
index 0000000..ad066ea
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P042_单手挤胸・单手抚发/P042_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_仰视.webp
new file mode 100644
index 0000000..8921cab
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_侧面.webp
new file mode 100644
index 0000000..b3d7306
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_俯视.webp
new file mode 100644
index 0000000..65c4d42
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_斜侧.webp
new file mode 100644
index 0000000..ca2513e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_正面.webp
new file mode 100644
index 0000000..af7795c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P043_单肩下沉・身体前倾/P043_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_仰视.webp
new file mode 100644
index 0000000..5e126d7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_侧面.webp
new file mode 100644
index 0000000..09a81ca
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_俯视.webp
new file mode 100644
index 0000000..36a4d12
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_斜侧.webp
new file mode 100644
index 0000000..a2be3ac
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_正面.webp
new file mode 100644
index 0000000..1623383
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P044_俯卧肘撑挤胸/P044_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_仰视.webp
new file mode 100644
index 0000000..3796e5f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_侧面.webp
new file mode 100644
index 0000000..896d873
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_俯视.webp
new file mode 100644
index 0000000..426346f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_斜侧.webp
new file mode 100644
index 0000000..5984a33
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_正面.webp
new file mode 100644
index 0000000..991297f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P045_后仰・双臂夹紧/P045_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_仰视.webp
new file mode 100644
index 0000000..eb05a11
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_侧面.webp
new file mode 100644
index 0000000..b11d8df
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_俯视.webp
new file mode 100644
index 0000000..d88f5e8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_斜侧.webp
new file mode 100644
index 0000000..44f7fb6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_正面.webp
new file mode 100644
index 0000000..ba5e1a2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P046_单臂绕腰・一手抚颈/P046_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_仰视.webp
new file mode 100644
index 0000000..cf5ef5b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_侧面.webp
new file mode 100644
index 0000000..54283fb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_俯视.webp
new file mode 100644
index 0000000..64a8a5d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_斜侧.webp
new file mode 100644
index 0000000..a6b7a06
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_正面.webp
new file mode 100644
index 0000000..05beb0d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P047_双手置上胸向内挤/P047_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_仰视.webp
new file mode 100644
index 0000000..c053bbf
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_侧面.webp
new file mode 100644
index 0000000..3fb6d7c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_俯视.webp
new file mode 100644
index 0000000..c6d52e1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_斜侧.webp
new file mode 100644
index 0000000..20e429f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_正面.webp
new file mode 100644
index 0000000..f222bd2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P048_手背托腮前倾/P048_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_仰视.webp
new file mode 100644
index 0000000..28401e2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_侧面.webp
new file mode 100644
index 0000000..4caee08
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_俯视.webp
new file mode 100644
index 0000000..435ce6f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_斜侧.webp
new file mode 100644
index 0000000..ea07690
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_正面.webp
new file mode 100644
index 0000000..1859c32
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P049_四肢着地俯视(胸口视角)/P049_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_仰视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_仰视.webp
new file mode 100644
index 0000000..73be59b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_侧面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_侧面.webp
new file mode 100644
index 0000000..8e05c42
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_俯视.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_俯视.webp
new file mode 100644
index 0000000..0b6da8a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_斜侧.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_斜侧.webp
new file mode 100644
index 0000000..5908735
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_正面.webp b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_正面.webp
new file mode 100644
index 0000000..87dd660
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/上半身单人/挤胸・强调事业线系/P050_双臂环抱托胸/P050_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_仰视.webp
new file mode 100644
index 0000000..22c1b4d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_侧面.webp
new file mode 100644
index 0000000..75d3693
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_俯视.webp
new file mode 100644
index 0000000..4d05dd0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_斜侧.webp
new file mode 100644
index 0000000..135eae5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_正面.webp
new file mode 100644
index 0000000..dd58f6d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P041_女孩坐・双手扶腿/P041_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_仰视.webp
new file mode 100644
index 0000000..18a818c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_侧面.webp
new file mode 100644
index 0000000..f79fabd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_俯视.webp
new file mode 100644
index 0000000..de6968f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_斜侧.webp
new file mode 100644
index 0000000..49242ed
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_正面.webp
new file mode 100644
index 0000000..2217cec
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P042_女孩坐・双手前撑/P042_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_仰视.webp
new file mode 100644
index 0000000..cff3cb8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_侧面.webp
new file mode 100644
index 0000000..87f0d89
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_俯视.webp
new file mode 100644
index 0000000..6853ca1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_斜侧.webp
new file mode 100644
index 0000000..9eb73d8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_正面.webp
new file mode 100644
index 0000000..5132fde
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P043_女孩坐・双手抱头后/P043_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_仰视.webp
new file mode 100644
index 0000000..257af22
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_侧面.webp
new file mode 100644
index 0000000..ea453fd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_俯视.webp
new file mode 100644
index 0000000..187a8f4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_斜侧.webp
new file mode 100644
index 0000000..6f883f0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_正面.webp
new file mode 100644
index 0000000..0e538da
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P044_女孩坐・双手后撑/P044_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_仰视.webp
new file mode 100644
index 0000000..c096cf4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_侧面.webp
new file mode 100644
index 0000000..65ba7ad
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_俯视.webp
new file mode 100644
index 0000000..06e8976
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_斜侧.webp
new file mode 100644
index 0000000..e33a0e1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_正面.webp
new file mode 100644
index 0000000..58b4383
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P045_侧坐・双腿斜向右侧/P045_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_仰视.webp
new file mode 100644
index 0000000..22529f5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_侧面.webp
new file mode 100644
index 0000000..0ae91c9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_俯视.webp
new file mode 100644
index 0000000..fc3e8e4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_斜侧.webp
new file mode 100644
index 0000000..5aa6bcd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_正面.webp
new file mode 100644
index 0000000..a7fc2bc
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P046_侧坐・手扶脸颊/P046_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_仰视.webp
new file mode 100644
index 0000000..6e6341f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_侧面.webp
new file mode 100644
index 0000000..82e182e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_俯视.webp
new file mode 100644
index 0000000..c2f4284
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_斜侧.webp
new file mode 100644
index 0000000..73e9e80
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_正面.webp
new file mode 100644
index 0000000..0428fbd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P047_侧坐・单臂上伸/P047_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_仰视.webp
new file mode 100644
index 0000000..f159a36
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_侧面.webp
new file mode 100644
index 0000000..cd09ee4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_俯视.webp
new file mode 100644
index 0000000..0a63364
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_斜侧.webp
new file mode 100644
index 0000000..db376b7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_正面.webp
new file mode 100644
index 0000000..64a018d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/侧坐・女孩坐/P048_女孩坐・手抚颈侧/P048_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_仰视.webp
new file mode 100644
index 0000000..6c6cb5b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_侧面.webp
new file mode 100644
index 0000000..a4ec41c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_俯视.webp
new file mode 100644
index 0000000..2a8706e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_斜侧.webp
new file mode 100644
index 0000000..299d988
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_正面.webp
new file mode 100644
index 0000000..7ee4ecc
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P067_前倾・手扶膝/P067_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_仰视.webp
new file mode 100644
index 0000000..61f431f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_侧面.webp
new file mode 100644
index 0000000..687e860
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_俯视.webp
new file mode 100644
index 0000000..472a751
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_斜侧.webp
new file mode 100644
index 0000000..74431b0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_正面.webp
new file mode 100644
index 0000000..6352f26
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P068_前倾・手触小腿/P068_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_仰视.webp
new file mode 100644
index 0000000..a5ccc58
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_侧面.webp
new file mode 100644
index 0000000..da88215
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_俯视.webp
new file mode 100644
index 0000000..777b455
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_斜侧.webp
new file mode 100644
index 0000000..9393d7e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_正面.webp
new file mode 100644
index 0000000..82e5b33
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P069_前倾・单手扶腰・仰望/P069_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_仰视.webp
new file mode 100644
index 0000000..6043057
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_侧面.webp
new file mode 100644
index 0000000..a490a56
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_俯视.webp
new file mode 100644
index 0000000..a903a74
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_斜侧.webp
new file mode 100644
index 0000000..1e5b9bb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_正面.webp
new file mode 100644
index 0000000..c60390f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P070_前倾・手扶大腿・臀部后坐/P070_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_仰视.webp
new file mode 100644
index 0000000..92fb4a6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_侧面.webp
new file mode 100644
index 0000000..ded5a2d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_俯视.webp
new file mode 100644
index 0000000..4c30ca7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_斜侧.webp
new file mode 100644
index 0000000..f9cfaf3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_正面.webp
new file mode 100644
index 0000000..7ac16f4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P071_前倾・双臂自然下垂/P071_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_仰视.webp
new file mode 100644
index 0000000..6f32798
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_侧面.webp
new file mode 100644
index 0000000..2829b10
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_俯视.webp
new file mode 100644
index 0000000..1ed779e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_斜侧.webp
new file mode 100644
index 0000000..1adfbf4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_正面.webp
new file mode 100644
index 0000000..d86b9c1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/前倾/P072_前倾・单腿后抬/P072_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_仰视.webp
new file mode 100644
index 0000000..6e95115
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_侧面.webp
new file mode 100644
index 0000000..334730b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_俯视.webp
new file mode 100644
index 0000000..c8fc4a2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_斜侧.webp
new file mode 100644
index 0000000..7ecf779
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_正面.webp
new file mode 100644
index 0000000..6193333
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P073_后仰・站姿挺背/P073_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_仰视.webp
new file mode 100644
index 0000000..5f5fef4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_侧面.webp
new file mode 100644
index 0000000..caf66df
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_俯视.webp
new file mode 100644
index 0000000..9b85ae6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_斜侧.webp
new file mode 100644
index 0000000..e91b533
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_正面.webp
new file mode 100644
index 0000000..1782c96
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P074_跪立・双手后撑后仰/P074_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_仰视.webp
new file mode 100644
index 0000000..3155b39
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_侧面.webp
new file mode 100644
index 0000000..7259fb5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_俯视.webp
new file mode 100644
index 0000000..b1d0c73
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_斜侧.webp
new file mode 100644
index 0000000..425c700
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_正面.webp
new file mode 100644
index 0000000..07aeff4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/后仰・挺背/P075_后仰・双臂上举挺身/P075_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_仰视.webp
new file mode 100644
index 0000000..4646c6a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_侧面.webp
new file mode 100644
index 0000000..d3139db
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_俯视.webp
new file mode 100644
index 0000000..125fc4d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_斜侧.webp
new file mode 100644
index 0000000..d2837b7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_正面.webp
new file mode 100644
index 0000000..3a7050e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P001_后仰坐・单膝立起/P001_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_仰视.webp
new file mode 100644
index 0000000..eabd3a3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_侧面.webp
new file mode 100644
index 0000000..af90fcc
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_俯视.webp
new file mode 100644
index 0000000..c1f8980
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_斜侧.webp
new file mode 100644
index 0000000..8aa6194
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_正面.webp
new file mode 100644
index 0000000..416afd5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P002_单手支撑・双腿斜向前伸/P002_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_仰视.webp
new file mode 100644
index 0000000..a641632
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_侧面.webp
new file mode 100644
index 0000000..cafaf14
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_俯视.webp
new file mode 100644
index 0000000..142d769
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_斜侧.webp
new file mode 100644
index 0000000..15db264
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_正面.webp
new file mode 100644
index 0000000..e923174
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P003_双手后撑挺胸/P003_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_仰视.webp
new file mode 100644
index 0000000..a3de06e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_侧面.webp
new file mode 100644
index 0000000..553bf2a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_俯视.webp
new file mode 100644
index 0000000..4c7565c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_斜侧.webp
new file mode 100644
index 0000000..a8d5d17
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_正面.webp
new file mode 100644
index 0000000..3b2af06
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P004_三角坐・双膝左倾/P004_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_仰视.webp
new file mode 100644
index 0000000..c440cee
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_侧面.webp
new file mode 100644
index 0000000..fa19842
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_俯视.webp
new file mode 100644
index 0000000..ed5329d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_斜侧.webp
new file mode 100644
index 0000000..40ba8b5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_正面.webp
new file mode 100644
index 0000000..8dcd12f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P005_单膝立起・手抚发/P005_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_仰视.webp
new file mode 100644
index 0000000..a88fee7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_侧面.webp
new file mode 100644
index 0000000..827b757
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_俯视.webp
new file mode 100644
index 0000000..0870a06
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_斜侧.webp
new file mode 100644
index 0000000..eb9fa5b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_正面.webp
new file mode 100644
index 0000000..1adb7d9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P006_双腿斜伸・手扶腰/P006_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_仰视.webp
new file mode 100644
index 0000000..c521f1f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_侧面.webp
new file mode 100644
index 0000000..b156ed0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_俯视.webp
new file mode 100644
index 0000000..7ac3dfd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_斜侧.webp
new file mode 100644
index 0000000..8eb9d98
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_正面.webp
new file mode 100644
index 0000000..69eb40c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P007_双肘支撑斜倚坐/P007_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_仰视.webp
new file mode 100644
index 0000000..d3a4d8b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_侧面.webp
new file mode 100644
index 0000000..8ffbd37
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_俯视.webp
new file mode 100644
index 0000000..7962b56
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_斜侧.webp
new file mode 100644
index 0000000..c449d1d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_正面.webp
new file mode 100644
index 0000000..17ffd76
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P008_单膝立起・双手抱头后/P008_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_仰视.webp
new file mode 100644
index 0000000..2c4aa5f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_侧面.webp
new file mode 100644
index 0000000..0acc1b3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_俯视.webp
new file mode 100644
index 0000000..7ee8cf7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_斜侧.webp
new file mode 100644
index 0000000..52532d1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_正面.webp
new file mode 100644
index 0000000..5b04231
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P009_向右倾・肘部支撑/P009_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_仰视.webp
new file mode 100644
index 0000000..feb1d57
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_侧面.webp
new file mode 100644
index 0000000..25ff954
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_俯视.webp
new file mode 100644
index 0000000..7da8c93
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_斜侧.webp
new file mode 100644
index 0000000..25bf364
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_正面.webp
new file mode 100644
index 0000000..838a954
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P010_手抚脚踝/P010_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_仰视.webp
new file mode 100644
index 0000000..749b98f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_侧面.webp
new file mode 100644
index 0000000..d2fa99f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_俯视.webp
new file mode 100644
index 0000000..2400ed9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_斜侧.webp
new file mode 100644
index 0000000..efb34ba
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_正面.webp
new file mode 100644
index 0000000..a3d08f1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P011_双手抱头・挺胸后仰/P011_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_仰视.webp
new file mode 100644
index 0000000..8aa82a0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_侧面.webp
new file mode 100644
index 0000000..df64e89
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_俯视.webp
new file mode 100644
index 0000000..59e937a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_斜侧.webp
new file mode 100644
index 0000000..f21c593
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_正面.webp
new file mode 100644
index 0000000..8800c3c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P012_单膝立起・托腮/P012_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_仰视.webp
new file mode 100644
index 0000000..5e34a4c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_侧面.webp
new file mode 100644
index 0000000..f61302b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_俯视.webp
new file mode 100644
index 0000000..e77c062
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_斜侧.webp
new file mode 100644
index 0000000..581925d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_正面.webp
new file mode 100644
index 0000000..5e55f9c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P013_双腿悬空后倚/P013_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_仰视.webp
new file mode 100644
index 0000000..7b6a13e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_侧面.webp
new file mode 100644
index 0000000..6d44c95
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_俯视.webp
new file mode 100644
index 0000000..f748d52
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_斜侧.webp
new file mode 100644
index 0000000..f1d7b95
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_正面.webp
new file mode 100644
index 0000000..70b964d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/坐姿/P014_握脚踝・单膝立起/P014_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_仰视.webp
new file mode 100644
index 0000000..add4075
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_侧面.webp
new file mode 100644
index 0000000..d224455
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_俯视.webp
new file mode 100644
index 0000000..506455a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_斜侧.webp
new file mode 100644
index 0000000..23aa2ed
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_正面.webp
new file mode 100644
index 0000000..822aed4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P077_扭身・站姿展臂/P077_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_仰视.webp
new file mode 100644
index 0000000..504d7a8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_侧面.webp
new file mode 100644
index 0000000..958281d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_俯视.webp
new file mode 100644
index 0000000..34c8cca
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_斜侧.webp
new file mode 100644
index 0000000..c5ac65e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_正面.webp
new file mode 100644
index 0000000..6a3b8e0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P078_扭身・跪立回望/P078_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_仰视.webp
new file mode 100644
index 0000000..4de2648
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_侧面.webp
new file mode 100644
index 0000000..cbd1517
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_俯视.webp
new file mode 100644
index 0000000..6ed97bd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_斜侧.webp
new file mode 100644
index 0000000..ef285e8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_正面.webp
new file mode 100644
index 0000000..d9d1db9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/扭身/P079_扭身・坐姿上体扭转/P079_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_仰视.webp
new file mode 100644
index 0000000..f1a779d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_侧面.webp
new file mode 100644
index 0000000..3b0d2df
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_俯视.webp
new file mode 100644
index 0000000..748075b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_斜侧.webp
new file mode 100644
index 0000000..7eebdac
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_正面.webp
new file mode 100644
index 0000000..3897bea
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P015_站立・对立式平衡・手扶腰/P015_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_仰视.webp
new file mode 100644
index 0000000..4972e9a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_侧面.webp
new file mode 100644
index 0000000..4bc7dd8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_俯视.webp
new file mode 100644
index 0000000..b0b4b14
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_斜侧.webp
new file mode 100644
index 0000000..0bd837a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_正面.webp
new file mode 100644
index 0000000..4e4edbb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P016_站立・双手撩发/P016_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_仰视.webp
new file mode 100644
index 0000000..fb4b5f5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_侧面.webp
new file mode 100644
index 0000000..9238e40
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_俯视.webp
new file mode 100644
index 0000000..59441fc
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_斜侧.webp
new file mode 100644
index 0000000..3115086
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_正面.webp
new file mode 100644
index 0000000..2f80d69
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P017_站立・回眸顾盼/P017_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_仰视.webp
new file mode 100644
index 0000000..3faa7af
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_侧面.webp
new file mode 100644
index 0000000..0d52508
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_俯视.webp
new file mode 100644
index 0000000..e50b67b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_斜侧.webp
new file mode 100644
index 0000000..b1fd3a4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_正面.webp
new file mode 100644
index 0000000..ab7121b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P018_站立・双手扶腰/P018_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_仰视.webp
new file mode 100644
index 0000000..a2dd80d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_侧面.webp
new file mode 100644
index 0000000..f66f168
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_俯视.webp
new file mode 100644
index 0000000..7407e9f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_斜侧.webp
new file mode 100644
index 0000000..cfd80ae
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_正面.webp
new file mode 100644
index 0000000..271f98a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P019_站立・双臂上举伸展/P019_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_仰视.webp
new file mode 100644
index 0000000..a03203a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_侧面.webp
new file mode 100644
index 0000000..c25677b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_俯视.webp
new file mode 100644
index 0000000..5b18ba5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_斜侧.webp
new file mode 100644
index 0000000..2930ade
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_正面.webp
new file mode 100644
index 0000000..ea5436d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P020_站立・单手抚后脑/P020_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_仰视.webp
new file mode 100644
index 0000000..9185b1c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_侧面.webp
new file mode 100644
index 0000000..58f5be3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_俯视.webp
new file mode 100644
index 0000000..23329a1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_斜侧.webp
new file mode 100644
index 0000000..8ddcfd1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_正面.webp
new file mode 100644
index 0000000..289a039
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P021_站立・一手抚颈一手扶腿/P021_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_仰视.webp
new file mode 100644
index 0000000..ffe5591
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_侧面.webp
new file mode 100644
index 0000000..5499626
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_俯视.webp
new file mode 100644
index 0000000..ac71b73
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_斜侧.webp
new file mode 100644
index 0000000..e73ac17
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_正面.webp
new file mode 100644
index 0000000..84e8f4e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P022_站立・双臂后展挺胸/P022_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_仰视.webp
new file mode 100644
index 0000000..31e90d6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_侧面.webp
new file mode 100644
index 0000000..0cd07d4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_俯视.webp
new file mode 100644
index 0000000..2d7ebf7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_斜侧.webp
new file mode 100644
index 0000000..30093b7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_正面.webp
new file mode 100644
index 0000000..98b9ef0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P024_站立・单腿后抬/P024_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_仰视.webp
new file mode 100644
index 0000000..fe28b34
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_侧面.webp
new file mode 100644
index 0000000..8011414
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_俯视.webp
new file mode 100644
index 0000000..3668804
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_斜侧.webp
new file mode 100644
index 0000000..ab3220c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_正面.webp
new file mode 100644
index 0000000..f2f6095
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P025_站立・分腿双手扶腰/P025_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_仰视.webp
new file mode 100644
index 0000000..203174a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_侧面.webp
new file mode 100644
index 0000000..418fcd8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_俯视.webp
new file mode 100644
index 0000000..615372e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_斜侧.webp
new file mode 100644
index 0000000..6e99c2a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_正面.webp
new file mode 100644
index 0000000..3c7954c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P026_站立・单臂上举顶胯/P026_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_仰视.webp
new file mode 100644
index 0000000..b454c7a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_侧面.webp
new file mode 100644
index 0000000..774cfc6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_俯视.webp
new file mode 100644
index 0000000..ed59fb7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_斜侧.webp
new file mode 100644
index 0000000..14a4bc6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_正面.webp
new file mode 100644
index 0000000..4745d21
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P027_站立・双手抚后颈/P027_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_仰视.webp
new file mode 100644
index 0000000..2772535
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_侧面.webp
new file mode 100644
index 0000000..12174b0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_俯视.webp
new file mode 100644
index 0000000..88041ba
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_斜侧.webp
new file mode 100644
index 0000000..3b460bb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_正面.webp
new file mode 100644
index 0000000..4b9cf8b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P029_站立・发丝飘扬/P029_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_仰视.webp
new file mode 100644
index 0000000..3095c88
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_侧面.webp
new file mode 100644
index 0000000..2e7548e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_俯视.webp
new file mode 100644
index 0000000..a250cb1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_斜侧.webp
new file mode 100644
index 0000000..7299403
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_正面.webp
new file mode 100644
index 0000000..dd7576b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/站姿/P030_站立・踮脚双臂V字/P030_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_仰视.webp
new file mode 100644
index 0000000..7b7690c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_侧面.webp
new file mode 100644
index 0000000..9e3b81b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_俯视.webp
new file mode 100644
index 0000000..8fca0f8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_斜侧.webp
new file mode 100644
index 0000000..d0a376b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_正面.webp
new file mode 100644
index 0000000..fa8363f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P049_仰卧・双臂过头/P049_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_仰视.webp
new file mode 100644
index 0000000..87a2027
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_侧面.webp
new file mode 100644
index 0000000..2cb610a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_俯视.webp
new file mode 100644
index 0000000..5a7b7ea
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_斜侧.webp
new file mode 100644
index 0000000..22f1e0c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_正面.webp
new file mode 100644
index 0000000..d57c482
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P050_侧卧・托腮/P050_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_仰视.webp
new file mode 100644
index 0000000..329cabe
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_侧面.webp
new file mode 100644
index 0000000..c99afd7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_俯视.webp
new file mode 100644
index 0000000..2cfcb4d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_斜侧.webp
new file mode 100644
index 0000000..306aa3b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_正面.webp
new file mode 100644
index 0000000..4e4be94
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P051_俯卧・抬腿/P051_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_仰视.webp
new file mode 100644
index 0000000..b74e567
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_侧面.webp
new file mode 100644
index 0000000..609b4fb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_俯视.webp
new file mode 100644
index 0000000..3d5c968
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_斜侧.webp
new file mode 100644
index 0000000..c10c524
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_正面.webp
new file mode 100644
index 0000000..4c534c4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P052_仰卧・单膝立起/P052_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_仰视.webp
new file mode 100644
index 0000000..0102169
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_侧面.webp
new file mode 100644
index 0000000..21ad593
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_俯视.webp
new file mode 100644
index 0000000..05665a5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_斜侧.webp
new file mode 100644
index 0000000..4b4e13e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_正面.webp
new file mode 100644
index 0000000..95d0c02
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P054_侧卧・腰线曲线/P054_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_仰视.webp
new file mode 100644
index 0000000..6482118
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_侧面.webp
new file mode 100644
index 0000000..f642956
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_俯视.webp
new file mode 100644
index 0000000..9f77d7b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_斜侧.webp
new file mode 100644
index 0000000..bc9e48e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_正面.webp
new file mode 100644
index 0000000..90196e2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P056_仰卧・双腿竖直向上/P056_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_仰视.webp
new file mode 100644
index 0000000..47acaac
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_侧面.webp
new file mode 100644
index 0000000..9aba291
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_俯视.webp
new file mode 100644
index 0000000..ae2f6cf
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_斜侧.webp
new file mode 100644
index 0000000..6e8804f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_正面.webp
new file mode 100644
index 0000000..fffe0aa
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P057_侧卧・单臂过头/P057_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_仰视.webp
new file mode 100644
index 0000000..ac315b6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_侧面.webp
new file mode 100644
index 0000000..ae7821f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_俯视.webp
new file mode 100644
index 0000000..a48e9cf
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_斜侧.webp
new file mode 100644
index 0000000..ae0e7ab
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_正面.webp
new file mode 100644
index 0000000..adb10f7
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P058_俯卧・以臂枕头/P058_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_仰视.webp
new file mode 100644
index 0000000..0202a6c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_侧面.webp
new file mode 100644
index 0000000..61c5ae4
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_俯视.webp
new file mode 100644
index 0000000..858b5f6
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_斜侧.webp
new file mode 100644
index 0000000..9482b64
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_正面.webp
new file mode 100644
index 0000000..d8da229
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/趴卧/P059_仰卧・胸口上挺/P059_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_仰视.webp
new file mode 100644
index 0000000..fb9528a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_侧面.webp
new file mode 100644
index 0000000..11ebc38
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_俯视.webp
new file mode 100644
index 0000000..8d61827
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_斜侧.webp
new file mode 100644
index 0000000..4e4ef19
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_正面.webp
new file mode 100644
index 0000000..4494b53
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P031_跪立・双手扶腿/P031_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_仰视.webp
new file mode 100644
index 0000000..4a17f01
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_侧面.webp
new file mode 100644
index 0000000..c402800
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_俯视.webp
new file mode 100644
index 0000000..adbf2c1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_斜侧.webp
new file mode 100644
index 0000000..7c42f0f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_正面.webp
new file mode 100644
index 0000000..d5e0f90
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P032_跪立・双手抱头后/P032_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_仰视.webp
new file mode 100644
index 0000000..cdbd990
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_侧面.webp
new file mode 100644
index 0000000..15ba7a3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_俯视.webp
new file mode 100644
index 0000000..2b844f8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_斜侧.webp
new file mode 100644
index 0000000..96c79d2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_正面.webp
new file mode 100644
index 0000000..6cd206d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P033_单膝跪・手扶膝/P033_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_仰视.webp
new file mode 100644
index 0000000..9209d1b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_侧面.webp
new file mode 100644
index 0000000..51ce95b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_俯视.webp
new file mode 100644
index 0000000..7f96d8e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_斜侧.webp
new file mode 100644
index 0000000..8d3ee16
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_正面.webp
new file mode 100644
index 0000000..e51a0c1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P034_跪立・上体后仰/P034_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_仰视.webp
new file mode 100644
index 0000000..72c7411
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_侧面.webp
new file mode 100644
index 0000000..8e84238
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_俯视.webp
new file mode 100644
index 0000000..ddf2e2e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_斜侧.webp
new file mode 100644
index 0000000..c523d4f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_正面.webp
new file mode 100644
index 0000000..1e24c98
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P035_跪立・双臂上举/P035_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_仰视.webp
new file mode 100644
index 0000000..0c536ae
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_侧面.webp
new file mode 100644
index 0000000..484951a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_俯视.webp
new file mode 100644
index 0000000..82374ea
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_斜侧.webp
new file mode 100644
index 0000000..e8b4b43
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_正面.webp
new file mode 100644
index 0000000..21968f5
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P036_跪立・一手撩发一手扶腰/P036_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_仰视.webp
new file mode 100644
index 0000000..93d7764
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_侧面.webp
new file mode 100644
index 0000000..181e82e
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_俯视.webp
new file mode 100644
index 0000000..4dfc751
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_斜侧.webp
new file mode 100644
index 0000000..492467b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_正面.webp
new file mode 100644
index 0000000..5908a49
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P037_单膝跪・仰望/P037_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_仰视.webp
new file mode 100644
index 0000000..5909878
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_侧面.webp
new file mode 100644
index 0000000..f2017fb
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_俯视.webp
new file mode 100644
index 0000000..fb3fa87
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_斜侧.webp
new file mode 100644
index 0000000..e986193
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_正面.webp
new file mode 100644
index 0000000..3dec268
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P038_跪立・侧倾・手触地/P038_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_仰视.webp
new file mode 100644
index 0000000..29dc157
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_侧面.webp
new file mode 100644
index 0000000..78c23e8
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_俯视.webp
new file mode 100644
index 0000000..05e3897
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_斜侧.webp
new file mode 100644
index 0000000..01ca74c
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_正面.webp
new file mode 100644
index 0000000..b662399
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P039_跪立・双手扶腰后仰/P039_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_仰视.webp
new file mode 100644
index 0000000..0eb2575
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_侧面.webp
new file mode 100644
index 0000000..dc67964
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_俯视.webp
new file mode 100644
index 0000000..989a640
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_斜侧.webp
new file mode 100644
index 0000000..996151a
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_正面.webp
new file mode 100644
index 0000000..662ddb1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/跪立/P040_跪立・摆胯・单臂上举/P040_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_仰视.webp
new file mode 100644
index 0000000..df61352
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_侧面.webp
new file mode 100644
index 0000000..5ebce0d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_俯视.webp
new file mode 100644
index 0000000..c484c06
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_斜侧.webp
new file mode 100644
index 0000000..2239276
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_正面.webp
new file mode 100644
index 0000000..8977c55
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P061_蹲姿・手扶膝/P061_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_仰视.webp
new file mode 100644
index 0000000..dea59e9
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_侧面.webp
new file mode 100644
index 0000000..e0eb55f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_俯视.webp
new file mode 100644
index 0000000..382fcb2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_斜侧.webp
new file mode 100644
index 0000000..dd36fee
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_正面.webp
new file mode 100644
index 0000000..ed940b2
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P062_蹲姿・单手触地/P062_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_仰视.webp
new file mode 100644
index 0000000..1c2c0e1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_侧面.webp
new file mode 100644
index 0000000..accbf98
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_俯视.webp
new file mode 100644
index 0000000..79d58f3
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_斜侧.webp
new file mode 100644
index 0000000..a921f04
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_正面.webp
new file mode 100644
index 0000000..63a9a75
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P063_蹲姿・托腮/P063_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_仰视.webp
new file mode 100644
index 0000000..7232dbd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_侧面.webp
new file mode 100644
index 0000000..092a442
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_俯视.webp
new file mode 100644
index 0000000..7b2bb19
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_斜侧.webp
new file mode 100644
index 0000000..15cc16b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_正面.webp
new file mode 100644
index 0000000..1363633
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P064_蹲姿・手抚发/P064_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_仰视.webp
new file mode 100644
index 0000000..a201a90
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_侧面.webp
new file mode 100644
index 0000000..53578d0
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_俯视.webp
new file mode 100644
index 0000000..79cf1b1
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_斜侧.webp
new file mode 100644
index 0000000..820cf1d
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_正面.webp
new file mode 100644
index 0000000..ac07c69
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P065_蹲姿・踮脚双手触地/P065_正面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_仰视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_仰视.webp
new file mode 100644
index 0000000..fb41475
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_仰视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_侧面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_侧面.webp
new file mode 100644
index 0000000..69d2d96
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_侧面.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_俯视.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_俯视.webp
new file mode 100644
index 0000000..2334abd
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_俯视.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_斜侧.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_斜侧.webp
new file mode 100644
index 0000000..d07367b
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_斜侧.webp differ
diff --git a/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_正面.webp b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_正面.webp
new file mode 100644
index 0000000..d840c7f
Binary files /dev/null and b/pose_assets/02_AI深度姿势库/全身单人・标准系/蹲姿/P066_蹲姿・回头/P066_正面.webp differ
diff --git a/pose_reference.py b/pose_reference.py
new file mode 100644
index 0000000..228597d
--- /dev/null
+++ b/pose_reference.py
@@ -0,0 +1,531 @@
+"""参考姿势(Pose Reference)—— 从姿势素材库里取一张参考图,喂给编辑模型。
+
+素材分两层,运行时合并成一个索引:
+
+1. **插件自带** `pose_assets/` —— 随插件分发,只放非敏感大类(上半身单人、
+ 全身单人・标准系),别人装完节点就能用。
+2. **本机外挂** —— 默认 `D:\\pose`,可用环境变量 `TP_POSE_ROOT` 改(也可放
+ `ComfyUI/models/pose_reference`)。敏感或自建素材丢进去,刷新即出现,不进 git。
+
+查找顺序是「本机外挂 → models → 插件自带」,所以同名素材以本机为准。
+
+素材目录结构(每一层根目录都一样):
+