0Pricing
AI Prompt Engineering · Lesson

Style and Artistic Medium Specification

Photorealistic, oil painting, watercolor, 3D render — style vocabulary.

Style and Artistic Medium Specification is a free AI Prompt Engineering lesson on CoddyKit — lesson 2 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the AI Prompt Engineering learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.

Why Style Vocabulary Matters

Image models are trained on billions of captioned images. They 'know' the visual language of specific styles, movements, and artists. Using precise style vocabulary is like speaking the model's native language — it activates learned visual patterns directly rather than relying on vague description.

Photorealistic Style

Photorealistic prompts instruct the model to produce images indistinguishable from real photographs. Key vocabulary terms and how to apply them:

photorealistic_prompts = [
    # Basic photorealism
    'photorealistic portrait of a woman, DSLR photograph, '
    'f/1.8 aperture, 85mm lens, bokeh background, natural light',

    # Hyperrealism (even more detailed than photo)
    'hyperrealistic painting of a weathered old door, '
    'every crack and grain of wood visible, photorealistic quality',

    # Studio photography
    'product photography, white background, studio lighting, '
    'sharp focus, commercial quality, shot on Canon EOS R5',

    # Environmental photography
    'documentary photograph, photojournalism style, '
    'natural unposed lighting, 35mm film grain, raw authentic moment',
]

for prompt in photorealistic_prompts[:2]:
    print(prompt[:80], '...')

# Key terms for photorealism
photo_keywords = [
    'DSLR', 'shot on [camera model]', 'f/[aperture]', '[mm] lens',
    'bokeh', 'depth of field', 'film grain', 'natural light'
]

Oil Painting Styles

Oil painting encompasses multiple centuries of distinct traditions. Specifying the style within oil painting — Baroque, Impressionist, Dutch Masters — activates very different visual vocabularies.

oil_painting_styles = {
    'classical_baroque': (
        'oil painting in the style of Rembrandt, '
        'chiaroscuro lighting, rich earth tones, '
        'detailed fabric and texture, dramatic shadows, '
        'museum quality, Dutch Golden Age'
    ),
    'impressionist': (
        'impressionist oil painting inspired by Monet, '
        'visible brushstrokes, soft edges, '
        'light and atmosphere over detail, '
        'en plein air quality, dappled light'
    ),
    'post_impressionist': (
        'oil painting in the bold style of Van Gogh, '
        'swirling expressive brushwork, '
        'complementary color contrasts, '
        'thick impasto texture, emotional intensity'
    ),
    'contemporary_realism': (
        'contemporary oil painting, hyperrealistic, '
        'smooth blending, photorealistic quality, '
        'intense focus on textures, classical technique'
    )
}

for name, prompt in oil_painting_styles.items():
    print(f'{name}:')
    print(' ', prompt[:70], '...')
    print()

Watercolor Style Vocabulary

Watercolor has a distinct visual signature: soft edges, transparent washes, visible paper texture, and gentle bleeding of color. Vocabulary that activates these qualities:

watercolor_prompts = [
    # Classic watercolor
    'delicate watercolor illustration of cherry blossoms, '
    'soft washes of pink and white, paper texture visible, '
    'loose brushwork, gentle bleeding edges, '
    'traditional Japanese botanical art style',

    # Urban sketching style
    'watercolor urban sketch of a Paris cafe, '
    'loose gestural lines with ink, '
    'selective color washes over pen sketch, '
    'travel journal illustration style',

    # Children\'s book style
    'charming watercolor illustration for a children\'s book, '
    'soft pastel colors, cute rounded shapes, '
    'whimsical details, storybook warmth',
]

# Key watercolor vocabulary
watercolor_keywords = [
    'watercolor wash', 'soft edges', 'translucent', 'paper texture',
    'bleeding colors', 'wet-on-wet technique', 'loose brushwork',
    'granulation', 'wet-on-dry', 'color bloom'
]

print('Watercolor example:', watercolor_prompts[0][:100], '...')

3D Rendering Styles

3D rendering encompasses multiple distinctive looks. The render engine and software name activates specific visual quality levels and aesthetics.

rendering_styles = {
    'octane_render': (
        '3D render, Octane renderer, photorealistic, '
        'subsurface scattering on skin, ray-traced reflections, '
        'global illumination, cinematic depth of field, '
        'highly detailed environment'
    ),
    'blender_stylized': (
        'Blender 3D render, stylized low-poly art, '
        'smooth shading, vibrant colors, '
        'isometric perspective, indie game aesthetic'
    ),
    'unreal_engine': (
        'Unreal Engine 5 render, photoreal environment, '
        'Lumen global illumination, Nanite geometry, '
        'cinematic quality, game engine screenshot'
    ),
    'clay_render': (
        '3D clay render, matte white material, '
        'soft studio lighting, clean shadows, '
        'product design visualization, no textures'
    ),
    'vfx_compositing': (
        'VFX quality 3D render, photorealistic compositing, '
        'motion blur, film grain, color grading, '
        'blockbuster movie quality'
    )
}

