Закажите услуги фрилансеров для вашего проекта прямо сейчас!

Размещение заказа на фриланс бирже бесплатно.

6 дней назад
Максим
27 лет, Украина
6 дней в сервисе
Был онлайн 12 часов назад
6 дней назад

Нужно разработать интерфейс в виде аддона для шейдера в программе Blender. Шейдер готовый. У меня есть готовые примеры аддонов для простоты понимания. В Blender имеется встроенная консоль с обозначениями Python функций. Также при включении Python подсказок при наведении курсора на нужную функцию программа отобразит код для встраивания к текущей функции. (скриншот 3) Также там есть заготовки для аддонов. Более подробно готов показать по видеосвязи с трансляцией экрана.

Техническое задание:
Имеется несколько .blend проектов типа Earth, Mars, Venus и другие в определённой папке. Нужно создать аддон в раздел Properties>World Properties>Skybox.
В этом разделе нужно создать кнопку "Enable Skybox" и выпадающий список в котором будут показаны blend проекты из папки.
По умолчанию выбран Earth. При нажатии Enable Skybox в текущий проект будут импортированы World Shader и Compositing из выбранного файла. В проектах имеются текстуры, они тоже должны быть импортированы в текущий проект. Для разделов Stars, Ground, Moon Color, Sun Color нужно сделать выбор из готовых текстур которые находятся в одноименных папках для каждого слоя, т.е. в папке Ground будут размещены текстуры земли и тд. Также должна быть кнопка Open - она открывает проводник(для поиска текстур). Для экономии памяти изначально состояние текстур стоит Mute(выбор текстур находится внутри соответствующих нод, их легко увидеть), это также сделано чтобы при отсутствии текстуры не было сплошного розового цвета. Включение текстуры переключает состояние с Mute на Unmute .
Нужно сделать функции "Delete World" и "Save World" которые удаляют или сохраняют текущий проект в папку проектов.
Далее должны быть созданы управляющие кнопки, галочки и ползунки в отдельных разделах которые можно свернуть или развернуть. Код для встраивания к нужным функциям легко найти в разделе Shader>World. Допустимые диапазоны ползунков ограничены настроенными пределами в нодах(посмотреть ноды можно открыв их нажатием Tab).
Внутри разделов должны находиться ползунки из одноименных нод в Shader разделе. (скриншот 1)Порядок разделов следующий:
-Planet
-Atmosphere
-Sky
-Clouds
-Stars
-Ground Color
-Moon Color
-Sun Color
-Moon
-Rainbow
-Extinction
-Skybox
Последний раздел особенный:
-Fog:
-Галочка "Enable Fog" - по умолчанию отключена. Она управляет состоянием Mute/Unmute для ноды Add Fog в панели Compositing, и одновременно для галочки Use for render в слое Skybox в разделе Properties>View Layer Properties>View Layer. При добавлении новых объектов на другие слоя, на слое Skybox отображение всего должно быть всегда отключено(этот слой всегда должен рендерить World без обьектов, т.е. пустоту, далее слой накладывается в Compositing на остальные слоя как туман).
-Ползунок регулирующий параметр ноды View Distance в разделе Compositing (скриншот 3)

Необязательно: Ноды можно открыть клавишей Tab(выйти ctrl+tab). Там есть параметр Default. В самом начале разделов рядом с Enable Skybox нужно добавить кнопку Reset которая сбрасывает все параметры до Default (скриншот 4)

В начале файла __init__.py должны быть заданы параметры:
"name": "Skybox",
"author": "Max Gordon",
"version": (1.0),
"blender": (3.0+),
"description": "Skybox World Shader",
"location": "Properties>World Properties>Skybox",
"wiki_url": "",
"support": "",
"category": "Shader",

Внутренности нодов я удаляю для избежания воровства, оставляю только необходимый минимум для отладки.
Вопросы по видеосвязи.

  1. Прием заявок
  2. Выбор исполнителя
  3. Выполнение заказа
  4. Обмен отзывами
Заявки фрилансеров
3 заявки

Посмотреть заявки можно будет после закрытия заказа.

Другие заказы в категории «Прикладное ПО»

Здесь заказчик и фрилансеры могут обсуждать заказ до начала его выполнения.
Фрилансеры могут участвовать в обсуждении только после подачи заявки.
Здесь заказчик будет контролировать выполнение заказа и общаться с исполнителем.
Доступ к этому разделу имеют только заказчик и выбранный исполнитель.
Все материалы этого раздела закрыты от поисковых систем.