NEW
Mature ContentNEW
NEW
NEW
NEW
Mature Content




Generating a pretty image is easy. Getting the same character — same face, same costume, same ornament language — out of a diffusion model in a completely new scene is the hard part, and it is what production actually needs.
The root cause is a trade-off I mapped through repeated experiments: text-to-image gives you full freedom of pose and staging, but the costume design drifts on every roll; image-to-image anchored on the character sheet preserves the design almost pixel-perfectly, but locks the pose. A production pipeline has to navigate between those two poles deliberately — not hope for a lucky seed.
The image-to-image staging graph exactly as it runs — an open-weights base model with a self-trained style LoRA stacked on top, the character sheet loaded and VAE-encoded as the latent anchor, a positive-only prompt (at CFG 1 the negative is zeroed out), and the identity-preserving denoise on the sampler:

Reading the graph left to right: model + LoRA stack, the prompt block, the character sheet entering as the latent — all meeting in one sampler whose denoise value decides how much of the sheet survives. Every splash post on this site went through a variant of this graph.
See Empress of the Lotus Pond — the standing sheet and the pond splash are the same character to the pixel level of the costume. The same pipeline produced the Golden Emperor key visual and the Dark Legion action variations.





You give the graph exactly one image: a side view of the weapon. That is the entire input. One queue later you have the side profile, 3/4 front and rear, the opposite side, an optic close-up, the aim-down-sights shot — and the assembled product sheet. Same gun, same materials, same markings, across every camera, with no per-view prompting and no cleanup between angles.
Rotation is powered by a dedicated identity-preserving edit node: it anchors the weapon’s design while the camera moves — this is what makes true multi-view rotation possible at all. On top of it, a single reference-strength dial selects the operation:
| strength | operation |
|---|---|
| low | rotate to a new angle |
| mid | edit parts — mount an optic, clean up effects |
| high | lock a finished view |
Per-part colour blocking keeps an entire skin set consistent through every rotation.
Every view carries its own script: its camera position, its perspective, and its own list of exactly the parts that camera sees. The aim-down-sights view describes the stock and a mirror-symmetric frame; the product views describe the full silhouette. Each view renders precisely what it should — nothing leaks between cameras.
One fan-out graph: drop in any weapon image and it is encoded once, branched into every view, and stitched into the sheet at the end. Each view chains from the geometrically closest source image, so identity carries in pixels, not just words.

Nine skins × up to seven views, assembled into a 10-page deck — published as Gunmaker Test in the ART section. Everything ran locally with no style LoRA — and not a single paid node or API call.






You give the pipeline exactly one front-facing character illustration. That is the entire input. One queue later you have the left profile, the back, the right profile, up to two further rotations, and a stitched contact sheet — same costume, same proportions, same palette, across every camera. No per-view prompting, no manual rotation, no cleanup between angles: the finished deck below was produced from the single image loaded in the top-left node.
Everything runs as a single fan-out graph on the same identity-preserving edit engine as the Gunmaker, ported from hardsurface to the human figure. The models load once and feed every branch. Each view renders, purges its VRAM, and saves — then the strip assembles itself at the end.
Two details make it production-grade rather than a demo:

Views are not prompted freehand. Every component of the design — jacket, harness, prosthetic segments — lives in one table as color + position + size, tagged with which side of the body it sits on, which plane it faces, and what it covers. Each view’s sentences are assembled from that table by rule and wired into editable text nodes on the canvas, so a tweak never means rebuilding the graph.
That structure is what keeps a deliberately asymmetric design honest: left and right profiles are generated from different part lists, a garment that covers other parts automatically suppresses them in the views it covers, and small front-facing plates are dropped from angles where perspective would crush them anyway.
A camera definition can quietly contradict itself — and when it does, the symptom looks like a missing part, not a wrong camera. So the pipeline treats view geometry as a checked contract: a left profile means the figure faces screen-left, and a rear view means left and right swap on screen. Instead of trusting automated symmetry metrics, each run ends with a per-view QA checklist for exactly these checks — the judgment stays with the artist.
Views that come out of the same pipeline still differ: background tones drift, figure heights vary, and cast shadows cling to the feet. Final assembly extracts each figure with a learned matting model — Photoshop’s background removal, driven automatically over a local bridge — normalizes everyone to a common figure height on a shared baseline, and refuses to build if any two cells contain effectively the same image. Cutouts older than their source view are invalidated automatically, so a re-rendered view can never ship with a stale silhouette.
Every finished batch registers itself into the studio archive with its full prompt — no manual bookkeeping. The hand-off is gated twice: filenames must be unique across the batch, and the archive row count is compared against the files on disk. Silent overwrites don’t pass.
Two published works in the ART section came out of this pipeline: the Shooter Bunny Amethyst sheet — two outfit variants × four views on one deck, plus the weapon sheet from the Gunmaker — and the Triumphant Blade Dancer turnaround, the pipeline’s first full run. All local, zero paid calls.