print('Octane render example:',  rendering_styles['octane_render'][:80], '...')

Comic Book and Illustration Styles

Illustration styles with strong line work require vocabulary that describes line quality, shading technique, and color approach. Comic book style is one of the most requested illustration styles.

illustration_styles = {
    'comic_book': (
        'comic book style, bold black outlines, '
        'flat cel-shaded colors, halftone dot pattern, '
        'dynamic action pose, 1960s Marvel Comics aesthetic'
    ),
    'manga': (
        'manga illustration style, clean line art, '
        'screen tones for shading, large expressive eyes, '
        'black and white with selective screentone, '
        'Shonen Jump aesthetic'
    ),
    'graphic_novel': (
        'graphic novel illustration, Moebius-inspired, '
        'detailed line work, flat color fills, '
        'SF aesthetic, intricate background architecture'
    ),
    'vector_flat': (
        'flat vector illustration, minimal outlines, '
        'geometric shapes, limited color palette, '
        'modern app icon style, clean and scalable'
    ),
    'concept_art': (
        'concept art for video game, detailed character design, '
        'front view turnaround sheet, '
        'multiple color variants, reference quality'
    )
}

for style, prompt in list(illustration_styles.items())[:3]:
    print(f'{style}: {prompt[:60]}...')

Artist-Style References

Referencing a specific artist activates the model's learned knowledge of that artist's visual signature. Use 'in the style of' or 'inspired by' to ensure the model interprets this as a style reference, not a request for the artist's actual work.

artist_style_prompts = [
    # Classic masters
    'oil painting inspired by Vermeer, domestic interior scene, '
    'soft diffused window light from the left, pearl earring quality',

    # Impressionists
    'painting in the style of Monet, water lilies and reflections, '
    'dappled light, loose impressionist brushwork',

    # Modern
    'illustration in the style of Alphonse Mucha, '
    'art nouveau ornamental border, flowing hair, '
    'decorative circular frame, spring theme',

    # Contemporary illustrators
    'digital illustration in the style of James Gurney, '
    'painterly quality, dinosaur, Dinotopia aesthetic',

    # Graphic designers
    'poster design inspired by Saul Bass, '
    'geometric minimalism, bold primary colors, '
    'mid-century modern style'
]

# Best practice: 'in the style of' activates learned style patterns
# Not appropriate: 'a painting by [living artist]' (may raise IP concerns)
print('Style reference example:', artist_style_prompts[2][:80], '...')

Photography Genre Styles

Photography genres each have a distinct visual vocabulary. Specifying the genre immediately anchors the expected visual language, composition conventions, and processing aesthetic.

photography_genres = {
    'street_photography': (
        'street photography, candid unposed moment, '
        'grain, black and white, Henri Cartier-Bresson style, '
        'decisive moment, natural light'
    ),
    'fashion_editorial': (
        'high fashion editorial photography, '
        'Vogue magazine quality, strong directional lighting, '
        'model on textured white backdrop, '
        'Avedon-inspired minimalism'
    ),
    'macro_nature': (
        'macro photography of dewdrops on a spider web, '
        'extreme shallow depth of field, '
        'lens bokeh background, natural dawn light, '
        '1:1 macro ratio'
    ),
    'astro_photography': (
        'astrophotography, milky way over mountain landscape, '
        'long exposure, star trails, '
        'foreground silhouette, deep space colors'
    ),
    'documentary': (
        'documentary photography, photojournalism, '
        'natural ambient light, authentic emotion, '
        'Magnum Photos aesthetic, raw unedited'
    )
}

for genre, prompt in list(photography_genres.items())[:3]:
    print(f'{genre}: {prompt[:60]}...')

Mixing Styles: Creative Combinations

Some of the most interesting image prompts combine styles that would not normally coexist — the result is a unique hybrid aesthetic. The key is coherent combination: styles that share visual DNA blend better than those in conflict.

# Coherent style combinations
coherent_combos = [
    # Shared aesthetic DNA
    'art nouveau meets watercolor illustration, '
    'organic flowing forms, soft pastel palette',

    'vintage film photography meets dark academia aesthetic, '
    'sepia tones, dust and grain, leather-bound books',

    'Studio Ghibli inspired oil painting, '
    'lush pastoral landscape, impressionist brushwork, '
    'gentle nostalgic atmosphere',

    'cyberpunk neon aesthetic meets traditional Japanese woodblock print, '
    'bold outlines, flat colors, ukiyo-e composition'
]

