Сохранение и экспорт

Сохраняй документ, чтобы оставить слои редактируемыми и использовать результат прямо в Unity. Экспорт нужен для отдельного изображения или JSON-копии.

Сохранить документ

Нажми Ctrl+S. При первом сохранении выбери расположение; следующие обновляют тот же файл. Save As создаёт отдельную копию. При закрытии документа с изменениями можно сохранить их, отказаться от них или отменить закрытие. Нетронутый новый документ закрывается без вопроса. Удаление последнего слоя — тоже изменение, которое можно сохранить.

Сохранённый TIFF уже можно использовать как текстуру. Двойной клик возвращает к редактированию; если документ уже открыт, WhimTex переключается на его окно.

Обычно Unity показывает последнее сохранённое изображение. Включи Live Update, чтобы видеть правки на модели до сохранения. Если изменилась связанная текстура, сохрани документ ещё раз, чтобы обновить его итоговое изображение. File-слои сохраняют ссылки на исходные текстуры — оставляй их в проекте.

Выбрать формат экспорта

Нажми Export в шапке, выбери Format и настройки, затем Export… для выбора пути. Отмена не экспортирует файл; при ошибке настройки остаются для повторной попытки. Save As всегда сохраняет TIFF.

Формат Для чего
PNG / TGA Цветные изображения с прозрачностью.
JPEG Изображения без прозрачности; прозрачные области станут белыми.
EXR HDR-изображения.
PSD Передача изображения со слоями.
Texture2D (.asset) Отдельная текстура Unity без редактируемых слоёв.
WhimTex JSON (.json) Редактируемые настройки и слои без пикселей Drawing.

У JPEG есть Quality (1–100, по умолчанию 95). У EXR — Precision (16-bit Half или 32-bit Float) и сжатие без потерь Compression (по умолчанию ZIP; также RLE, PIZ и None). У JSON — Mode и предупреждение об исключении пикселей Drawing ещё до выбора пути; отдельное подтверждение сохраняется. JSON и Unity Texture2D сохраняются внутри папки Assets проекта.

EXR и Texture2D сохраняют HDR-яркость. PNG, JPEG, TGA и PSD используют обычный диапазон цвета. Экспорт не меняет цветовой диапазон исходного документа.

Настройки просмотра — масштаб, EV и Post FX — не попадают в сохранённое или экспортированное изображение.

JSON-документы

JSON подходит для передачи редактируемых процедурных слоёв и просмотра их настроек в текстовом виде. Это не текстура Unity: у него нет Texture Importer и Live Update. Пиксели Drawing не сохраняются.

  1. Открой Export, выбери Format → WhimTex JSON, затем Mode.
  2. Если в Drawing есть пиксели, подтверждай их исключение только когда допустимы пустые слои. Настройки и FX останутся.
  3. Экспортируй копию. Исходный документ не меняется и не помечается сохранённым.
Режим Что сохраняется
Full Optimized (Default) Активные настройки, включая значения по умолчанию.
Full Также настройки неактивных функций.
Compact Активные настройки без значений по умолчанию, чтобы уменьшить файл.

Выключенные слои и FX остаются во всех режимах. Отсутствующие ассеты вызывают предупреждение, но ссылки сохраняются. Сломанные FX сохраняют код и настройки; до исправления они пропускаются и отмечаются предупреждением.

Открыть или вставить

Действие Результат
Двойной клик по .json Открыть документ с его размером, sRGB, фильтрацией, точностью и History. Ctrl+S продолжит сохранять JSON.
Вставить содержимое Добавить слои без замены sRGB и фильтра приёмника, даже при принятии размера исходного холста.
Save As Создать TIFF, если нужна текстура Unity или требуется сохранить пиксели Drawing.

JSON выбранных слоёв тоже можно открыть как документ: формат содержимого одинаков. Режим записи сохраняется при открытии и Ctrl+S; разовый экспорт в другом режиме его не меняет.

JSON, написанный вручную

Если размерность не указана, при открытии эта ось получит 512, а при вставке — размер приёмника. Если не указаны обе, вставка не предлагает изменить холст. Обычный экспорт записывает обе размерности.