A style LoRA reproducing a flat casual game-art look, trained and operated end-to-end: dataset curation, caption engineering, training, epoch-sweep validation, and pipeline integration. This card documents the full process — the same recipe drives every style model on this site.
A base diffusion model knows a thousand styles vaguely and none of them precisely. A LoRA (Low-Rank Adaptation) freezes the base model entirely and trains only small low-rank matrices injected alongside its attention weights — here rank 32, a few tens of megabytes against a multi-gigabyte base. Because the base stays frozen, the model keeps its anatomy, composition and prompt understanding; the LoRA only has room to learn what the dataset consistently shows that the base doesn’t already know. Curate the dataset so the only consistent signal is the style, and that is what it learns.
Built with my own dataset tool (see the Datacurator card): 1,167 candidate images reviewed → 521 kept after ML-assisted selection and manual review → 58 finally curated for training. The last cut is the strictest: near-duplicates, off-style outliers, multi-panel sheets and screenshots all get dropped, because with a small dataset every bad image is 2% of the signal.
Caption design got the same treatment as the data — engineered, tested and validated; the specifics stay in-house as part of the recipe.
| Base model | Krea 2 (open-weights, turbo) |
| Trainer | musubi-tuner (open-source, CLI) on a single RTX 4090 |
| Network | LoRA dim 32 / alpha 32 |
| Schedule | 1,508 steps · 26 epochs · ~2 h |
| Result | final avg. loss 0.0497 · checkpoint saved every 2 epochs |
The actual loss curve from the run log — the flat-with-noise shape after the early drop is expected for style training on a small dataset; the signal you watch is that it stays flat instead of collapsing (memorization) or climbing (divergence):

Loss numbers don’t tell you which checkpoint to ship. Every checkpoint is swept with an out-of-distribution probe: a fixed seed and a fixed prompt for a subject that is not in the training data. In-distribution probes flatter the model — memorization looks like quality. An OOD subject shows what you actually bought: whether the style generalizes, and at which epoch style adoption starts costing anatomy or costume logic.

Fixed seed, no-LoRA baseline through epoch 26. Style locks in around epoch 10 without breaking structure — later epochs push the graphic look harder but start bending anatomy, so epoch 10 ships as the standard operating point and later checkpoints are kept as deliberate stronger dials.
Used in the Aristocrat Knight splash pipeline and the flat-track concept posts. Operating notes discovered in validation: the style expects clear silhouettes and reads best with restrained prompts — over-describing the render fights the LoRA instead of helping it.





A style LoRA for cinematic, low-saturation painterly realism — the workhorse behind the splash-pipeline posts (Empress of the Lotus Pond, Saint of the Storm, Golden Emperor).
| Base model | Krea 2 (open-weights, turbo) |
| Dataset | 85 curated images, pure-content prose captions, no trigger word |
| Network | LoRA dim 32 / alpha 32 · 16 epochs · final loss 0.067 |
| Validation | Epoch sweep with fixed-seed probes; epoch 16 selected as standard |
| Operating notes | Dark cinematic backdrops are part of the style contract — flat studio backgrounds suppress it |
Prompting rules discovered in validation (front-loaded subject, positive-only phrasing at CFG 1, backdrop placement) are documented per post in the Process sections.
Delivered splash art generated with this LoRA at its standard operating point:






