summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
Diffstat (limited to 'internal')
-rw-r--r--internal/story/artist.go22
-rw-r--r--internal/version.go2
2 files changed, 20 insertions, 4 deletions
diff --git a/internal/story/artist.go b/internal/story/artist.go
index 04f459a..8236d2e 100644
--- a/internal/story/artist.go
+++ b/internal/story/artist.go
@@ -68,8 +68,16 @@ const (
"and environment. NOT a drawing, painting, or illustration. Real-world photo quality.\n"
)
-// comicStyles is the pool from which the page style is drawn each run.
-// Ultra realistic is selected 90% of the time.
+// realisticStyles is the style pool used when ultra-realistic mode is active.
+// These descriptions avoid "comic strip" / "illustration" language so the image
+// model produces photographic output rather than comic-book artwork.
+var realisticStyles = []string{
+ "ultra-realistic DSLR photography, cinematic 35mm lens, natural lighting, hyper-detailed textures",
+ "cinematic still photography, golden-hour lighting, shallow depth of field, photojournalism quality",
+ "hyper-realistic photography, studio-quality lighting, sharp focus, true-to-life colours and textures",
+}
+
+// comicStyles is the pool used when standard comic style is active.
var comicStyles = []string{
"ultra realistic comic strip with photographic detail and dramatic lighting",
"classic American comic book with bold ink outlines, halftone dots, and primary colors",
@@ -180,7 +188,15 @@ func NewArtist(config *ArtistConfig) *Artist {
func (a *Artist) DrawComicPages(storyText, prebuiltBible, titleSlug string, entries []batch.WordEntry) ([]string, error) {
style := a.style
if style == "" {
- style = pickStyle()
+ // Ultra-realistic mode uses photography-only language so the image model
+ // produces photographic output. The comicStyles pool contains "comic strip"
+ // which dominates the model's style interpretation even when the
+ // renderingRequirement const is present — hence a separate pool is needed.
+ if a.ultraRealistic {
+ style = realisticStyles[rand.IntN(len(realisticStyles))]
+ } else {
+ style = pickStyle()
+ }
}
fmt.Printf(" Comic style: %s\n", style)
if a.ultraRealistic {
diff --git a/internal/version.go b/internal/version.go
index 2350872..9f7173a 100644
--- a/internal/version.go
+++ b/internal/version.go
@@ -1,3 +1,3 @@
package internal
-const Version = "0.16.0"
+const Version = "0.17.0"