opentoonz что это за программа
OpenToonz: снаружи и внутри
Прошло уже почти четыре года с тех пор, как PVS-Studio поверял исходный код OpenToonz. Этот проект является очень мощным инструментом для создания двухмерной анимации. За время с последней проверки с его помощью были созданы такие мультипликационные произведения, как Мэри и Ведьмин цветок, Бэтмэн-Нинзя, Промаре и другие. Раз большие студии продолжают пользоваться Toonz, то почему бы не проверить качество исходного кода еще раз?
С предыдущим разбором ошибок можно познакомиться в статье «Плохой код пакета для создания 2D-анимаций Toonz». В целом не похоже, что качество кода сильно повысилось, так что общее впечатление лучше не стало. К тому же, было обнаружено множество тех же ошибок, что и в предыдущей статье. Повторно мы их рассматривать не будем, благо выбрать новые есть из чего.
Впрочем, надо понимать, что наличие ошибок вовсе не обязательно мешает активно и продуктивно использовать программный продукт. Скорее всего, найденные ошибки живут в редко используемых или вовсе в неиспользуемых участках кода, иначе они были бы выявлены в процессе использования приложения и исправлены. Однако, это не значит, что статический анализ избыточен. Просто смысл статического анализа не в поиске старых и неактуальных ошибок, а в удешевлении процесса разработки. Многие ошибки при написании кода могут быть выявлены сразу, а не в процессе эксплуатации ПО. Соответственно, при регулярном использовании статического анализатора, ошибки исправляются на самом раннем этапе. Это экономит и время разработчиков, и деньги компании, и улучшает восприятие продукта пользователями. Согласитесь, неприятно постоянно отписывать разработчикам, что не работает то одно, то другое.
V521 Such expressions using the ‘,’ operator are dangerous. Make sure the expression ‘m_to, m_from = it->first.getNumber()’ is correct. flipbook.cpp 509
Возможно, программист ожидал, что можно присвоить одно значение нескольким переменным, просто выписав их через запятую. Однако оператор «,» в С++ работает иным образом. В нем первый операнд выполняется, и результат «сбрасывается», далее вычисляется второй операнд. И, хотя переменная m_to инициализируется в последующем цикле, если что-то пойдет не так или кто-то неаккуратно произведет рефакторинг, возможно, что m_to так и не получит значения. И вообще, в любом случае этот код выглядит странно.
V532 Consider inspecting the statement of ‘*pointer++’ pattern. Probably meant: ‘(*pointer)++’. trop.cpp 140
Маленький недочет, который может дополнительно путать человека, читающего код. Инкремент, как и задумывалось, смещает указатель. Однако после этого происходит бессмысленное разыменование. Лучше просто написать pix++.
V773 The function was exited without releasing the ‘autoCloseUndo’ pointer. A memory leak is possible. vectortapetool.cpp 575
Подобных предупреждений было больше 20. Зачастую где-то в конце функции производится освобождение памяти, но для более ранних return этот необходимый шаг оказывается пропущен. Так и здесь. В конце указатель передается TUndoManager::manager()->add(), который берет на себя удаление указателя, однако выше присутствует return для которого этот метод забыли позвать. Так что всегда стоит помнить о своих указателях при любом выходе из функции, а не просто вписывать удаление куда-то в конец блока или перед последним return.
Однако, если для сокращенной версии кода, эта ошибка выглядит очевидной, то в реальном более запутанном коде, отследить такую проблему может быть затруднительно. Тут и поможет никогда неустающий статический анализатор.
V522 Dereferencing of the null pointer ‘region’ might take place. palettecmd.cpp 94
Тут можно предположить, что разработчик перепутал правила short-circuit evaluation и подумал, что если первая проверка указателя вернет false, то далее разыменования такого нулевого указателя не произойдёт. Однако для оператора «||» все совсем наоборот.
V561 It’s probably better to assign value to ‘ca’ variable than to declare it anew. Previous declaration: xshcellmover.cpp, line 319. xshcellmover.cpp 323
V561 It’s probably better to assign value to ‘cb’ variable than to declare it anew. Previous declaration: xshcellmover.cpp, line 320. xshcellmover.cpp 324xshcellmover.cpp 323
Возможно еще одна копипаста, но с не совсем обычной сутью ошибки. Обращение к x было заменено на y, но вот тип переменной в начале строки, из-за которого и происходит локальная передекларация, убрать забыли. В итоге, вместо смены ориентации позиций для исходных ca и cb, создаются новые локальные ca и cb, с которыми далее ничего не происходит. А вот внешние ca и cb продолжают свое существование со значениями для x.
В процессе написания статьи мне стало интересно потыкать и попробовать что-нибудь сделать в этой программе. Может мне повезло, но странное поведение не заставило себя ждать: зависание, отображение моих манипуляций с планшетом после отвисания и странный квадрат после нажатия Ctrl+Z. К сожалению, повторить это поведение у меня не вышло.
Но на самом деле, несмотря на такое поведение и привитие привычки регулярно нажимать Ctrl+S, OpenToonz впечатляет своим масштабом и функционалом. Все-таки не зря им пользуются и крупные студии.
И мое художество как бонус:
В случае OpenToonz очевидно, что пытаться исправить сразу все обнаруженные анализатором ошибки станет большой задачей, которая застопорит процесс разработки. Для таких случаев существует подход «Массового подавления», когда технический долг заносится в suppress-базу анализатора и дальнейшая работа с анализатором проводится уже на основе свежих срабатываний. Ну а если появляется время, то можно и поразбирать технический долг.
P.S. Напоминаю, что разработчики открытых проектов могут использовать бесплатный вариант лицензирования PVS-Studio.
Если хотите поделиться этой статьей с англоязычной аудиторией, то прошу использовать ссылку на перевод: Victoria Khanieva. OpenToonz.
Управление проектами¶
Основным преимуществом управления производством с помощью проектов является то, что можно достичь согласованности производственных параметров и производственных материалов.
Согласованность производственных параметров достигается благодаря тому, что все сцены проекта, как только они создаются, наследуют все параметры из проекта (см. Настройка сцены ).
Правильное использование производственного материала достигается благодаря тому, что после определения производственной структуры с помощью проектов все сцены могут сохранять и извлекать файлы с использованием папок проекта по умолчанию.
Настройка Projectroot¶
Значением по умолчанию является C:\OpenToonz stuff\projects в Windows и /Applications/OpenToonz/OpenToonz stuff/projects в Macintosh.
Если вашим производством нужно управлять более чем на одном компьютере в сети, вы можете совместно использовать одну и ту же базу данных проекта на всех компьютерах, которые вы хотите, определив один и тот же корень проекта на каждом компьютере.
При необходимости также можно определить более одного rootproject: в этом случае папки rootproject будут видны в браузере OpenToonz, каждый из которых имеет связанный путь в скобках.
Корневая информация проекта может быть изменена в любой момент, например, если вам нужно переместить файлы базы данных проекта с одного компьютера на другой
Чтобы установить rootproject в Windows:
Чтобы добавить projectroot в Windows:
Чтобы установить projectroot на Macintosh
3. Look for the following line where the projectroot is defined: TOONZPROJECTS=”/Applications/OpenToonz/OpenToonz stuff/projects”
Чтобы добавить projectroot в Macintosh:
Настройка проектов¶
Когда вы определяете новый проект, вы можете указать его папки по умолчанию, тогда как его настройки по умолчанию будут унаследованы от текущего проекта. Папки и настройки по умолчанию могут быть изменены в любое время для удовлетворения новых производственных потребностей.
Проекты могут быть организованы в папки и могут содержать подпроекты, которые можно просматривать в файловом браузере OpenToonz. Это позволяет вам настраивать структуры проекта в соответствии с вашими производственными потребностями, например, создавать папку для каждого эпизода, а затем проект для каждой сцены, принадлежащей этому эпизоду. Поскольку браузер проекта отображает дерево проекта и все папки, содержащиеся в корне проекта, вы также можете организовать структуру папок в корне проекта с помощью файловой системы ОС.
В браузере проекта всегда выбран один текущий проект: когда вы начинаете работать над сценой, он автоматически принадлежит текущему проекту, наследуя его настройки и папки по умолчанию.
Если вы хотите, чтобы новая сцена была частью нового проекта, сначала вы должны определить новый проект. Если вы хотите, чтобы он был частью ранее созданного проекта, сначала вы должны установить этот проект в качестве текущего.
Если вы хотите использовать ферму для рендера сцен, все серверные (рендер) узлы фермы должны совместно использовать один и тот же projectroot (см. Установка фермы Toonz на Windows ) и все диски, содержащие базу данных проектов, должны быть доступны в сети.
Для создания нового проекта:
Чтобы изменить текущий проект:
Нажмите маленькую круглую кнопку слева от имени проекта в дереве проекта, доступном в браузере файлов OpenToonz. Становится красным при выборе.
Чтобы добавить сцену в проект:
Чтобы изменить папки проекта по умолчанию:
Select File → Project Management → Project Settings… and change default folders paths.
При изменении папок по умолчанию сцены, ранее созданные в том же проекте, могут не получить нужные файлы.
Папки проекта по умолчанию¶
Проекты имеют папки по умолчанию, в которые автоматически сохраняются отсканированные рисунки, нарисованные рисунки, сцены, визуализированные кадры и палитры. Эти папки являются общими для всех сцен, созданных для этого конкретного проекта, и помечаются следующим образом:
Для каждой из этих папок вы можете указать различные местоположения в вашей компьютерной сети в зависимости от того, как вы настроили хранилище вашего производственного материала.
Абсолютные или относительные пути могут быть указаны для определения папок по умолчанию.
Если вы укажете абсолютный путь, папки будут создаваться при необходимости там, где это указано. Например, вы можете установить +drawings в C:\production\drawing01 в Windows или /Volume/Macintosh HD/production/drawing01 в Macintosh: это означает, что OpenToonz нарисовал и очищенные уровни будут автоматически сохраняться в C:\production\drawing01 в Windows или в /Volume/Macintosh HD/production/drawing01 в Macintosh.
Если вы укажете относительный путь, все папки, которые вы укажете в пути, будут созданы, когда это необходимо, в папке проекта в выбранном корне или репозитории проекта (см. Настройка контроля версий в OpenToonz ). Например, для проекта myproject вы можете установить +drawing как sequence01\mydrawings : это означает, что нарисованные и очищенные уровни OpenToonz будут автоматически сохраняться в myproject\sequence01\mydrawings папке, находящейся в выбранном projectroot или репозитории.
Метки папок по умолчанию, которые вы можете найти в настройках проекта (то есть +drawings, +extras и т. д.), могут использоваться в качестве псевдонимов в OpenToonz. Например, если какой-либо материал извлекается из дополнительной папки по умолчанию, путь ее загрузки будет содержать псевдоним +extras. Их также можно использовать, когда необходимо указать путь сохранения, например, в поле «Путь» диалогового окна «Новый уровень».
Когда в сцене вы загружаете материал, не находящийся в папках текущего проекта, вы можете выбрать, следует ли импортировать файлы, то есть копировать их в соответствующие папки проекта, или создать ссылку с внешним файлом. Ссылка определяется абсолютным путем.
Файлы, загруженные в сцену без импорта, могут быть импортированы позже сразу же с помощью функции «Сбор активов» (см. Сбор активов ).
Все общие диски, участвующие в определениях папок, то есть диски, на которых производственный материал должен быть записан и прочитан, должны быть общими, предоставляя полные права любому пользователю, иначе обмен файлами не будет успешным. Для Windows диски должны иметь разрешение общего доступа, установленное на полный доступ для всех; для Macintosh настройки общего доступа должны позволять любому пользователю выполнять чтение и запись на диски.
Когда проект не определен, проект OpenToonz stuff/sandbox используется по умолчанию.
Чтобы установить папки по умолчанию для нового проекта:
Выполните одно из следующих действий:
Добавление пользовательских папок по умолчанию¶
Besides the basic default folders you can also add your own default folders, and use the related aliases, by defining a TXT file named project_folders.txt in the OpenToonz stuff\profiles folder. In this file you can also change the order of the folders already available to change the way they are listed in the project settings dialog.
The following is an example of a projectfolders.txt file:
где псевдонимы +backgrounds и +3D были добавлены к псевдонимам по умолчанию.
Чтобы добавить больше папок по умолчанию в проекты:
Таким образом, необходимые папки по умолчанию создаются автоматически с тем же именем (mydrawings), по одной для каждой сцены, в соответствии с путем, использованным при сохранении сцены. Как следствие, если переменная используется таким образом для всех псевдонимов, все файлы, относящиеся к сцене, будут храниться в папке с именем сцены.
В этом случае необходимые папки по умолчанию создаются автоматически с именем и путем к папкам, используемым при сохранении сцены, внутри указанного пути (mydrawings). Как следствие, если переменная используется таким образом для всех псевдонимов, все файлы, используемые в проекте, будут храниться в главной папке для каждого псевдонима, содержимое которого разделено на папки, называемые сценами.
Это позволяет OpenToonz автоматически создавать папки, связанные со сценой, при сохранении файлов OpenToonz или импорте внешних файлов, а также позволяет использовать общие псевдонимы +drawings, +inputs и +extras, независимо от того, где уровни загружаются из текущего проекта.
Использование браузера проекта¶
Браузер проекта доступен в конце дерева браузера файлов. В нем перечислены все созданные проекты, чье фактическое местоположение находится в корне проекта, который был определен при первоначальной установке OpenToonz. Значение Projectroot отображается в скобках.
Название папок, на которые указывают псевдонимы, отображается синим цветом.
В случае, если определено более одного projectroot, каждый из них будет указан со связанным значением projectroot в скобках (см. Настройка Projectroot ).
Папки по умолчанию с относительными путями¶
Если папки по умолчанию определены с использованием относительного пути, в браузере проекта вы увидите все папки, указанные в пути под корневым каталогом проекта, и дерево папок проекта будет таким же, как и дерево файловой системы. Папки, являющиеся целью путей, отображаются синим цветом.
Projects Project01 section01 prod drawings
Projects Project01 section01 prod drawings seq01 scene01
Projects Project01 seq01 scene01 prod drawings
Projects Project01 prod drawings seq01 scene01
Папки по умолчанию с абсолютными путями¶
Когда папки по умолчанию определены с использованием абсолютного пути, в браузере проекта вы увидите только связанные псевдонимы, независимо от их расположения в сети. Таким образом, вы можете быстро получить доступ к производственным материалам, не просматривая компьютер или сеть. Псевдонимы отображаются синим цветом, поскольку они являются местоположением, на которое указывают пути к папкам по умолчанию.
Например, для проекта Project01 с +drawings, то есть C:\production\prod drawing в Windows, или /Volume/Macintosh HD/production/prod drawing в Macintosh, браузер проекта будет отображать следующее:
Projects Project01 +drawings
Projects Project01 +drawings seq01 scene01
Projects Project01 +scenes scene01.tnz +drawings
с drawings, то есть C:\seq01\scene01\prod drawings в Windows, или /Volume/Macintosh HD/seq01/scene01/prod drawings в Macintosh и находится под связанный файл сцены (формат TNZ).
Обзор интерфейса¶
Интерфейс OpenToonz организован в комнаты, также известные как рабочие пространства: каждая комната представляет собой различную коллекцию окон, которые расположены в определенных местах на экране.
Использование комнат¶
Доступные комнаты перечислены в дальнем правом углу строки меню. Каждая из них всегда отображает содержимое текущей сцены.
Комнаты могут быть названы и их порядок может быть изменен. Новые комнаты могут быть добавлены, а существующие комнаты могут быть удалены. Когда комната добавлена, она пуста; для её настройки можно добавлять панели по одной (см. ниже).
Чтобы войти в комнату:
Нажмите на соответствующую вкладку в правой части строки меню.
Чтобы назвать комнату:
Дважды щелкните вкладку и введите имя, которое вы хотите присвоить комнате.
Чтобы заказать номерные вкладки:
Нажмите и перетащите вкладку на новую позицию.
Чтобы добавить новую комнату:
Щелкните правой кнопкой мыши в области вкладок комнаты и выберите «Новая комната» в открывшемся меню.
Чтобы удалить комнату:
Щелкните правой кнопкой мыши вкладку комнаты и выберите Удалить комнату « » в открывшемся меню. Текущая комната не может быть удалена.
To return to the set of rooms provided with OpenToonz:
Choose Windows → Workspace → Reset to Default Rooms.
Настройка комнат¶
Комнаты можно изменить, установив разные размеры для разных панелей и добавив или удалив панели. Чтобы предотвратить случайное добавление или удаление панелей, конфигурация комнат может быть заблокирована.
Большинство панелей можно развернуть, чтобы заполнить весь интерфейс, и их можно добавить в виде плавающих окон с помощью меню Окна.
Чтобы изменить размер панели в комнате:
Щелкните любой вертикальный или горизонтальный разделитель и перетащите его в новое положение.
Некоторые панели, такие как панель инструментов и полоса уровня, имеют фиксированный размер, поэтому их нельзя изменить.
Чтобы открыть панель как плавающее окно:
Выберите в меню Окна панель, которую вы хотите открыть.
Чтобы изменить размер плавающего окна:
Нажмите и перетащите границу или угол окна.
Чтобы закрыть плавающее окно или диалог:
Нажмите кнопку закрытия справа от строки заголовка.
Чтобы добавить панель в комнату:
Попытка пристыковать панель к крайней левой / правой части интерфейса может завершиться неудачей, если в этот момент главное окно OpenToonz развернуто. Чтобы преодолеть это, вы можете восстановить размер основного окна, закрепить нужную панель, а затем развернуть ее обратно.
Чтобы удалить панель из комнаты:
Чтобы развернуть или свернуть развернутую панель:
Дважды щелкните строку заголовка.
Некоторые панели, такие как панель инструментов и полоса уровня, имеют фиксированный размер, поэтому их нельзя развернуть.
Для блокировки/разблокировки конфигурации комнат:
Activate/deactivate the Windows → Workspace → Lock Room Panes option.
Панели комнаты¶
Ниже приведен список панелей (в том же порядке, в котором они появляются в меню Окна), которые можно использовать для создания комнат и которые можно открывать как плавающие окна.
Пакетные серверы¶
Окно «Пакетные серверы» позволяет обрабатывать пакетный список с помощью рендер-фермы и содержит информацию о списке узлов сервера (рендеринга), определенных для фермы.
Настройки очистки¶
Панель «Настройки очистки» позволяет вам определить параметры процесса очистки отсканированных растровых изображений, чтобы преобразовать их в растровые изображения Toonz, готовые для рисования в OpenToonz.
Цветовая модель¶
Средство просмотра цветовой модели отображает изображение или уровень анимации, которые вы загрузили в качестве эталона для рисования текущего уровня анимации.
Браузер файлов¶
Браузер файлов позволяет загружать и сохранять файлы и получать доступ к проектам.
Слева находится дерево файлов с некоторыми основными папками, содержащими материалы, хранящиеся на вашем компьютере: My Computer, Network, My Documents, History, Library and Projects. Вы можете открывать папки и подпапки для получения файлов, которые отображаются в области справа.
Flipbook¶
Flipbook может отображать уровни анимации, клипы или последовательности изображений. Его можно использовать для проверки уровней, например, перед их загрузкой, или для управления визуализированной последовательностью.
Редактор функций¶
Level Strip¶
Level strip отображает последовательность рисунков, принадлежащих уровню, выбранному в настоящий момент в таблице Xsheet.
Это помогает вам редактировать последовательность рисунков и видеть все рисунки текущего уровня, даже если эти рисунки не отображаются в Xsheet.
Палитра¶
Она отображает стили, определенные для текущего уровня, или, если он неактивен, стили, определенные для ранее выбранного уровня.
Состав сцены¶
Состав сцены позволяет вам управлять файлами, загруженными в сцену, сохранять их и загружать новые. Это может быть организовано в папках и подпапках.
Схема¶
Схема может альтернативно отображать информацию о стадии или специальном использовании FX.
Схема сцены отображает в виде узлов все объекты, определенные в сцене, то есть столбцы, вешалки, камеры, таблицы и траектории движения, и позволяет вам управлять способом, которым они связаны друг с другом.
Схема FX позволяет применять FX к содержимому столбцов Xsheet и управлять их применением. Все столбцы и FX отображаются как узлы, которые можно подключить, чтобы установить, как FX влияет на содержимое сцены.
Палитра Studio¶
Палитра Studio позволяет хранить неограниченное количество палитр уровней. Отсюда любая палитра может быть извлечена и назначена текущему уровню для его рисования, без необходимости определять одни и те же стили снова и снова. Он также включает в себя средство просмотра, отображающее стили текущей выбранной палитры.
Редактор стилей¶
Редактор стилей позволяет изменять стили палитры. Вы можете выбрать тип стиля: цвет, текстура, вектор и растр. Также есть вкладка настроек, где вы можете выбрать некоторые параметры для стиля.
Задания¶
Окно Задания содержит дерево задач со всеми задачами, отправленными на пакетную обработку, и сведения о задаче, выбранной в данный момент в дереве. Из дерева задач вы можете запустить или остановить выполнение задачи или удалить ее.
Центр сообщений¶
The message center displays in a list the messages OpenToonz is sending to the user. You can set filters on the messages showed in the window using the appropriate radio buttons, or you can clear the list completely by pressing the Clear button.
Панель инструментов¶
Панель инструментов содержит инструменты для рисования, выбора и редактирования рисунков, а также для анимации таких объектов, как камера, столбцы и вешалки. Инструменты на панели инструментов могут использоваться только в главном окне просмотра.
сли панель инструментов слишком короткая для отображения всех инструментов, ее можно прокручивать с помощью кнопок со стрелками, имеющихся на ее концах.
Инструмент анимирования изменяет положение, вращение и размер текущих объектов (см. Анимирование объектов ).
Инструмент выделения выполняет выделение и преобразует его (см. Использование инструмента выделения ).
Кисть рисует в рабочей области в режиме рукописного ввода (см. Рисование с помощью инструмента Кисть ).
Геометрический инструмент рисует геометрические фигуры (см. Рисование с помощью геометрического инструмента ).
Инструмент шрифта добавляет текст, устанавливая шрифт и размер (см. Добавление текста ).
Заливка заполняет области рисования текущим стилем (см. Покраска областей ).
Инструмент покраски рисует линии и области в растровых рисунках Toonz в режиме рукописного ввода. (см. Покраска областей ).
Ластик удаляет векторы на векторных рисунках, а также закрашенные области и линии на растровых рисунках (см. Инструменты рисования ).
Скотч объединяет два открытых конца одного или двух векторов в векторных рисунках или закрывает пропуски в растровых рисунках (см. Соединение и разделение ).
Пипетка выбирает стиль из текущего чертежа, который становится текущим стилем в палитре и в редакторе стилей.
Инструмент RGB пипетка выбирает красные, зеленые и синие значения из содержимого средства просмотра и применяет их к текущему стилю (см. Простые цвета ).
Редактор контрольных точек изменяет векторную форму, редактируя ее контрольные точки (см. Редактирование векторных контрольных точек ).
Щипок изменяет векторную форму, щелкая и перетаскивая в любом месте вектора (см. Изменение изгиба векторов ).
Насос локально изменяет толщину вектора, нажимая на участок, на который вы хотите повлиять, а затем перетаскивая его вверх или вниз (см. Использование других инструментов модификатора ).
Магнит деформирует несколько векторов одновременно, щелкая область, на которую вы хотите повлиять, и перетаскивая ее (см. Использование других инструментов модификатора ).
Клещи изгибает векторы в векторных рисунках (см. Использование других инструментов модификатора ).
Утюг удаляет складки из векторов, перемещая курсор на вектор, который вы хотите сгладить (см. Использование других инструментов модификатора ).
Нож разбивает вектор на две части при нажатии на него (см. Соединение и разделение ).
Скелет определяет модели персонажей и анимирует их, как в анимации вырезов (см. Использование инструмента Скелет ).
Крюк определяет контрольные точки, которые будут использоваться в схеме этапа для перемещения объекта или связывания одного объекта с другим (см. Использование крюков ).
Трекер отслеживает определенные области в последовательности изображений (см. Трекинг-точки ).
Plastic tool создает сетку, которая позволяет деформировать и анимировать персонажа или его часть (см. Использование Plastic tool ).
Лупа увеличивает и уменьшает содержание зрителя; после щелчка можно перетащить вверх, чтобы увеличить рабочую область, или перетащить, чтобы уменьшить масштаб.
Рука панорамирует контент зрителя; если активирован 3D-вид, инструмент «Рука» также позволяет перемещаться по 3D-виду.
Поворот вращает содержимое просмотра; Если 3D-вид активирован, инструмент Повернуть позволяет изменить точку обзора.
Панель параметров инструмента¶
Панель параметров инструмента отображает настройки для текущего инструмента, если он есть.
Например, он позволяет установить толщину и другие свойства инструмента «Кисть».
Если панель параметров инструмента слишком короткая для отображения всех параметров инструмента, ее можно прокручивать с помощью кнопок со стрелками, имеющихся на ее концах.
Панель команд¶
Панель командной панели может быть закреплена в любой части интерфейса OpenToonz.
Если панель команд слишком короткая для отображения всех командных кнопок, справа от нее появится символ двойной стрелки, позволяющий отобразить раскрывающееся меню с остальными.
Для отображения панели команд:
Чтобы настроить кнопки панели команд:
Просмотрщик¶
Он имеет различные режимы визуализации, среди которых вы можете выбрать наиболее подходящий для выполняемой вами операции.
ComboViewer¶
Comboviewer объединяет в одной панели средство просмотра, горизонтальную панель инструментов и панель параметров инструмента.Это и альтернативная рабочая область, где вы можете рисовать изображения и одновременно видеть результат вашего композитинга. Это бесконечно, и вы можете прокручивать, увеличивать, уменьшать и по
Он имеет различные режимы визуализации, среди которых вы можете выбрать наиболее подходящий для выполняемой вами операции.
Xsheet¶
Xsheet позволяет вам управлять содержимым сцены так же, как и временной шкалой. Он организован в столбцы, а столбцы разделены на ячейки, представляющие содержимое этого столбца в данном конкретном кадре. В столбцы можно загружать уровни анимации, клипы, изображения, аудиофайлы или другие таблицы Xsheets.
Каждый столбец имеет свой собственный заголовок, содержащий информацию о его содержании. В крайнем левом столбце отображается номер кадра с курсором на текущем кадре. Область заголовков и столбец фрейма всегда видны даже при прокрутке области Xsheet; таким образом легче понять, как строится сцена.
Кадры отображаются с чтением изображений слева направо в каждой строке ячейки.
Таймлайн¶
Таймлайн позволяет вам управлять содержимым сцены так же, как Xsheet. Он организован в горизонтальных слоях, и слои разделены на ячейки, представляющие содержимое этого слоя в этом конкретном кадре. В слоях вы можете загружать уровни анимации, клипы, изображения, аудиофайлы или другие временные шкалы.
В самой левой части каждый слой имеет свой собственный заголовок, содержащий информацию о его содержимом. В верхней части временной шкалы есть линейка времени, которая отображает номер кадра с курсором на текущем кадре. Область заголовков и линейка времени всегда видны, даже при прокрутке области шкалы времени; таким образом легче понять, как строится сцена.
Кадры отображаются с чтением изображений снизу вверх в каждом столбце ячейки.
История¶
Панель истории, позволяет проверять и отменять/повторять историю последних действий, выполненных в текущей сцене OpenToonz.
Запись аудио¶
Окно записи аудио, позволяет записывать источник звука в реальном времени, прослушивать его и вставлять в новый аудио-столбец таблицы Xsheet.Точка вставки будет расположена справа от выбранного столбца ячейки и начинается с выбранного кадра ячейки.
В настоящее время это окно нельзя закрепить, чтобы образовать часть комнаты, как и другие в меню Окна. Вместо этого оно должно быть открыто как плавающее окно, когда это необходимо.
Настройка внешнего вида интерфейса¶
Внешний вид интерфейса OpenToonz можно настроить в соответствии с любой производственной потребностью, выбрав требуемый язык и тему интерфейса.
OpenToonz позволяет пользователям выбирать определенный язык для интерфейса программного обеспечения, включая меню, команды, всплывающие подсказки и сообщения на экране. В настоящее время доступны следующие языки: английский, немецкий, испанский, французский, итальянский, русский, японский и китайский.
There are also several included themes to choose from: Default, Blue, Dark, Light and Neutral.
The OpenToonz interface theme set to Default and to Light.
Темы интерфейса определяются с помощью файла QSS, концепции, терминология и синтаксис которого основаны на файлах CSS (HTML Cascading Style Sheets). Файлы QSS также относятся к набору изображений PNG, которые используются для создания виджетов интерфейса.
Эти файлы хранятся в папке, называемой файлом QSS, и находятся в папке C:\OpenToonz stuff\config\qss для Windows и OpenToonz stuff\config\qss для macOS.
Файл QSS для Macintosh назван с суффиксом _mac.
Файл QSS можно редактировать с помощью любого программного обеспечения для текстового редактора, например, Блокнот или TextEdit; PNG изображения с любым программным обеспечением для редактирования изображений. Редактирование файла QSS требует определенных навыков в языке CSS, но некоторые изменения, такие как цвета элементов панели, можно легко сделать, выразив их в красных, зеленых и синих значениях.
Файлы QSS, определяющие цвета и изображения, используемые в интерфейсе OpenToonz, должны быть записаны в соответствии с определенным синтаксисом, иначе интерфейс OpenToonz не будет отображаться должным образом. Если вы решите отредактировать файл QSS, сначала сделайте резервную копию на тот случай, если вам потребуется вернуть файл к исходной версии.
Чтобы выбрать язык интерфейса:
Для выбора темы интерфейса:
Для создания новой темы:
Новый стиль будет доступен в диалоге настроек при следующем запуске OpenToonz.
Для редактирования файла стиля QSS:
Откройте и отредактируйте с помощью программного обеспечения текстового редактора (например, «Блокнот» или «TextEdit») файлы QSS, доступные в папке стилей.
Чтобы редактировать изображения в стиле:
Откройте и отредактируйте с помощью программного обеспечения для редактирования изображений файлы PNG, доступные в папке стилей.