Skip to main content

Taskflow update #2



Development goes slow but steady. Still working mainly on UI and user interaction workflow in general. 

Прогресс идёт медленно, но равномерно. Основная область работы - всё ещё интерфейс и взаимодействие юзера с вьюером вцелом.

Finally node renaming is done! Also note a little change to the node's header - it now displays node type separately from the name

Наконец-то можно переименовывать ноды! Так же заметьте изменение в хедере ноды - теперь тип ноды отображается независимо от имени, снизу справа

Task status can be changed, task can be paused/unpaused - basically what you would expect from any other farm management software

Состояние тасков можно менять, таск может быть приостановлен/продолжен - по сути самый стандартный функционал любого менеджера фермы

Zooooooom!


Зуууууууум!

Tasks can have one or more groups. Groups are now selectable in the list to the left. Children tasks inherit groups from parents, so it's easy to filter out a task tree created by one specific task. This minimal use case can be used as job names in other farm managers.

Таски могут иметь одну и более групп. Группы теперь можно выбирать в отдельном списке слева. Группы дочерних тасков наследуются от родителя, так что с помощью групп легко фильтровать таски, созданные одной одним сабмитом. В минимальном применении они могут служить аналогом имени работы (job name) в других рендерфарм менеджерах.


A number of stock nodes have been improved,
as you may see.

Here framerange_splitter splits framerange attribute of a task into blocks of certain size

then hip_driver_renderer renders selected rop - caches some geometry, generating a new task for every frame produced

then ifd_generator generates ifds from mantra node, also generating a new task for every frame done, this way first frame can start rendering as soon as first frame is cached in hip_driver_renderer node, not waiting for all tasks above it to finish

then render ifd actually renders ifds into images

Also note new task invocation progress animation

 

Некоторые стоковые ноды были доработаны

В этом примере framerange_splitter разделяет аттрибут frames таска на блоки некоторого размера, дублируя таск для каждого блока.

hip_driver_renderer просто запускает кешинг заданного ропа на нужном промежутке фреймов, генерируя новый таск для каждого созданного кадра

Затем ifd_generator создает ifd из заданной мантра ноды, так же создавая новый таск для каждого готового фрейма, так что рендер может начаться как только первый кадр был закеширован в hip_driver_renderer, не дожидаясь выполнения всех тасков выше

Ну и в конце концов mantra нода собственно рендерит ifd в картинки

Так же заметьте новую анимацию прогресса работы таска.


Next effort attempt will concentrate on deploying a public version. So far i'm looking mainly at Pypi repository for the ease of deployment with all the dependencies, and maybe additional pyinstaller blob just in case.

Итак, следующая цель апдейта - таки сделать минимально рабочую версию и найти удобную модель распространения. На данный момент самым удобным смотрится Pypi пакет, но и упаковка pyinstaller-ом вполне работает, хоть и не так сподручно.

 

If you want you can support the project here: https://www.patreon.com/xapkohheh

Если хотите поддержать проект: https://www.patreon.com/xapkohheh