A personal artist-study LoRA for ornate painterly fantasy characters. Trained as a style exercise; used for the Dark Legion set and the Valkyrie in Motion action study.
| Base model | Krea 2 (open-weights, turbo) |
| Dataset | 150 curated images, prose captions, no trigger word |
| Network | LoRA dim 32 / alpha 32 · final loss 0.0735 |
| Validation | Cross-concept sweep (knights, archers, rogues, modern fashion); early light-touch epoch selected as standard |
The interesting finding: the light-touch epoch keeps base-model anatomy and composition while carrying the surface language — heavier epochs win on style but lose flexibility.
Fixed seed, fixed prompt (a subject not in the training set), swept across checkpoints. This is how the operating epoch gets chosen — by evidence, not vibes:






Iterating on character art means hundreds of generations per concept, spread across seeds, prompt revisions, LoRA weights and epochs. Reviewing that in a file explorer destroys both speed and judgment: no context, no comparison, no record of why an image exists. Atelier turns the folder-diving chore into a review workflow.
A local web app (FastAPI + SQLite backend, live-updating frontend) that every generation driver reports into. To date it tracks 1,100+ batches / 4,100+ images across 8 projects, organized as project → character → batch.

?character=…&batch=…)
make any review shareable with myself across sessions.The pipeline claim of this whole site — directed, repeatable generation — is only true if the operator can see, compare and trace everything. Atelier is what makes the discipline cheap enough to actually practice.

NEW


Every style LoRA on this site started as a dataset problem, and dataset quality is the single highest-leverage variable in style training — a rank-32 LoRA on 58 images has no capacity to ignore bad data. Collecting references, de-duplicating, cropping, rejecting off-topic images, captioning and exporting in trainer format is a full pipeline’s worth of work, so I built it as one.
Crawl → ML-assisted selection → human review → caption → export.

Thumbnails blurred: source artworks are used for analysis during training-data curation and are not redistributed.
“Train a LoRA” sounds like a GPU task; in practice it is 80% data discipline. Making the data path a repeatable pipeline is what lets a new style go from idea to validated model in a day or two — and what makes the resulting models consistent enough to put into a production pipeline.

NEW
Mature Content
NEW
Open a shared PSD and half the text layers show the yellow missing-font warning. The usual fix is manual: read the font name, search the web, judge an unfamiliar site, download an archive, dig out the right file, install it — per font, per document, per artist. On a team that trades PSDs daily (and every time someone gets a new PC), that is a steady tax on production time. FontHelper turns the whole loop into one double-click.
Scan → diff → search chain → verify → install.
.ai/.pdf/.eps vector smart objects).The result list is deliberately not one big “install all” button:

Screenshot reproduced with a synthetic demo file — no production documents.
Built test-first: 166 tests, with every site parser locked to real HTML fixtures so
the suite runs offline and a source redesign shows up as a red test instead of a
silent field failure. Ships as a single 33 MB PyInstaller exe — no Python, no
installer, SmartScreen guidance included — with a rotating log in %APPDATA% so a
coworker’s bug report can travel as one file. Photoshop connection falls back across
COM ProgID versions, so multi-version and beta installs still connect. Distribution
runs through GitHub Releases.
Same pattern as the rest of this lab: find a repeating production task, build the tool, prove it on real work, hand it to the team. FontHelper is the non-generative end of that spectrum — spec-first design docs, AI-assisted implementation at high velocity, and a deliverable a non-technical artist can run without reading anything but a two-line SmartScreen note.
NEW

NEW
Mature Content
NEW
NEW






NEW


NEW

NEW
Mature Content


NEW
NEW



NEW


NEW

NEW
NEW
Mature ContentNEW







A style LoRA for clean chibi game art — a study analyzing the shape language, proportions and rendering characteristics of commercial chibi game art, demonstrating controlled style reproduction. Used for the Chibi Party set and the Gala Diva splash.
| Base model | Krea 2 (open-weights, turbo) |
| Dataset | 60 curated images, prose captions, no trigger word |
| Network | LoRA dim 32 / alpha 32 · final loss 0.0914 |
| Validation | Epoch sweep; two operating points kept — a stable epoch for fidelity, a later epoch for cuter, simpler shapes |
| Operating notes | Prompts must stay short; the style expects chibi proportions and collapses on adult ratios |
Works produced at the LoRA’s operating points — the target game style reproduced across different characters and costumes:
























