fabricpromptingtextilevocabulary

Choosing fabric for AI fashion generation: silk, satin, charmeuse

Moire··7 min read
Three fabric swatches side by side showing the visual difference between matte silk crepe, high-sheen satin, and liquid silk charmeuse

Prompt

Three women walking side by side down a narrow cobblestone street, each in a different silk fabric. Left: matte crepe de chine blouse, chalky and soft, absorbing the light. Center: duchesse satin jacket with a mirror-like sheen bouncing the low sun. Right: charmeuse wrap top, liquid and heavy, catching every ripple of movement. They're mid-conversation, mid-stride. Late afternoon street light, slightly desaturated film tones, the fabrics telling completely different stories on the same walk.

Silk drapes differently depending on which silk it is. A charmeuse slip falls like liquid; a crepe shirtdress falls in dry, sculptural folds; an organza overskirt holds its shape. When you're designing a piece, the fabric isn't a background detail. It's a decision about how the garment moves on the body.

AI image models render those decisions visibly. The same prompt with "silk crepe" and "silk charmeuse" produces two visibly different garments. The catch is that the model needs the right name. "Silk" alone averages across every silk fabric the model has ever seen, which is most of them — the output blends charmeuse shine with crepe matte with organza crispness, and the result reads as AI fabric, not real fabric.

This article covers the fabrics designers reach for most often and how each one renders. Use it as a reference when you're choosing fabric for a piece you're about to generate.

Fiber vs fabric: why the distinction matters for AI

Fibers are raw materials: silk, cotton, wool, polyester. Fabrics are what you make from those fibers: charmeuse, poplin, tweed, jersey. One fiber can produce dozens of fabrics, each with different visual properties.

AI models learned from image-text pairs across fashion photography, e-commerce, and editorial. Those texts almost always use fabric names, not fiber names. A product listing says "silk charmeuse slip dress," not "silk dress." A runway caption says "wool tweed jacket," not "wool jacket." The training data is specific, so your prompts should be too.

A fiber name alone forces the AI to average across every fabric made from that fiber. "Silk" produces a muddle of charmeuse's shine, crepe's matte drape, organza's crispness, and taffeta's stiffness. The result doesn't look like any real fabric. It looks like AI.

The silk family: four fabrics, four looks

Silk is the worst offender for vague prompts because it spans the widest range of visual behaviors.

Silk charmeuse is the slip dress fabric. High sheen on the face, matte on the back. Liquid drape that clings to the body and catches every light source. Prompt "silk charmeuse" and the AI will give you something expensive, sensual, and fluid. This is what most people picture when they say "silk dress."

Silk crepe (crepe de chine) sits at the opposite end. Matte surface with a subtle pebbly texture. Fluid but doesn't cling. Light passes through it rather than bouncing off. Prompt "crepe" and you get understated sophistication. No shine whatsoever.

Silk organza is sheer and crisp. It holds structure. Ruffles in organza stand up rather than wilting. Layers are visible through each other. The AI renders it as architectural and transparent, nothing like charmeuse or crepe.

Silk taffeta is crisp, stiff, and rustles. It holds dramatic shapes: big skirts, sharp pleats, structured bows. High sheen, but different from charmeuse. Taffeta reflects light off a smooth, flat surface rather than a curved, body-conforming one. The AI will give you something formal, structured, almost sculptural.

Four fabrics, all silk, all completely different. "Silk" alone leaves the model guessing. The specific name gives you control.

Cotton: less confusing, still worth specifying

Cotton fabrics vary less dramatically than silk, but the differences still matter.

Cotton poplin is smooth, crisp, and opaque. The classic shirt fabric. Prompt it and you get clean, pressed, structured.

Cotton jersey is stretchy, body-conforming, casual. T-shirt fabric. The AI renders it with visible stretch across the body and a matte, slightly pilled texture.

Cotton denim is heavy, stiff, and has a characteristic twill weave texture. The AI knows denim well because it saturates the training data. "Denim" alone produces reliable results.

Cotton linen (technically a linen blend, but often labeled this way) is matte, relaxed, and naturally wrinkled. Add "natural wrinkle texture" to help the AI render linen's characteristic imperfection rather than starching it smooth.

Wool: weight is the variable

Wool ranges from the lightest merino knit to the heaviest felted coating. The AI needs weight cues.

