Timeofday Styler (Advanced)
Time-of-day light for SDXL's dual encoders
- text_positive_g
- text_positive_l
- text_positive
- text_negative_g
- text_negative_l
- text_negative
The Advanced version of TimeofdayStyler: same time-of-day presets - Afternoon, BlueHour, Evening, GoldenHour, Midday, Morning, Night, Sunrise, Sunset, Twilight - but built for SDXL's dual text encoders. If your workflow uses a CLIPTextEncodeSDXL node with separate text_g and text_l boxes, this is the one that fits without an adapter.
The reason for the split: SDXL runs OpenCLIP-ViT/bigG and CLIP-ViT/L in parallel, and that second encoder carries a good part of SDXL's control over light and atmosphere. The Advanced node lets you address each encoder directly instead of copying the same string into both.
What you set
text_positive_g/text_positive_l- your prompt for the G and L encoders; same text in both is the usual case.text_negative- your negative prompt.timeofday- the preset;No optiondisables it.negative_prompt_to-Both,G only, orL only, routing the preset's built-in negative. DefaultBoth.log_prompt- prints the assembled prompt to the console so you can see what landed in each encoder.
Outputs: text_positive_g, text_positive_l, a merged text_positive, and the three negatives (text_negative_g, text_negative_l, text_negative). Wire _g and _l into CLIPTextEncodeSDXL. Not on an SDXL dual-encode graph? Take the merged pair and feed a normal CLIP Text Encode.
Installing it
ComfyUI Manager, search ComfyUI_MileHighStyler. It's an older, niche pack Manager doesn't always index, so if it's missing, clone it:
cd ComfyUI/custom_nodes
git clone https://github.com/TripleHeadedMonkey/ComfyUI_MileHighStyler
Restart ComfyUI. No models, no dependencies - pure JSON templates, instant install, no VRAM cost.
Common snags
Two recurring ones. The six outputs: don't wire all of them, pick a lane - SDXL dual-encode uses _g and _l, everything else uses the merged pair. And the overlap with lighting: GoldenHour here and a preset from LightingStylerAdvanced both push on the light, so stacking them can double up or conflict. Check log_prompt and keep it to one source of light direction.
A useful pairing on SDXL: set timeofday to GoldenHour here and route the shot through PerfectionStyler's camera field, and you get warm low sun plus a named lens - the two cues the community rates highest for pulling SDXL out of its default plastic look. Just don't also stack a lighting preset that fights the sun direction.
The honest limitation, same as the rest of the pack: the two-encoder split is an SDXL thing, so this node belongs on Illustrious, Pony, Juggernaut and other SDXL finetunes. On a 2026 LLM-encoded model (Flux 2, Z-Image, Anima) there's no G/L to address, the weighting is discarded, and the negative is inert at CFG 1 - so it's the right node on the older stack and a no-op on the newer one.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| text_positive_g | STRING | — | |
| text_positive_l | STRING | — | |
| text_negative | STRING | — | |
| timeofday | COMBO | 11 options: No option, Afternoon, BlueHour, Evening, GoldenHour, Midday, +5 | |
| negative_prompt_to | COMBO | Both | 3 options: Both, G only, L only |
| log_prompt | BOOLEAN | true | — |
Outputs (6)
| Name | Type | Description |
|---|---|---|
| text_positive_g | STRING | — |
| text_positive_l | STRING | — |
| text_positive | STRING | — |
| text_negative_g | STRING | — |
| text_negative_l | STRING | — |
| text_negative | STRING | — |