Возможно, Blender — проект с открытым исходным кодом высочайшего качества.
Но разработчики не останавливаются на достигнутом и ставят перед собой амбициозные цели.
Ниже приведен перевод статьи, в которой разработчики делятся планами того, каким они видят будущее своего продукта.
В предыдущий пост Было представлено несколько технических и конкретных целей, которых мы хотели бы достичь.
Вот они: 1) Улучшена производительность кода рендеринга.
Нам необходимо убедиться, что мы используем лучший метод рендеринга, который максимально использует возможности графического процессора и функции, доступные только в новых версиях OpenGL, которые позволяют повысить производительность и улучшить код; 2) Представление материалов во вьюпорте на основе узлов и соответственно новая система визуализации материалов в реальном времени (для GLSL-рендеринга); 3) Использование композитинга во вьюпорте, что позволяет создавать такие эффекты, как DOF, Ambient Occlusion, HDR, Bloom, Flares, рисование контуров; 4) Поддержка мобильных устройств ( OpenGL ES ).
Что мы имеем на данный момент
* Ограниченный композитинг (ветка разработки viewport_experiments).Когда мы говорим «ограниченный», мы имеем в виду, что композитинг не привязан к свойствам отображения, он применяется ко всему содержимому фреймбуфера.
В идеале мы хотим, чтобы в этом режиме отображались индикаторы интерфейса, такие как сетка или армирование.
Этого не так уж и сложно добиться, ведь вы можете реализовать тот же принцип, по которому работает прозрачность или рентгеновская система, взяв сетку объекта и выведя ее на верхний уровень рендеринга.
*Некоторые части нашего кода рендеринга сетки используют Объект буфера вершин в оптимальном случае другие используют его, но имеют проблемы с производительностью, а некоторые вообще не используют его.
Как ветка разработки soc_2014_viewport_fx поможет нам достичь наших целей?
Soc_2014_viewport_fx позволит нам без суеты перейти на новые или мобильные версии OpenGL, а также предоставит опыт высококачественного рендеринга, который требуется в современных версиях OpenGL, в которых весь рендеринг выполняется через объекты Vertex Buffer Objects. Это также устранит зависимость от Г.Л.
У.
, поскольку эта библиотека использует устаревшие функции OpenGL. Кроме того, это даст толчок таким вещам и функциям, которые можно отобразить только с помощью шейдеров.
Это важно, если в какой-то момент мы перейдем на современную или мобильную версию OpenGL. Таким образом, это в основном поможет достижению целей 1 и 4, но после слияния потребуется проделать дополнительную работу, чтобы полностью реализовать эти цели.
В этот момент, если мы хотим поддерживать современные или мобильные версии OpenGL, нам не избежать необходимости переписывать большую часть кода рендеринга в реальном времени.
Эта ветка разработки уже частично позаботилась об этом, поэтому ветку следует внести и использовать (фактически, слияние — это самый первый шаг).
Основываясь на предыдущем опыте объединения ветвей, я оцениваю, что это займет около 2-3 недель напряженной работы.
Можем ли мы сегодня сосредоточиться на каких-то целях?
Да мы можем.Такие цели, как создание материалов на основе узлов или совместное позиционирование, просто предполагают, что поддержка GLSL уже полностью реализована в основной ветке, поэтому ничто не мешает их развитию.
Однако чем раньше мы реализуем ветку Soc_2014_viewport_fx, тем меньше проблем у нас возникнет в будущем.
Окно просмотра, простота использования
Режимы отображения
Режимы отображения становятся немного непредсказуемыми при использовании материалов, ограниченных такими свойствами, как зеркальный/диффузный/текстурированный.Они также привязаны к полигональной структуре, которая станет менее значимой, если мы будем использовать отображение на основе свойств материала.
Художники часто настраивают различные количества свойств объектов и материалов, чтобы визуально получить то, что они хотят, что также может быть болезненным процессом и, конечно, не подходит для новичков.
Нам нужен инструмент, с которым художники смогут легко работать, который сможет быстро визуализировать то, что они хотят, без хлопот и догадок, связанных с выяснением того, как это лучше визуализировать.
Режимы работы (редактирование, лепка, рисование, анимация, разработка игровых шейдеров)
Различные рабочие процессы требуют разных данных и отображения.Мы можем определить «рабочие процессы» с помощью наборов шейдеров и параметров отображения, созданных специально для данного рабочего процесса.
Например, режим «рабочий стол» в режиме редактирования будет иметь базовые диффузные и зеркальные шейдеры с различными вариантами отображения сетки.
А, например, для режима ретопологии больше подойдет простое отображение сетки с объемной прозрачностью.
Чтобы настроить материалы или прорисовку текстур, пользователям может потребоваться полное окончательное изображение или версия без шейдеров для детальной настройки.
Отладка (логика, фитинги и т.д.)
Режим отладки предназначен для визуального отображения проблемных областей пользователя в сцене.Например, расчет зависимостей или количества полигонов, или еще каких-то параметров для разработчиков.
Легкое переключение с одного на другое, простая настройка или программирование.
Используя систему документооборота, пользователь должен видеть их максимально предсказуемо.
Каждый рабочий поток может иметь настройки для используемых им шейдеров, но этим шейдерам нельзя позволять слишком сильно изменяться.
Интерфейс узла позволит вам запрашивать данные из блендера и записывать их в свои шейдеры, чтобы представить данные так, как хочет пользователь.
Улучшение! Пользователи хотят лучшего, более реалистичного
Учитывая возможности, которые предлагают современные шейдеры, мы стремимся добавить в блендер еще один рендерер, использующий OpenGL (после Internal и Cycles), который мог бы использовать все возможности современных графических процессоров, и, учитывая тот факт, что он будет работать в реальном времени, это может быть альтернатива существующим рендерам.Многие компоненты уже есть, но мы можем пойти еще дальше, оптимизировав реализацию шейдеров, особенно для рендеринга в реальном времени, вместо того, чтобы пытаться имитировать существующие рендереры.
Нам нужно быть уверенными, что материалы будут выглядеть достойно, поэтому мы изучаем современные методы рендеринга, такие как физически обоснованное затенение (почти включен патч от Клемана Фуко, использующий данные из Unreal Engine 4) и отложенный рендеринг.
Надо сказать, что это также улучшит предварительный просмотр материалов для Internal и Cycles. Теги: #перевод #Работа с 3D графикой #blender 3d
-
Будущее Струйных Картриджей
19 Oct, 24 -
Linux И Бесплатное Облачное Хранилище
19 Oct, 24