Extract camera config policy
This commit is contained in:
@@ -128,9 +128,10 @@ Already isolated:
|
||||
- climax role graph wording lives in `hardcore_role_climax.py`, covering
|
||||
ejaculation aftermath placement for face/body/ass, lap, open-thigh,
|
||||
side-lying, and front/back group layouts.
|
||||
- camera-scene prose and coworking composition adaptation live in
|
||||
`scene_camera_adapters.py`; `prompt_builder.py` still owns camera config
|
||||
parsing and row mutation.
|
||||
- camera option schema, orbit/Qwen translation, config parsing, camera
|
||||
directive text, and camera caption text live in `camera_config.py`;
|
||||
camera-scene prose and coworking composition adaptation live in
|
||||
`scene_camera_adapters.py`; `prompt_builder.py` still owns row mutation.
|
||||
- shared hardcore environment-anchor cleanup lives in
|
||||
`hardcore_text_cleanup.py` and normalizes malformed pool joins before metadata
|
||||
reaches formatter routes.
|
||||
@@ -305,8 +306,9 @@ Already isolated:
|
||||
registration maps imported by `__init__.py`.
|
||||
- seed/global-seed/seed-locker and SDXL/Krea2 resolution utility nodes live in
|
||||
`node_seed_resolution.py`, with registration maps imported by `__init__.py`.
|
||||
- camera/orbit/Qwen translator utility nodes live in `node_camera.py`, with
|
||||
registration maps imported by `__init__.py`.
|
||||
- camera/orbit/Qwen translator utility nodes live in `node_camera.py`, using
|
||||
`camera_config.py` for option lists and JSON builders, with registration maps
|
||||
imported by `__init__.py`.
|
||||
- hair, age/body/eyes/clothing pools, manual character details, character
|
||||
slots, and profile save/load nodes live in `node_character.py`, with
|
||||
registration maps imported by `__init__.py`.
|
||||
|
||||
@@ -68,6 +68,7 @@ Core helper ownership:
|
||||
| Python module | What it owns |
|
||||
| --- | --- |
|
||||
| `category_library.py` | JSON category loading, subcategory normalization, named scene/expression/composition pool loading, cast compatibility filtering, exact subcategory lookup, and inheritance-based pool merging. |
|
||||
| `camera_config.py` | Camera option schema, direct/orbit/Qwen camera JSON builders, camera config parsing, plain camera directive text, and camera caption labels. |
|
||||
| `pair_options.py` | Insta/OF option schema/defaults, softcore category/outfit/pose pools, partner outfit pools, clothing-continuity labels, negatives, and hardcore cast count policy. |
|
||||
| `pair_rows.py` | Insta/OF soft/hard row creation, softcore expression override resolution, Woman A slot context application, soft outfit/pose overrides, and POV row fields. |
|
||||
| `pair_camera.py` | Insta/OF soft/hard camera route resolution, same-as-softcore camera mode, camera-detail override, camera-aware composition mutation, POV camera suppression, and synchronized row/root camera metadata. |
|
||||
@@ -565,9 +566,10 @@ Camera config nodes:
|
||||
|
||||
Camera handling:
|
||||
|
||||
1. Camera nodes emit `camera_config`.
|
||||
1. Camera nodes emit `camera_config` through `camera_config.py`.
|
||||
2. `build_prompt` calls `_apply_camera_config`.
|
||||
3. `_camera_directive` creates a plain camera sentence unless disabled/off.
|
||||
3. `camera_config.camera_directive` creates a plain camera sentence unless
|
||||
disabled/off.
|
||||
4. `_camera_scene_directive_for_context` can add location-aware camera text.
|
||||
5. POV rows suppress the normal camera directive and use first-person camera
|
||||
wording instead.
|
||||
@@ -698,7 +700,7 @@ These do not own prompt pool wording, but they affect execution and review:
|
||||
| Persistent text preview | `loop_nodes.py`, `web/preview_any_text.js` | Stores any value as text and keeps it after workflow reload. |
|
||||
| Builder node wrappers | `node_builder.py`, imported by `__init__.py` | Direct prompt builder and config-driven prompt builder ComfyUI declarations. |
|
||||
| Seed and resolution utility nodes | `node_seed_resolution.py`, imported by `__init__.py` | Global/per-axis seed configs plus SDXL/Krea width/height helpers. |
|
||||
| Camera utility nodes | `node_camera.py`, imported by `__init__.py` | Direct camera config, orbit-to-camera config, and Qwen MultiAngle camera translation. |
|
||||
| Camera utility nodes | `node_camera.py`, imported by `__init__.py` | UI wrappers for direct camera config, orbit-to-camera config, and Qwen MultiAngle camera translation via `camera_config.py`. |
|
||||
| Character utility nodes | `node_character.py`, imported by `__init__.py` | Hair, age/body/eyes/clothing pools, manual details, character slots, and profile save/load nodes. |
|
||||
| Hardcore position utility nodes | `node_hardcore_position.py`, imported by `__init__.py` | Position-family pool and action/filter gates for hardcore routes. |
|
||||
| Formatter utility nodes | `node_formatter.py`, imported by `__init__.py` | Caption naturalizer, Krea2 formatter, and SDXL formatter node wrappers. |
|
||||
|
||||
Reference in New Issue
Block a user