Серия из восьми кадров прогнана строго по блоку из библии — промпт не пересобирался ни разу. Плюс решена главная нерешённая проблема: core-ref персонажа.
Единая пыльно-охристая палитра, широкий мазок, тёмная фигура на светлой дымке, плотная детализация. Разные типы кадров, один почерк.








Промпт больше не хранится в скрипте. Рендерер render.py читает его прямо из STYLE-BIBLE.md во время запуска — копии в коде нет, разойтись физически не может. Скрипт подставляет только сцену из отдельного json.
python render.py --mode epic --scenes scenes_caesar.json --out series1 python render.py --mode poster --scenes myths.json python render.py --mode epic --scenes scenes.json --ref core/CAESAR_REF.jpg
Три режима — epic, sculpt, poster — соответствуют разделам библии и берутся оттуда же.
Три ракурса с очень конкретным описанием черепа и черт. Фон ровный, свет плоский, никакого антуража — чтобы наследовалось только лицо.



«Римлянин сорока лет» даёт случайное лицо. Работает конкретика: длинный узкий череп, высокий лоб с глубокими залысинами, тонкие седые волосы вперёд, острые скулы, длинный нос с горбинкой, тонкий твёрдый рот, глубокие вертикальные складки между бровей, старый шрам на левой челюсти.
Тот же промпт, тот же стиль, но лицо каждый раз собирается заново.




Те же сцены с приложенным эталоном. Череп, лоб, залысины, скулы и рот совпадают везде.




Опасение было, что референс потянет за собой палитру и детализацию, как это было раньше со стиль-рефами. Не потянул: мазок, тональный контраст и плотность деталей остались прежними. Реф отвечает только за лицо.
CHARACTER REFERENCE.