Pink polka-dot lolita set — bonnet, corset dress, lace socks and platform Mary Janes — shown in a splash illustration, its looping idle animation, and three poses. Hands, lace, shoes and ribbons were finished zone by zone.


The kit stays classic bunny — ears, collar, cuffs, bow tie — and everything tactical is spent on two loud elements: a full prosthetic left leg and an oversized bomber jacket worn fully open on both arms. The leg carries the ornament budget, so the rest of the body can stay plain satin and hosiery and the silhouette still reads at thumbnail size.
The turnaround is not prompted freehand. Every component — jacket, harness, prosthetic segments — lives in a parts table as color + position + dimension, and each view’s sentences are assembled from it. That is what keeps an asymmetric design honest across views: the left and right profiles are generated from different part lists, and the rear view swaps them.
The coil rifle got its own sheet. It was isolated from the key art in a single pass, rebuilt as an orthographic side plate, then rotated through six views — with the named parts list pinning the stock and rails so nothing drifts between angles. A final pass renders the bare upper rail with iron sights for the optics-off configuration.



A white ao dai with lotus embroidery, gold piping and red knot buttons — shown in a splash illustration with front and back standing views. Hands, feet, straps and fabric edges were finished zone by zone.




The character sheet came first: costume, ornament language, and face were locked as a full-body concept on a dark cinematic backdrop. The splash was then directed from that sheet — image-to-image staging with a self-trained style LoRA, keeping the same face, hair and costume while rebuilding lighting and composition for the scene. Final pass is manual: FaceDetailer for expression control, paintover for cleanup.
Process receipts (workflow graph, LoRA sweep, settings) are being added incrementally.

Both characters come from a single pipeline run — a self-trained style LoRA stack on an open-weights base, with one shared prompt skeleton binding the pair: the same matte-black tailored-military language, a single blood-red accent, gunmetal hardware, and matching unit insignia. Selection from a seed batch, then targeted hardware detailing and consistency QA.
The gear was finished in a second pass rather than left to the base generation: the drop-leg pistol holster, the tactical belt with its quick-release buckle and magazine pouches, and the suppressed carbines were each regenerated as crisp, correctly-oriented modern hardware and composited back in place — so the fashion-forward silhouette keeps a plausible, readable kit.

Both characters come from the same pipeline — two self-trained style LoRAs stacked on an open-weights base, one shared prompt skeleton binding the pair: the same noble-house palette of obsidian black, silver-white and a restrained amethyst accent, the same brushed-silver hardware language, a shared crescent motif. Selection from seed batches, then consistency QA and targeted retouch.

The character concept was locked first — armor, face and palette in the set’s house style, carried by a self-trained painterly ornate LoRA and bound to the Dark Legion set’s shared backdrop and palette.
The splash was then directed from that locked concept — staged iterations over framing, camera, depth-of-field layering and value hierarchy, keeping the same face, armor and crest while rebuilding the scene for a widescreen key visual.


The character sheets came first: costume, ornament language, and faces were locked as full-body concepts. The splash was then directed from the sheet — image-to-image staging with a self-trained style LoRA, keeping the same face, hair and costume while rebuilding lighting and composition for the scene. Final pass is manual: FaceDetailer for expression control, paintover for cleanup.

An armored war dragon built on the same stacked-LoRA pipeline — painterly realism carrying the render, ornate fantasy shaping the silhouette. Plated barding over a crowned, horned head, generated first as a tighter portrait, then extended with generative expand to open the full wingspan and finished with a targeted detail pass on the wing membrane. Selected from a seed batch, then cleanup.

An abyssal shadow dragon on the same stacked-LoRA pipeline — void-black scales veined with violet, translucent purple wing membrane. Generated first as a tighter portrait, then extended with generative expand to open the full wingspan against a dark cinematic void. Selected from a seed batch, then cleanup.

