DEV Community

Voor AI
Voor AI

Posted on

How to Make AI Art From a Constraint Stack Instead of a Style-Name Pile

Constraint-stack prompt anatomy: subject, composition, light, material, and constraints

The reliable way to make AI art is to write a prompt you can debug. Define the subject, composition, light, material, and constraints separately. Generate one controlled test, review it against explicit assertions, and change one layer at a time.

Think of the prompt as data

subject: "a ceramic astronomer repairing a brass telescope"
composition: "waist-up, subject on the left third, clear negative space on right"
light: "single cool window light, soft warm desk bounce"
material: "editorial gouache on textured paper"
constraints:
  - "hands fully visible"
  - "telescope remains mechanically plausible"
  - "no readable text or logos"
Enter fullscreen mode Exit fullscreen mode

Flatten that into natural language only after the structure makes sense:

Editorial gouache on textured paper. A ceramic astronomer repairs a mechanically plausible brass telescope, waist-up on the left third, with clear negative space on the right. Single cool window light and soft warm desk bounce. Both hands fully visible. No readable text, logos, watermark, or extra tools.

Open the Text to Image workspace. It currently shows a prompt field, model picker, aspect-ratio controls, and Generate. The anonymous default state displayed paid access and 240 credits; select the actual model and ratio and trust the resulting on-screen estimate, not a remembered price.

Voor Text to Image workspace showing the prompt, model, ratio, current credit estimate, and Generate control

Run a minimal test

  1. Pick the ratio from the intended placement, not from habit.
  2. Paste the structured prompt.
  3. Generate one test only after checking the visible cost.
  4. Compare the output with the assertions below.
  5. Change one prompt layer for the next iteration.
assert subject_is_left_of_center
assert both_hands_are_visible
assert telescope_geometry_is_plausible
assert no_readable_text
assert negative_space_survives_crop
Enter fullscreen mode Exit fullscreen mode

This review language is intentionally boring. “Looks cool” cannot tell you what to fix.

Debug the failure, not the vibe

  • Composition drift: put placement earlier and remove competing objects.
  • Material drift: name one medium and remove conflicting camera language.
  • Broken hands or tools: simplify the pose and bring the object closer to the body.
  • Accidental text: remove signage and reserve the final typography for a design tool.
  • Generic output: add a physical relationship, not another artist name.

Limits and rights

Text-to-image models predict pixels; they do not produce editable vectors, legal clearance, or factual evidence. Do not imitate a living artist, upload assets you cannot use, or publish an invented product as if it existed. Review trademarks, likenesses, unsafe details, and accessibility before shipping.

When you have a testable prompt and a review grid, run it in the exact generator and verify the current model, ratio, and credits before pressing Generate.

Top comments (0)