Wool tweed produces the most consistent results. The visible texture, flecked multicolored yarns in a coarse weave, is distinctive enough that the AI nails it every time. "Tweed" alone works.

Wool cashmere is fine, soft, and matte. The AI renders it as a smooth, dense surface with no visible texture. Add "soft matte surface" to separate it from other smooth wools.

Wool bouclé has a looped texture the AI handles well. It's visually distinctive and the training data is rich with Chanel-adjacent imagery. "Bouclé" alone works.

Wool crepe behaves like silk crepe: matte, smooth, slightly textured. Heavier drape, but similar visual character. The AI sometimes confuses the two; add "medium weight" to clarify.

Synthetic confusion: satin, velvet, and shared names

Some fabric names cross fiber boundaries, and that confuses the models.

Satin is a weave, not a fiber. Silk satin, polyester satin, and cotton sateen all have high sheen, but the quality of that sheen differs. The AI defaults to the cheapest-looking version. "Silk satin" or "duchesse satin" will get you better output than "satin" alone.

Velvet can be silk, cotton, or synthetic. Silk velvet has the deepest color and richest light absorption. Cotton velvet is slightly matte. Synthetic velvet is shiny in a flat, plasticky way. The AI mostly lands somewhere in between. "Silk velvet" pulls it toward the richest result.

Lace varies enormously: Chantilly (fine, delicate, floral), guipure (heavier, geometric, no net background), broderie anglaise (white cotton with cut-out patterns). "Lace" alone defaults to generic Chantilly. Name the type.

The behavior workaround

When you don't know the exact fabric name, or the AI struggles with a specific term, describe the behavior instead.

"Stiff crisp fabric that holds its shape" gets you closer to taffeta than "taffeta" does on some models. "Liquid fabric with high sheen that clings to the body" is charmeuse. "Matte fluid fabric that drapes without clinging" is crepe.

This works because a lot of fashion writing describes how fabric moves and catches light rather than naming it outright. Those behavioral descriptions have strong associations in the training data.

Best results come from combining both: name the fabric AND describe its behavior. "Silk charmeuse, liquid drape, high sheen" is redundant but effective. The name and the description reinforce each other, and the AI is less likely to drift.

Try specifying fabric behavior in Moire
Open in Moire

FAQ

Why does "silk dress" produce inconsistent AI results?

Silk is a fiber that produces dozens of different fabrics, from liquid charmeuse to crisp taffeta. "Silk" alone forces the AI to average across all of them. Name the fabric (charmeuse, crepe, organza, taffeta) and you tell the AI exactly which visual properties you want.

What's the difference between satin and silk charmeuse?

Satin is a weave structure. Charmeuse is a specific satin-weave fabric made from silk. "Satin" can mean any fiber in a satin weave, which is why the AI often defaults to cheap-looking polyester. "Silk charmeuse" gets you the liquid, luxurious version.

How do I make AI-generated fabric look realistic?

Name the specific fabric (not just the fiber), add a behavior keyword (liquid, crisp, matte, structured), and specify the context (lighting, photography style). "Silk charmeuse with liquid drape, photographed in soft diffused light" produces more realistic fabric than "shiny silk dress."

Which fabrics does AI render most reliably?

Fabrics with strong visual signatures: tweed (flecked texture), denim (twill weave), velvet (light absorption), organza (sheer crispness). These are so visually distinct that the AI rarely confuses them with anything else. Generic smooth fabrics without a clear visual identity give the AI the most trouble.

Frequently Asked

Why does 'silk' produce inconsistent AI results?
Silk is a fiber, not a fabric. One fiber produces dozens of distinct fabrics — charmeuse, crepe, organza, taffeta — each with different drape, sheen, and weight. AI models trained on fashion captions learn the fabric names, not the fiber names. Specify the fabric to get a consistent result.
Which silk fabric should I use for a flowing dress?
Silk charmeuse for liquid drape and high sheen. Silk crepe de chine for soft, matte fluidity. Silk georgette for floaty transparency. Pick by the behavior you want — the AI renders each one differently.
Does Moire help with fabric selection?
Moire's fabric atoms include 80+ specific textile entries with notes on how each renders in current image models. You can pick from the atom library or write the fabric directly into the prompt; Moire handles the rest.

Pick a fabric. Generate the garment.

Moire has 80+ fabric atoms. Free to try.

Open Moire