Числа и булевы значения записываются без кавычек, режимы — точными именами enum. Ошибка типа или числа указывает путь поля; отсутствующие ассеты и сломанные FX считаются предупреждениями, а не ошибками структуры. Правила полей и ограничения — в справочнике JSON.

Что останется редактируемым в PSD?

PSD сохраняет имена и порядок слоёв, группы, видимость, прозрачность и поддерживаемое наложение. Совместимые одноцветные заливки, градиенты и обводки остаются редактируемыми. Остальные эффекты превращаются в пиксели, а некоторые режимы наложения могут выглядеть иначе.

Если результат отличается, прочитай замечания после экспорта в Console. Сохраняй исходный документ WhimTex, чтобы позднее менять все эффекты и их источники.

Настройки текстуры и спрайтов

TIFF — основной формат документов WhimTex: один файл содержит сохранённое изображение и редактируемые слои. Выбери сохранённый TIFF в Project или нажми Output рядом с W/H, чтобы открыть штатный Texture Importer Unity. Новый документ сначала нужно сохранить.

  • Texture Type: выбери Default для текстуры или Sprite (2D and UI) для спрайтов.
  • sRGB (Color Texture): подходит для цветных изображений; для карт данных нужны соответствующие линейные настройки.
  • Alpha Is Transparency: уменьшает цветные каёмки на прозрачных краях, не удаляя альфу.
  • Generate Mip Maps, Filter Mode, Wrap Mode и Aniso Level: управляют отображением импортированной текстуры.
  • Max Size, формат и компрессия: задай общие настройки, затем при необходимости включи переопределения для платформ.

Нажми Apply в Inspector, чтобы применить настройки импорта. Они влияют на текстуру в Unity, но не меняют редактируемые слои и размер холста. HDR TIFF хранится линейно; WhimTex отключает для него sRGB.

Кодирование цвета на выходе

Галочка sRGB рядом с Precision задаёт кодирование TIFF: включена — sRGB, выключена — Linear. Новые обычные документы используют sRGB. Для существующего TIFF берётся настройка Texture Importer; изменение sRGB (Color Texture) с нажатием Apply в Inspector тоже обновляет результат. Float32, в том числе HDR при Auto, всегда сохраняется в Linear.

Переключение сохраняет яркость и цвета изображения, кроме различий округления при 8-битном выходе. Цвета слоёв, кистей, градиентов и рабочее превью не меняются. Альфа остаётся прежней. Это преобразование кодирования, а не переинтерпретация тех же чисел каналов в другом цветовом пространстве.

Изменение галочки в WhimTex активирует Save и поддерживает Undo/Redo. TIFF и настройки импорта не меняются до сохранения; отказ от сохранения отменяет и выбранное кодирование. Повторные переключения не ухудшают исходные слои постепенно. Изменение через Apply в Inspector обновляет последнее сохранённое изображение, не сохраняя текущие правки слоёв, и синхронизирует галочку. Такой внешний переимпорт останавливает Live Update — при необходимости включи его снова. Другие исходные текстуры не меняются.

Нарезка спрайтов

Если Sprite Editor недоступен, установи 2D Sprite (com.unity.2d.sprite) через Package Manager.

  1. Выбери сохранённый TIFF и задай Texture Type → Sprite (2D and UI).
  2. Выбери Sprite Mode → Single для одного спрайта или Multiple для атласа, затем нажми Apply.
  3. Открой Sprite Editor. Используй Slice или нарисуй прямоугольники, настрой имена, пивоты и границы.
  4. Нажми Apply, разверни TIFF в Project и используй его спрайты.

Для 9-slice задай границы спрайта и Mesh Type → Full Rect, а у компонента uGUI Image выбери Image Type → Sliced. После изменения размера холста проверь, что прямоугольники спрайтов помещаются в изображение.

Точность сохраняемого изображения

Precision рядом с размером холста задаёт точность изображения внутри TIFF:

  • Auto: 8 бит на канал для значений внутри 0–1; Float32, если результату нужен HDR.
  • 8-bit: всегда 8 бит на канал; значения вне 0–1 обрезаются в сохранённой композиции.
  • Float32: сохраняет мелкие различия на градиентах и картах высот, в том числе внутри 0–1; файл может стать больше.