# Incoherent combinations (avoid)
incoherent = [
    'minimalist AND maximalist AND baroque AND minimalist',  # contradictory
    'photorealistic AND cartoon AND oil painting AND pixel art',  # too many
]

print('Best combo example:', coherent_combos[3][:80], '...')
print('Warning: avoid contradictory combinations like:', incoherent[0][:50])

Model-Specific Style Tips

Different image models respond differently to style vocabulary. DALL-E 3, Midjourney, and Stable Diffusion each have strengths, quirks, and preferred prompt conventions.

model_style_notes = {
    'DALL-E 3 (OpenAI)': [
        'Responds well to natural language descriptions',
        'Artist name references work well',
        'Avoid very long prompt strings (>300 words loses coherence)',
        'Instruction-following is strong ("Do not include text")',
        'Good for: illustrations, portraits, abstract concepts'
    ],
    'Midjourney': [
        'Aesthetic quality is very high with minimal prompting',
        'Suffix parameters: --ar 16:9 for aspect ratio, --v 6 for version',
        'Style references: --sref for image style transfer',
        'Photography terms work especially well',
        'Good for: artistic renders, character design, landscapes'
    ],
    'Stable Diffusion': [
        'Negative prompts are very important and effective',
        'LoRA models enable fine-grained style control',
        'CFG scale controls prompt adherence (7-12 recommended)',
        'Model checkpoints determine base style (e.g., SDXL, Juggernaut)',
        'Good for: customization, fine-tuning, commercial use'
    ]
}

for model, tips in model_style_notes.items():
    print(f'{model}:')
    for tip in tips[:2]:
        print(f'  - {tip}')

Style Sheet: Quick Reference

A style reference sheet codifies the approved vocabulary for a project or brand, ensuring consistent image generation across team members and tools.

# Project style sheet — game UI concept art
GAME_STYLE_SHEET = {
    'base_style': 'dark fantasy concept art, game UI illustration quality',
    'medium': 'digital painting with painterly brushwork',
    'lighting': 'dramatic rim lighting, deep shadows, magical glow effects',
    'color_palette': 'deep purples, midnight blues, gold accents, shadow blacks',
    'composition': 'centered composition for icons, rule of thirds for scenes',
    'quality': 'highly detailed, professional game art, AAA quality',
    'forbidden': [
        'photorealistic', 'photograph', 'anime', 'cartoon',
        'watercolor', 'sketch'
    ]
}

def build_game_prompt(subject, composition_override=None):
    s = GAME_STYLE_SHEET
    return ', '.join([
        subject,
        s['base_style'],
        s['medium'],
        s['lighting'],
        s['color_palette'],
        composition_override or s['composition'],
        s['quality']
    ])

print(build_game_prompt('a fire mage casting a spell, flames erupting from hands')[:120], '...')

Quick Check

You want to generate an image that looks like a classic Dutch Golden Age oil painting with dramatic shadows and candlelight. Which style terms should you use?

Style and Medium Summary

Style and medium specification gives you precise creative control over the visual language of generated images:

  • Medium: the art form determines texture, line quality, and rendering aesthetic
  • Style vocabulary: art movement terms and artist references activate learned visual patterns
  • Photography genres: street, fashion, macro, documentary each carry distinct conventions
  • 3D rendering: engine name (Octane, Blender, Unreal) triggers quality-level expectations
  • Style mixing: combine styles with shared DNA for coherent hybrid aesthetics
  • Style sheets: codify project vocabulary for team-wide consistency

Frequently asked questions

Is the “Style and Artistic Medium Specification” lesson free?

Yes — the full text of “Style and Artistic Medium Specification” is free to read here on the web, and the AI Prompt Engineering course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the AI Prompt Engineering course, upgrade to CoddyKit PRO.

What will I learn in “Style and Artistic Medium Specification”?

Photorealistic, oil painting, watercolor, 3D render — style vocabulary. You practise AI Prompt Engineering with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.

Do I need any experience to start AI Prompt Engineering?

No prior experience is required. AI Prompt Engineering on CoddyKit is structured for beginners through advanced learners; this is — lesson 2 of 4, so you can start here or from the beginning and move at your own pace.

How long does the “Style and Artistic Medium Specification” lesson take?

Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.

Can I write and run code in this AI Prompt Engineering lesson?

Yes. Every AI Prompt Engineering lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.

All lessons in this course

  1. Anatomy of an Image Generation Prompt
  2. Style and Artistic Medium Specification
  3. Negative Prompts and Exclusions
  4. Iterative Image Prompt Refinement
← Back to AI Prompt Engineering