An undead bone dragon in dramatic half-form — one side bare exposed skeleton, the other clothed in abstract musculature sculpted from teal ghost-flame. The wing membranes hover between matter and energy, dissolving into drifting wisps at the trailing edge. Developed through iterative variant surveys (bone themes, cloth drape, energy anatomy, liminal wings), then extended with generative expand to clear the wingspan and finished with a directed redesign of the horns into a radiating bone crown.



The character sheet came first: costume, ornament language, and face were locked as a full-body concept on a dark cinematic backdrop. The splash was then directed from that sheet — image-to-image staging with a self-trained style LoRA, keeping the same face, hair and costume while rebuilding lighting and composition for the scene. Final pass is manual: FaceDetailer for expression control, paintover for cleanup.
Process receipts (workflow graph, LoRA sweep, settings) are being added incrementally.

Both characters come from a single pipeline run — one style LoRA, one prompt skeleton, shared palette and design language — so they read as a matched pair out of the box. Selection from a seed batch, then consistency QA and light retouch.

Both characters come from the same pipeline — two self-trained style LoRAs stacked on an open-weights base, one shared prompt skeleton binding the pair: the same polished silver plate language, the same royal-blue capes with gilded hems, a shared gold sun emblem. Selection from seed batches, then consistency QA.
An orc warchief built on the same stacked-LoRA pipeline — painterly realism carrying the render, ornate fantasy shaping the silhouette. Refined blackened-steel plate with bone-ivory trim and a deep war-red mantle, a fur pelt over one shoulder, a great cleaver-axe carried at rest. The brief kept the heraldry disciplined: one restrained war-red accent, imposing but not gaudy. Selected from a seed batch, then consistency QA.

The costume is deliberately lopsided. Everything ornamental — the gilded pauldron, the amethyst, the chain and its drop — sits on a single shoulder, so the silhouette reads as one loud accent against a body that is otherwise plain violet satin and bare skin. The bunny cues are kept to the smallest possible set: ears, collar, cuffs, tail.
Getting the torso to stay open took the most iteration. Naming the garment at all — calling it a suit, a leotard, a one-piece — was enough to make the model lay down a filled panel and print the straps onto it as decoration. The fix was to stop naming it, describe the bare skin first, and then enumerate the only places fabric touches the body.
The plate was generated at full height, then finished zone by zone: the shoulder piece, the chain and its pendant, and the shoe were each re-rendered at 2K against the live canvas and grafted back in place, so the detail pass never moved the pose. The frame was extended at the bottom so both the heel and its contact shadow sit inside the canvas.

Both characters come from a single pipeline run — one style LoRA, one prompt skeleton, shared palette and design language — so they read as a matched pair out of the box. Selection from a seed batch, then consistency QA and light retouch.
Original character design — silver-white plate with rose-and-thorn engraving, royal-blue fleur-de-lis mantle, and the banner-standard. The splash conversion of this character is in progress.

Both characters come from a single pipeline run — one style LoRA, one prompt skeleton, shared palette and design language — so they read as a matched pair out of the box. Selection from a seed batch, then consistency QA and light retouch.

Both characters come from a single pipeline run — one style LoRA, one prompt skeleton, shared palette and design language — so they read as a matched pair out of the box. Selection from a seed batch, then consistency QA and light retouch.

Both characters come from a single pipeline run — one style LoRA, one prompt skeleton, shared palette and design language — so they read as a matched pair out of the box. Selection from a seed batch, then consistency QA and light retouch.
A maiden in a white kimono turns beneath a wagasa paper umbrella, cherry blossoms drifting across an open sky. A soft, painterly key visual — finished with targeted detail passes on the umbrella ribs and the embroidered floral motif of the kimono, kept faithful to the artwork’s gentle watercolor style.



A graphic black-red-white gang series — one visual system, three silhouettes.

An early consistency study: holding one costume design through a full character turnaround.



Consistency sheets from a self-trained flat-casual LoRA: cast lineups, pose ladders and expression variants of a fixed character — the boring receipts that show the pipeline is controllable, not a slot machine.
A one-day style study: chibi character, expression variants, and an in-game pixel-scale mock from the same design.

All characters come from a single pipeline run — one style LoRA, one prompt skeleton, shared palette and design language — so they read as a matched set out of the box. Selection from a seed batch, then consistency QA and light retouch.