Это отдельная настройка от GPU-компрессии в Inspector. Рабочий рендер использует half-float, поэтому Float32 не возвращает уже потерянную точность. Drawing-слои сохраняют пиксели в своём формате.

Live Update и сохранение

Live Update показывает несохранённые правки на объектах с этой текстурой. Одновременно обновлять текстуру вживую может один документ. На время сессии текстура становится несжатой, а Read/Write включается при необходимости; после завершения исходные настройки восстанавливаются. Временное изменение Read/Write отражается в .meta.

Сохранение ненадолго приостанавливает Live Update и возобновляет его после импорта. Закрытие или смена документа, перезагрузка скриптов и внешний переимпорт завершают сессию. Сборка Player тоже останавливает её и использует последний сохранённый TIFF: сохрани правки перед сборкой, а после включи Live Update снова. Если восстановить текстуру не удалось, сборка останавливается с ошибкой.

Live Update поддерживает 2D-импорт Default и Sprite. Crunch и другие типы текстур обновляются при сохранении. Финальная компрессия и обработка импортёра могут отличаться от живого превью.

Сохранить возможность редактирования

Храни TIFF вместе с .meta; перемещай и переименовывай ассет внутри Unity, чтобы сохранить ссылки. Не пересохраняй TIFF во внешнем графическом редакторе: он может удалить редактируемые слои. О содержимом файла читай в разделе TIFF-документ.

Перед сохранением примени изменённый код Shader FX. Если файл изменился извне, открой его заново или используй Save As. Если часть данных не прочитана, сразу после открытия под верхней панелью появляется предупреждение. При сохранении доступны Save a Copy… (копия), Cancel (отмена) и Save Anyway (сохранить несмотря на предупреждение). Копия оставляет оригинал для восстановления; оба варианта записи сохраняют текущие правки, но могут отбросить непрочитанные поля, типы слоёв или ссылки на ассеты. Чтобы восстановить эти данные без потерь, верни нужный пакет или ассеты и открой оригинал заново. Если после записи файла Unity сообщает об ошибке импорта, исправь её и сохрани документ ещё раз для повторного импорта.

Долгие операции и ограничения

При долгом сохранении или открытии появляется прогресс с отменой. Отмена сохранения оставляет прежний TIFF и текущие правки; дождись завершения уже запущенного этапа обработки. Финальную замену файла и импорт Unity отменить нельзя. Это не фоновое редактирование: пока операция идёт, документ недоступен для правок; рендер и импорт могут ненадолго блокировать интерфейс.

Пределы TIFF-документа: сторона холста до 16384, рабочий half-float буфер и декодированное выходное изображение менее 2 ГиБ каждый, встроенные пиксели — до 256 МиБ на текстуру и 1 ГиБ суммарно, без учёта сжатия файла. Например, один Drawing 8192×8192 RGBAHalf занимает 512 МиБ и не сохраняется — уменьши его исходное разрешение или раздели документ. Это ограничения формата реализации, а не обещание комфортной работы на предельных размерах.

Восстановление после прерванного сохранения

Если после сбоя остался файл .whimtex-tmp, выбери Tools → WhimTex → Recovery → Recover Staged TIFF…. WhimTex проверит его и предложит сохранить новый TIFF. Исходный документ и временный файл останутся нетронутыми. Неполную или повреждённую запись восстановить этим способом нельзя. Восстановленная копия получает новый GUID и настройки импорта по умолчанию; прежние ссылки на неё не переназначаются. Это не автосохранение: правки, для которых Save ещё не запускался, здесь не восстанавливаются.

Если после сбоя не восстановился Read/Write от Live Update, верни отсутствующий ассет или исправь ошибку импорта, затем выбери Tools → WhimTex → Recovery → Retry Live Update Recovery. Не удаляй журнал восстановления вручную.

Перенести старый документ

Документы .asset больше не поддерживаются. До обновления открой их в WhimTex 0.12.5 и через Save As сохрани в TIFF. Проверь слои, пиксели Drawing и настройки импорта; при необходимости назначь новый TIFF материалам и File-слоям. Текущая версия читает TIFF/JSON, но не старые документы .asset.