Текстура космос: Attention Required! | Cloudflare
Image Processing изображений из космоса для CG / Хабр
Приветствую! Меня зовут Тим, я CG артист, режиссёр и автор научно-популярного проекта SGR A. В этой статье я хотел бы рассказать как создаю текстуры космических тел как для своих проектов, так и для кино, используя реальные снимки космических аппаратов.
Большое красное пятно сделано симуляцией дыма и частиц на основе оригинального изображения* (C4D+Octane+x-particles)
Сразу хочу предупредить что статья не является рекламой. Я лишь хочу поделиться результатами своей работы.
Некоторое время назад я увлёкся обработкой изображений с различных космических аппаратов. Довольно занятная штука. Всё началось с того что мне понадобились текстуры планет в очень высоком разрешении. Но их почти нигде не оказалось. И тогда я решил сделать свой собственный сборник текстур Солнечной Системы в 16к. Это оказалось совсем не так просто, как кажется…
Дело в том что нельзя просто скачать обработанные картинки с сайта НАСА и использовать их в своих целях, особенно если речь идёт о коммерческом использовании. Потому что каждый обработанный исходник изображения из космоса имеет авторские права человека, который совершил эту обработку. Прошерстив кучу официальных и неофициальных форумов по этой теме, я понял что самым активным и уважаемым в этом деле считается некий Bjorn Jonsson.
Предположительно он работает в НАСА и ему принадлежит большинство обработанных изображений и составленных карт различных планет и спутников. Именно поэтому мной было принято волевое решение делать практически всё с нуля и использовать сырые исходники, на которые никакие авторские права не распространяются (т.к. изображения сделаны в космосе).
Планеты пришлось собирать буквально по кусочкам, используя изображения на подобии таких:
Кусок поверхности Европы
Изображения с разных космических аппаратов в основном очень низкого качества и чёрно-белые. В идеале должно быть три чб снимка одной области для красного, зелёного и синего каналов, но к сожалению их очень непросто найти и над цветом приходится работать отдельно.
Поиск изображений на сайте OPUS выглядит примерно так:
🙂
Проблему с низким качеством изображений мне помогают решать нейросети. В частности используется софт от Topaz Labs. Каждый исходник чистится от шума, апскейлится в несколько раз и приобретает резкость с помощью трёх разных нейросетей и фотошопа.
Ниже представлен процесс на примере одного изображения части поверхности Ио:
Поверхность Ио до обработки нейронными сетями (800х800)
Поверхность Ио после обработки нейронными сетями (4800х4800)
На основе обработанного изображения создаются каналы Color, Roughness, Normal и Displacement
Финальный результат (C4D+Octane)
Но это только часть космического тела. А нам нужны полноценные текстуры. Поэтому после обработки исходников нейронками, мы начинаем их склеивать в мозаику…
Тут возникает один болезненный момент — полюса планет. Так как для текстуры на шар нам требуется сферическая проекция, то создание полюсов приходится совершать в несколько этапов.
Первым этапом склеиваем полюса во фронтальной проекции с альфа-каналом:
Один из полюсов Юпитера
Далее переходим в 3д редактор и натягиваем их на сферу:
Создаём сферическую камеру и рендерим картинку 360 с пропорциями 2 к 1:
Теперь остаётся только совместить изображения центральной области и полюсов:
Финальный результат текстуры Юпитера
После завершения создания основной карты Color, приступаем к созданию каналов Normal, Roughness, Specular и Displacement.
В этом нам помогает Photoshop. На выходе получаем пять таких вот текстур:
По порядку: Color, Normal, Roughness, Specular и Displacement
Таким образом я сделал коллекцию семи планет Солнечной системы, одного Плутона и шести различных лун в 16к.
Теперь нам остаётся только создать шейдер нашей планеты в любом 3д редакторе и наслаждаться красотой космоса. Тут уже всё зависит от вашего воображения:
Юпитер (C4D+Octane)
Ио (C4D+Octane)
Так-же производились тесты в Unreal Engine 4, предварительно уменьшив размер текстур до 8к. Результат очень порадовал:
Один из примеров использования текстур созданных таким способом можно увидеть в моём короткометражном фильме о космических путешествиях или в тестовом шоте с пролётом мимо Европы
P.S. На самом деле нюансов в разы больше. Например Displacement map, в идеале должна быть 32 битной EXR. Недавно я придумал способ создавать такие карты. Но об этом напишу если только эта тема в принципе кому-то зайдёт.
Спасибо за внимание! Надеюсь что было интересно.
Читать «Ткань космоса: Пространство, время и текстура реальности» — Грин Брайан — Страница 1
Брайан Грин
Ткань космоса. Пространство, время и текстура реальности
Предисловие
Пространство и время будоражат воображение учёных как никакие другие идеи в науке. Причина понятна. Они образуют арену реальности, формируют самую ткань космоса. Само наше существование — всё, что мы делаем, думаем и чувствуем — происходит в некоторой области пространства и в течение некоторого интервала времени. Однако наука до сих пор пытается понять, что на самом деле представляют собой пространство и время. Являются ли они реальными физическими сущностями или лишь полезными идеями? Если они реальны, то фундаментальны ли они или же возникают из более первичных конституэнтов? Что означает для пространства быть пустым? Есть ли начало у времени? Есть ли у времени стрела, неумолимо направленная из прошлого в будущее, как подсказывает повседневный опыт? Можем ли мы влиять на пространство и время? В этой книге мы проследим трёхсотлетние попытки пылкой научной мысли дать ответы (или намёки на ответы) на эти фундаментальные и глубокие вопросы о природе мироздания.
В нашем путешествии мы неоднократно столкнёмся и с другим вопросом, одновременно и всеобъемлющим, и ускользающим: что есть реальность? Мы, человеческие существа, имеем доступ только к нашему внутреннему опыту ощущений и мысли, поэтому как мы можем быть уверены, что они истинно отражают внешний мир? Философы уже давно осознали эту проблему. Режиссёры популяризуют эту тему с помощью сюжетов, наполненных вымышленными мирами, порождёнными изысканными нейрологическими симуляциями, которые существуют только в умах их героев. А физики, к которым отношусь и я, остро чувствуют, что видимая реальность — материя, эволюционирующая на фоне пространства и времени, — может оказаться совсем непохожей на ту, другую реальность, лежащую за пределами видимого (если она существует). Однако, поскольку наблюдения — это всё, что у нас есть, мы принимаем их всерьёз. Вместо неограниченного воображения или необузданного скептицизма мы выбираем в качестве проводника надёжные данные и математику и ищем наиболее простые, однако самые многообещающие теории, способные объяснить и предсказать результаты современных и будущих экспериментов. Это сильно ограничивает искомые теории. (Например, в этой книге вы не найдёте и намёков на то, что я плаваю в баке с водой, подключённый проводами к тысяче мозговых стимуляторов, которые заставляют меня просто
Многие из исследуемых вопросов суть те же самые, что на протяжении веков являлись в разных ипостасях и заставляли напрягаться умы Аристотеля, Галилея, Ньютона, Эйнштейна и многих других. И поскольку в этой книге мы описываем науку в становлении, мы прослеживаем эти вопросы так, как они были поставлены одним поколением, ниспровергнуты их последователями и уточнены и переосмыслены учёными последующих поколений.
Например, при ответе на нетривиальный вопрос — является ли абсолютно пустое пространство, как чистое полотно, реальной сущностью или просто отвлечённой идеей? — мы следуем за маятником научной мысли: Исаак Ньютон в XVII в. утверждал, что пространство реально; потом маятник качнулся вспять, и Эрнст Мах сказал, что нет, не реально; а в XX в. Эйнштейн ошеломляюще переформулировал саму суть вопроса, слив воедино пространство и время, в значительной мере опровергнув Маха. Затем мы следуем за новыми открытиями, которые снова переиначивают вопрос, переопределяя понятие «пустоты», говоря, что пространство неизбежно заполнено так называемыми квантованными полями и, возможно, однородно распределённой энергией, называемой космологической постоянной, — современным отголоском старого и дискредитированного понятия «эфир», который заполняет всё пространство. А затем мы расскажем читателю, как грядущие космические эксперименты могут подтвердить некоторые выводы Маха, которые согласуются с общей теорией относительности Эйнштейна, являя собой захватывающий образец запутанной паутины научного исследования.
В наши дни мы находим обнадёживающие результаты инфляционной космологии относительно понимания стрелы времени; богатый выбор предложений дополнительных измерений в теории струн; поразительное предположение М-теории о том, что наша Вселенная — всего лишь щепка, плавающая в более масштабном космосе; широко обсуждаемую идею о том, что наблюдаемая нами Вселенная может оказаться лишь голограммой. Мы пока не знаем, справедливы ли наши последние научные теории. Но как бы дико они не звучали, мы относимся к ним серьёзно, ибо именно сюда нас привёл непрерывный и непреклонный поиск глубинных законов природы. Непонятная и необычная реальность ждёт нас не только на изобильной стезе научной фантастики. Она рождается на острие современных открытий физической науки.
Книга «Ткань космоса» предназначена в основном для широкого круга читателей, не имеющих особой научной подготовки, но обладающих стремлением понять устройство мироздания, что поможет им преодолеть трудности на пути понимания сложных и нетривиальных концепций. Как и в моей первой книге «Элегантная Вселенная», я старался придерживаться сути научных идей, опуская математические описания и заменяя их метафорами, аналогиями, рассказами и иллюстрациями. Когда мы подходим к самым сложным разделам, я предупреждаю об этом читателя и предлагаю короткую аннотацию для тех, кто решит только пролистать эти сложные места или вообще их опустить.
Студенты, просто любители науки, учителя и учёные-профессионалы также почерпнут много интересного из этой книги. Хотя в начальных главах обсуждаются необходимые, но стандартные основополагающие вопросы из теории относительности и квантовой механики, довольно необычным будет акцент на реальности понятий пространства и времени. В следующих главах речь идёт о разном — теореме Белла, экспериментах с задержанным выбором, квантовых измерениях, ускоренном расширении Вселенной, возможности получения чёрных дыр на ускорителях следующего поколения, создании удивительной машины времени, основанной на идее кротовых нор. Это лишь некоторые из обсуждаемых идей, которые познакомят читателя с самыми захватывающими и обсуждаемыми сейчас научными достижениями.
Некоторая часть излагаемого материала является спорной. Если идея ещё висит в воздухе и по поводу неё нет общепринятого мнения, я излагаю в основном тексте взгляды, считающиеся доминирующими в научном мире. По спорным вопросам в приложения вынесены различные точки зрения, для которых, как мне кажется, консенсус достигается в наибольшей степени. Некоторые учёные, особенно те, идеи которых разделяет меньшинство, будут возражать против моих суждений, но я старался нарисовать сбалансированную картину. В приложениях особо усердный читатель найдёт более полные объяснения и предостережения относительно вопросов, которые я упростил, а также (для желающих) краткие математические дополнения к бесформульному описанию в основном тексте. Краткий глоссарий даёт пояснение к некоторым специальным научным терминам.
Даже книга такого объёма не может охватить столь фундаментальные и всеобъемлющие понятия, как пространство и время. Я сосредоточил внимание на тех идеях, которые являются одновременно и увлекательными, и важными для формирования полной картины реальности, создаваемой современной наукой. Конечно, выбор материала отражает мои личные вкусы, и я приношу извинения тем, кто считает, что их личный вклад или область их интересов не нашли должного отражения в книге.
Майнкрафт посетят космос и динозавры
Крупное обновление 1.2 — далеко не единственное, что ожидало игроков мобильного и консольного Майнкрафта. На днях в Marketplace произошло самое крупное обновление с момента его запуска — добавили пять новых авторских карт, один текстур-пак и семнадцать скин-паков.
Ниже подборка самых интересных вещей, которые пришли с апдейтом.
— Космическая карта Abstraction: SOLAR
Исследуйте просторы Солнечной системы, сражайтесь с монстрами и устремляйтесь вглубь планет! Кто знает, что вы там сможете найти… или построить?
— Карта Halfling Burrows
Начните ваше приключенческое выживание в руинах таинственной забытой расы. Исследуйте их архитектуру и культуру, прогуляйтесь по их необычным, тщательно проработанным домам.
— Карта с большим городом Sunset Coast
Располагайтесь как дома в этом захватывающем приморском городе. Поселитесь в красивой вилле среди сельской местности или же выберите большой дом в самом центре порта. Игроков ждут сокровища и неожиданные открытия.
— Карта Академия Sunnyside
Поезжайте в этот маленький уютный городок! Выполняйте задания, постройте свой собственный дом и помогите расширить город. Живите самостоятельно или пригласите своих друзей присоединиться к вам в этом красочном месте.
— Карта для выживания с динозаврами
youtube.com/embed/xvrGhY2hQ6I?feature=oembed» frameborder=»0″ gesture=»media» allow=»encrypted-media» allowfullscreen=»»/>
Попытайтесь не стать обедом тиранозавра в приключенческой карте на выживание! Избегайте кровожадных рептилий, скрываясь и натыкаясь на таинственные секреты в ацтекских руинах.
Все эти карты можно скачать в Marketplace. За их скачивание может взиматься плата — в зависимости от автора, который мог назначить цену на свой продукт. Конечно, поиграть в них вы можете и со своими друзьями — так намного интереснее, чем ходить по огромным локациям в одиночку.
А если вы хотите приобрести что-то более реальное, но всё ещё связанное с Майнкрафтом, вам следует оценить тематические товары на нашем сайте в специальном разделе. На многое сейчас действует скидка, так что вам следует поторопиться!
UVs и текстурное пространство — Руководство Blender
УФ-карты
Панель UV Maps на вкладке Mesh.
На вкладке «Сетка» панель UV-карт содержит вид списка. в котором перечислены UV-карты, созданные для этой сетки. Выбранная карта отображается в редакторе UV.
- Активный рендер
Щелкните значок камеры, чтобы включить эту УФ-текстуру для рендеринга. Если никакая другая карта не указана явно.
- Добавить
+
Нажатие кнопки Добавить дублирует выбранную UV-карту.
См. Также
Обратите внимание, что каждая текстура может быть сопоставлена с определенной компоновкой UV.
Текстура Пространство
Номер ссылки
- Режим
Все режимы
- Панель
Это настройки пространства текстуры, используемого сгенерированным наложением текстуры. Визуализацию текстурного пространства можно активировать в окне просмотра.
- Автоматическое пространство текстуры
Автоматически настраивает пространство текстуры активного объекта при преобразовании объекта.
- Расположение, размер
Если пространство текстуры не рассчитывается автоматически, вы можете определить расположение и размер текстурного пространства относительно базового объекта. Их также можно настроить в окне 3D-просмотра, см. Раздел «Редактирование» для получения дополнительной информации.
- Текстурная сетка
Используйте другую сетку для индексов текстуры, вершины двух объектов должны быть идеально выровнены. В противном случае UV-карта будет искажена.Обратите внимание, что это только для сетчатых объектов.
- Match Texture Space
Изменяет Location и Size для соответствия ограничивающей рамке объектов. Это отключает Auto Texture Space. Обратите внимание, что это только для объектов кривых.
Монтаж
Номер ссылки
- Режим
Режим объекта и режим редактирования
- Меню
Чтобы изменить пространство текстуры из 3D Viewport, включите Редактируйте пространство текстуры при преобразовании объекта.
Доступ
К автоматически рассчитанной UV-карте можно получить доступ из материала объекта через Сгенерированный выход узла координат текстуры. Затем эти выходные данные можно использовать для наложения любой текстуры на объект.
Подсказка
Сгенерированные текстурные пространства не поддерживают вращение, чтобы избежать этого, Узел отображения можно использовать для поворота UV-карты.
Рендеринг> Текстуры> Пространства текстур
Текстурные пространства используются для определения того, как текстура должна отображаться или проецироваться на определенную поверхность.Поддерживаются различные типы плоских, цилиндрических, сферических и ультрафиолетовых сопоставлений меток, которые назначаются с помощью шейдера текстурного пространства в диспетчере затенения.
В зависимости от типа применяемого текстурного пространства различные маркеры и параметры отображаются в видах моделирования и на панели инструментов моделирования, когда применяется инструмент «Позиционирование текстуры». Поверхность проецирования отображается зеленым цветом, а ручки отображаются как голубые горячие точки. Ручки можно выбрать и их можно перемещать для изменения положения, поворота и масштабирования пространства текстуры.
1. В видах моделирования выберите объект, к которому следует применить пространство текстуры. 2. Нажмите CTRL + 3, чтобы открыть диспетчер затенения, или выберите команду меню «Менеджеры»> «Затенение». 3. На вкладке «Поверхность» щелкните правой кнопкой мыши «Пространство текстуры» и выберите из списка тип пространства текстуры. 4. Настройте параметры по желанию. 5. Нажмите «Применить» и закройте «Диспетчер затенения». |
Примечание. Можно изменить шейдеры наложения текстуры более чем одного объекта одновременно.Редактируемые шейдеры наложения текстуры присутствуют в материале последнего выбранного объекта.
Опции
автоматическая ось
Плоское отображение с автоматическим выбором одной из трех глобальных осей координат. Пространство текстуры можно масштабировать во всех трех направлениях.
местная автоматическая ось
Плоское отображение с автоматическим выбором одной из трех локальных осей координат.Пространство текстуры можно масштабировать во всех трех направлениях.
x плоскость
Плоское отображение с постоянным x. Пространство текстуры можно масштабировать по оси y и z.
у самолет
Плоское отображение с постоянной y. Пространство текстуры можно масштабировать в направлениях x и z.
z плоскость
Плоское отображение с постоянной z. Пространство текстуры можно масштабировать по осям x и y.
произвольная плоскость
Планарное отображение, позволяющее задать ориентацию плоскости. Пространство текстуры можно перемещать, вращать и масштабировать в любом направлении.
самолет
Планарное отображение, которое автоматически назначает координаты, чтобы обернутые шейдеры отображались по нормальным векторам поверхностей.
сферический
Аналогично планарному картированию, но поверхность проецирования, показанная зеленым цветом, представляет собой сферу, а не плоскость.Пространство текстуры можно перемещать, вращать и масштабировать в любом направлении.
цилиндрический
Аналогично планарному картированию, но поверхность проецирования, показанная зеленым цветом, представляет собой цилиндр, а не плоскость. Пространство текстуры можно перемещать, вращать и масштабировать в любом направлении.
УФ этикетка
Текстура выровнена по изопарам и может перемещаться, вращаться и масштабироваться в направлениях U и V. Если текущий объект состоит из более чем одной поверхности, текстура отображается на всех поверхностях в одной позиции UV.Обратите внимание, что отображение UV не поддерживается для полигональных объектов.
макет
Позволяет масштабировать, вращать и переводить координаты текстуры.
См. Также:
● Текстуры
● Инструмент позиционирования текстуры
● Этикетки
Turing Texture Space Shading | Блог разработчиков NVIDIA
Графические процессорыTuring представляют новую возможность затенения, называемую Затенение пространства текстуры (TSS), где значения затенения динамически вычисляются и сохраняются в текстуре как тексели в пространстве текстуры.Позже пиксели отображаются на текстуру, где пиксели в пространстве экрана отображаются в пространство текстуры, а соответствующие тексели выбираются и фильтруются с использованием стандартной операции поиска текстуры. С помощью этой технологии мы можем создавать образцы видимости и внешнего вида с полностью независимыми скоростями и в отдельных (разделенных) системах координат. Используя TSS, разработчик может одновременно улучшить качество и производительность за счет (повторного) использования вычислений затенения, выполняемых в изолированном пространстве затенения.
Разработчики могут использовать TSS для использования избыточности как пространственного, так и временного рендеринга.Разъединяя затенение от пиксельной сетки экранного пространства, TSS может достичь высокого уровня стабильности от кадра к кадру, поскольку точки затенения не перемещаются между одним кадром и другим. Эта временная стабильность важна для таких приложений, как VR, которые требуют значительно улучшенного качества изображения, без артефактов наложения спектров и временного мерцания.
TSS обладает внутренней гибкостью в нескольких разрешениях, унаследованной от иерархии карт MIP-карт наложения текстуры или пирамиды изображений. При затенении пикселя разработчик может настроить отображение в пространстве текстуры, выбрав уровень MIP (уровень детализации), и, следовательно, осуществлять точный контроль над скоростью затенения.Поскольку тексели на низких уровнях детализации больше, они покрывают большие части объекта и, возможно, несколько пикселей.
TSS запоминает, какие тексели были закрашены, и закрашивает только те, которые были недавно запрошены. Заштрихованные и записанные тексели можно повторно использовать для обслуживания других запросов оттенков в том же кадре, в соседней сцене или в следующем кадре. Контролируя скорость затенения и повторно используя ранее закрашенные тексели, разработчик может управлять временем рендеринга кадра и оставаться в рамках фиксированного бюджета времени таких приложений, как VR и AR.Разработчики могут использовать те же механизмы для снижения скорости затенения для явлений, которые, как известно, имеют низкую частоту, таких как туман. Полезность запоминания результатов затенения распространяется на вершинные и вычислительные шейдеры, а также на общие вычисления. Инфраструктуру TSS можно использовать для запоминания и повторного использования результатов любых сложных вычислений.
Механика TSS
На рисунке 1 показан традиционный процесс растеризации и закраски. 3D-сцена растрируется и преобразуется в пиксели в пространстве экрана.Пиксели проверяются на видимость, затемняются на внешний вид и проверяются на глубину. Все операции выполняются в одной и той же пиксельной сетке экранного пространства, в одном и том же пикселе.
3D-сцена растрируется и преобразуется в пиксели в пространстве экрана, а видимые пиксели определяются и закрашиваются.Две основные операции выборки видимости (растеризация и z-тестирование) и выборки внешнего вида (затенение) могут быть разделены с помощью TSS и выполняться с другой частотой, на другой сетке выборки или даже на другой временной шкале.Процесс затенения больше не привязан напрямую к пикселям экранного пространства, а происходит в пространстве текстуры. На рис. 2 , геометрия все еще растеризована для получения пикселей экранного пространства, и проверка видимости по-прежнему проводится в экранном пространстве. Однако вместо затенения в экранном пространстве обнаруживаются тексели, которые требуются для покрытия выходного пикселя.
Рис. 2. Процесс затенения текстурного пространстваДругими словами, отпечаток пикселя экранного пространства отображается в отдельное пространство текстуры и затеняет связанные тексели в пространстве текстуры.Сопоставление с пространством текстуры — это стандартная операция наложения текстуры с тем же контролем над уровнем детализации и такими вещами, как анизотропная фильтрация. Чтобы получить окончательные пиксели экранного пространства, мы делаем выборку из закрашенной текстуры. Текстура создается по запросу на основе образцов запросов, генерируя значения только для тех текселей, на которые есть ссылки.
Одним из примеров использования TSS является повышение эффективности визуализации виртуальной реальности. На рис. 3 показан пример использования TSS при визуализации VR. В VR визуализируется стереопара изображений, при этом почти все элементы, видимые левым глазом, также отображаются в виде правого глаза. С помощью TSS мы можем затенять полный вид для левого глаза, а затем визуализировать вид для правого глаза, используя выборку из завершенного вида для левого глаза. Вид правого глаза должен затенять новые тексели только в том случае, если не был найден действительный образец (например, фоновый объект, который был скрыт от обзора с точки зрения левого глаза, но виден правым глазом).
Рис. 3. Затенение текстурного пространства сводит к минимуму необходимость дублирования затенения текстуры в двух почти идентичных кадрах, таких как те, которые обычно встречаются в стереоизображениях.Как уже упоминалось, с помощью TSS можно динамически и непрерывно управлять скоростью затенения на пиксель, регулируя уровень детализации текстуры. Варьируя LOD, мы можем выбирать различные уровни текстуры MIP по мере необходимости, чтобы уменьшить количество затененных текселей. Обратите внимание, что это означает, что подход TSS к сэмплированию также может использоваться для реализации многих из тех же методов уменьшения скорости затенения, которые поддерживаются функцией затенения с переменной скоростью (VRS) Тьюринга. (Подробнее о VRS мы расскажем позже). Какой метод лучше всего подходит для разработчика, зависит от его целей.VRS — это более легкое изменение конвейера рендеринга, тогда как TSS имеет большую гибкость и поддерживает дополнительные варианты использования.
Узнать больше
Графический процессор Turing представляет собой самый продвинутый графический процессор на планете и предлагает множество новых функций графики, вычислений и искусственного интеллекта. Вы можете узнать больше о новейшем графическом процессоре NVIDIA Turing в сообщении об архитектуре Turing . Сеточные шейдеры представляют собой еще один пример передовой технологии шейдеров Тьюринга, представленной здесь , .Вы можете узнать больше о трассировке лучей RTX и DirectX 12 в в этом посте . Это сообщение в блоге является выдержкой из Белой книги по архитектуре Тьюринга. Загрузите полную версию, если вы хотите получить более подробную информацию о графическом процессоре Turing и его наборе функций.
Вы также можете просмотреть подробное видео о затенении текстурного пространства, представленное на конференции SIGGRAPH 2018 Андре Татариновым и Рахулом Сате, ниже.
элементов искусства и дизайна — линии, форма, пространство, значение, цвет и текстура — graf1x.com
Понимание элементов искусства или дизайна может дать вам хорошее представление о том, что нужно для создания работы, которая может оказать влияние на зрителя или просто передать сообщение.
ГОРИЗОНТАЛЬНЫЕ, ВЕРТИКАЛЬНЫЕ И ДИАГОНАЛЬНЫЕ ЛИНИИ
Линия может влиять на то, как взгляд зрителя перемещается по произведению искусства. Длинные, короткие, толстые, тонкие, прямые, изогнутые; Линия привлекает внимание и в конечном итоге указывает зрителю, куда смотреть. Линия обладает способностью создавать движение, побуждая зрителя выбирать определенный «маршрут», когда они просматривают дизайн.Линия также может вызывать чувство, например; сильные черные вертикальные линии могут дать ощущение стабильности и структуры, в то время как волнистые изогнутые линии могут казаться безмятежными и успокаивающими.
ОРГАНИЧЕСКИЕ И ГЕОМЕТРИЧЕСКИЕ ФОРМЫ
В частности, есть два типа форм, которые описаны в визуальном дизайне. Это геометрические формы и органические формы. Органические формы обычно изображают природу, а формы, вдохновленные природной средой. Органические формы используются в искусстве и дизайне, чтобы вызвать недозволенные, свободные и энергичные чувства.Геометрические формы более фиксированные и жесткие и часто используются для представления созданной человеком окружающей среды, такой как небоскребы и дороги. Геометрические формы могут способствовать созданию ощущения устойчивости и структуры бетона.
ПРОСТРАНСТВО, ГЛУБИНА И ПЕРСПЕКТИВА
Пространство относится к тому, что происходит в дизайне вокруг ранее упомянутых форм и линий. Пространство можно использовать для создания размера, глубины и перспективы.
ЗНАЧЕНИЕ ЦВЕТА
Значение — это элемент цвета, который описывает оттенок и оттенок пигмента.Цвета, которые были осветлены белым, называются оттенками, тогда как цвета, которые были затемнены черным пигментом, называются оттенками. Дизайны, в которых используются только оттенки и оттенки одного цвета во всем произведении искусства, называются монохромными. Изменение ценности в произведении искусства также создаст контраст для зрителя.
ЦВЕТ
Определенные цвета обычно связаны с определенными настроениями и чувствами (пожалуйста, прочтите «Значение цветов»). То, как дизайнер или художник использует цвет, повлияет на темперамент дизайна и потенциально может повлиять на чувства зрителя.Независимо от того, теплый ли цвет, холодный или нейтральный, может способствовать формированию различных настроений и повлиять на пространство, в котором он отображается. Цвет является важным компонентом, особенно когда он используется в маркетинге и дизайне продукции. Первичные, вторичные и третичные цвета, комбинируемые по-разному, создают визуальное воздействие и нацелены на увлечение целевой аудитории. Вы можете узнать больше о теории цвета на странице Цветовое колесо.
ТЕКСТУРА
Текстура относится к физическим ощущениям от произведения искусства.Текстура может быть достигнута с помощью используемой среды (типы красок, таких как масло, акрил или пастель), а также поверхности, на которую она наносится, будь то холст, бумага, ткань или дерево. Важно помнить, что текстуру можно создавать в материальном, физическом смысле; то есть произведение искусства буквально кажется шершавым или неровным при прикосновении. Текстура также может быть иллюзией, создавая впечатление текстуры, когда на самом деле поверхность гладкая.
Texel Space Shading | Графин
Графин 12 ноября 2018
Nvidia говорила о поддержке Texel Space Shading в своем графическом процессоре Turing.На расстоянии эта техника чем-то напоминает процедурное виртуальное текстурирование, хотя обе техники существенно отличаются. Возможно, вы не слышали о процедурной VT, поэтому в этом блоге мы сравним старые и новые и обсудим, как их можно применить для оптимизации производительности графического процессора и увеличения частоты кадров. Вы можете пропустить раздел о процедурной VT, если вас интересует только Texel Space Shading.
Процедурное виртуальное текстурирование
Этот метод основан на виртуальном текстурировании.Вы можете прочитать об этом здесь. Короче говоря, система виртуального текстурирования будет разделять MIP-карты текстур на небольшие фрагменты текстуры (например, 128×128 пикселей) и загружать в видеопамять только эти фрагменты (= подобласти MIP-карт), когда эти фрагменты фактически видны. Тайлы загружаются не в обычные текстуры, а в текстуру кэша, которая содержит коллекцию тайлов из множества различных текстурных ресурсов. Проверка видимости выполняется в экранном пространстве. VT поддерживает разрешение текстур до 256.000 x 256 000 пикселей. Он также требует гораздо меньше видеопамяти и обеспечивает большую свободу творчества, чем система потоковой передачи карт MIP. Некоторые функции обеспечиваются аппаратным обеспечением графического процессора для ускорения выборки VT под именами Частично резидентные текстуры (OpenGL®) или мозаичные ресурсы (DirectX 11.2).
Система процедурного виртуального текстурирования (PVT) использует тот же кеш текстуры тайлов в памяти графического процессора, но генерирует тайлы текстуры на лету вместо загрузки тайлов с диска. Он использовался в основном в шейдерах ландшафта, которые смешивают (наносят) множество материалов с использованием некоторой формы маски материала. Обычно вы выполняете шейдер ландшафта для каждого пикселя во время прямого или отложенного прохода рендеринга, для каждого кадра. Система PVT будет вычислять шейдер неосвещенного ландшафта (смешивание материалов) для каждого фрагмента текстуры и сохранять этот фрагмент в кэше VT. Кэш содержит все каналы, которые необходимы во время фактического прохода рендеринга (диффузный, нормальный, шероховатый и т. Д.). Плитка будет повторно использована во многих кадрах, и поэтому стоимость этих расчетов ландшафта амортизируется по многим кадрам. Во время прямого или отложенного прохода вы выполняете образец текстуры VT вместо генерации текселей ландшафта.
Вы также можете использовать «классическую» систему VT, запекая всю местность в огромную текстуру, но это быстро приводит к большим файлам на диске. Процедурная виртуальная реальность требует затрат времени выполнения, поэтому по-прежнему требуется некоторое ограничение на сложность шейдера ландшафта. Кроме того, для экономии видеопамяти тайл обычно кодируется в формат текстуры DXT / BC GPU, что увеличивает время генерации тайла.
Battlefield 3, вероятно, одна из первых игр, в которых используется процедурная VT. Вы можете найти презентацию GDC здесь.Far Cry 4 использовал метод адаптивной виртуальной текстуры, который позволяет добиться еще более высоких разрешений VT за счет динамического снижения занимаемого пространства VT для удаленных областей мира. Приложение с привязкой к графическому процессору может генерировать плитки текстуры на CPU, хотя создание на стороне графического процессора является очевидным подходом. Бюджет генерации плитки можно легко настроить и, следовательно, полностью предсказуем. Ограничение этого бюджета увеличивает количество кадров, которые будут отображать определенные пиксели экрана с менее подробными (более высокими MIP) данными текстуры (до тех пор, пока не будут сгенерированы плитки).
Тексельское космическое затенение
Прямой рендерер преобразует геометрию в пиксели экрана, выполнит пиксельный шейдер для каждого из этих пикселей и отправит затененные пиксели в буфер кадра. Во время выполнения шейдера обычно отбирается несколько текстур, которые используются в качестве входных данных для уравнения освещения. При использовании Texel Space Shading (TSS) рендеринг не будет затеняться после растеризации, а будет записывать только те тексели, к которым осуществляется доступ. Отдельный проход будет вычислять и сохранять значения затенения в виде текселей в пространстве текстуры.Для визуализации финального кадра геометрия визуализируется с использованием простого шейдера, который выбирает закрашенный тексель для каждого пикселя экрана с помощью единственного поиска текстуры. При использовании этого подхода видимость выборки (растеризация и z-тестирование) и расчет выборки (затенение) разделены и могут выполняться с полностью независимыми скоростями. Вы можете найти короткую статью Eurographics от 2016 года здесь с обзором всей техники. Вот также сообщение в блоге о реализации DirectX11.
Шаги растеризации и рендеринга Texture Space Shading (TSS), изображение из блогов разработчиков.nvidia.comNvidia объявила о поддержке TSS для своего нового графического процессора Turing. Они подробно рассказывают в своем блоге разработчиков. Вы можете найти их презентацию на Siggraph ниже. TSS имеет три основных этапа в конвейере: сначала идентифицируйте тексели для затенения, затем затеняйте эти тексели и, наконец, примените эти тексели к изображению. Использование фильтрации текстур (трилинейной, анизотропной и т. Д.) Определяет, какие тексели действительно нужно затенять, и оборудование выборки текстуры уже идентифицирует их как часть процедуры выборки.У Тьюринга есть новая аппаратная функция, которая возвращает список текселей, затронутых функцией выборки текстуры. Они называют это следом текстуры. Это устраняет шейдерные вычисления, необходимые для ручного вычисления посадочного места, и упрощает реализацию этого метода. Отпечаток текстуры возвращается как битовая маска: 64 бита, которые преобразуются в 8×8 для 2D-текстур и 4x4x4 для 3D-текстур.
Концепция битовой поверхности состояния вводится для хранения списка уникальных текселей, которые необходимо закрасить.Отпечаток текстуры из каждого образца текстуры используется для обновления этой битовой поверхности состояния. Поверхность статусного бита разделена на сетку из 64-битных ячеек. Выборка текстуры вернет 64-битный отпечаток текстуры, который отображается на одну из этих ячеек. Другими словами, посадочное место выравнивается по этой сетке, поэтому очень эффективно обновлять битовую поверхность состояния. Чтобы предотвратить коллизии с атомарными операциями, Nvidia представила новые общесистемные операции, которые смешивают результаты следа, поэтому только один поток должен выполнять атомарную операцию.
Фактическое затенение текселей выполняется в вычислительном шейдере. Поскольку мы не можем использовать функцию Texture.Sample, поскольку производные не известны в вычислительном шейдере, Nvidia представила compute_shader_derivatives. Это позволяет нам обрабатывать четыре последовательных потока как четырехугольник пикселей и вычислять производные для блока пикселей 2×2. Вся эта добавленная функциональность в картах Nvidia Turing должна позволить нам эффективно реализовывать затенение текстурного пространства в нашем рендерере. Дополнительную информацию о новых функциях и расширениях для Vulkan и OpenGL можно найти здесь.
Вывод
Процедурная VT и TSS являются методами оптимизации производительности: за счет кэширования результатов и отделения работы от основного прохода рендеринга уменьшается выполнение шейдера.
Procedural VT в основном используется для кэширования сложных шейдеров ландшафта, которые смешивают множество сложных материалов. Кэш содержит плитки текстуры с типичным размером 256×256 текселей и включает все каналы материалов (диффузный, нормальный и т. Д.). Плитки обычно хранятся в кэше на 100 или 1000 кадров и не содержат информации об освещении.
Затенение текстурного пространства — это новый метод, который кэширует фактические результаты затенения объекта (образцы цвета подсветки) для любого объекта в сцене. Основным вариантом использования TSS, по-видимому, является оптимизация производительности для стерео-рендеринга, поскольку большинство кэшированных текселей могут совместно использоваться обоими глазами каждый кадр. TSS также предлагает больше элементов управления, чтобы жертвовать качеством за счет снижения скорости затенения или повторного использования затененных текстур в нескольких кадрах для обеспечения стабильной частоты кадров. Затененные тексели используются для одного или нескольких кадров, потому что они также содержат информацию об освещении, которая быстро устаревает.Наконец, новые инструкции Тьюринга также позволяют оптимизировать другие методы, подобные TSS, такие как подповерхностное рассеяние с использованием диффузии текстурного пространства.
Этот пост дает хороший обзор технических плюсов и минусов TSS. Однако влияние на использование памяти не сразу ясно и может быть довольно высоким. Для каждого объекта необходимо сохранить результирующую текстуру (закрашенные тексели), текстуру индекса треугольника и поверхность битов состояния. Потенциальное решение состоит в том, чтобы хранить в памяти только разреженное представление, а не выделять всю текстуру результата.Требуются только фактически закрашенные тексели. Если это будет непрактично, решением также может быть освобождение памяти путем применения системы виртуального текстурирования для текстур вашего материала.
Сгенерированное отображение и текстурное пространство :: Blender Mama
В двух словах: используйте Shift + T, G, S и ограничения оси для перемещения и масштабирования пространства текстуры и размещения мозаичной текстуры с помощью Generated Mapping. Найдите точные настройки текстурного пространства на панели данных объекта.
Длинная версия: сгенерированное отображение звучит немного просто, но просто красиво и, самое главное, полезно.
Это режим наложения Blender по умолчанию, поэтому, если вы добавляете текстуру к объекту, вы обнаружите, что она уже установлена на панели сопоставления, просто измените его на «куб», если ваш объект больше пола и имеет любую вертикальную поверхности.
Сгенерированное отображение проецирует текстуру на объект из прямоугольной рамки в трехмерном пространстве, поэтому для создания сгенерированного сопоставления можно использовать любую архитектурную часть здания, имеющую стандартную ортогональную форму, или даже некоторые небольшие неортогональные грани, если карта не получить очень заметные искажения при проецировании под углом.Например, некоторые текстуры древесины могут немного растягиваться, не выглядя неправильно.
Небольшой дом, облицованный деревом, над которым я работаю сейчас, представляет собой довольно стандартный образец архитектурного объекта на карте. Я хочу использовать текстуру деревянного сайдинга от cgtextures. Я просто немного отредактировал его, чтобы избавиться от пары видимых контрастных деталей в дереве, которые сделали бы повторение карты очевидным. Я хочу, чтобы дерево красиво совпадало с верхней и нижней частью окон. Я также сделал отдельный объект вокруг больших угловых окон для некоторых световых приемов, которые я хочу попробовать, и я хочу, чтобы эта часть имела тот же масштаб и выравнивание с остальными стенами.
А теперь самое главное — скрытый секрет сгенерированного маппинга в Blender: Texture Space. Это скрытый ящик, назначаемый каждому объекту, размер и положение которого определяет размещение текстуры. Термин «сгенерированный» происходит от того факта, что каждый объект начинается с автоматически сгенерированного пространства текстуры, выровненного по глобальным координатам 3dspace, которое совпадает с ограничивающей рамкой объекта. Чтобы сделать его видимым, вы можете нажать shift + T или установить флажок Texture Space на вкладке Object -> display.Появится рамка с пунктирной линией. Затем можно настроить пространство текстуры в соответствии с вашими потребностями в текстурировании.
Методы обработки поля «Пространство текстуры» могли бы быть лучше. Каким-то образом вы можете почувствовать, что эта часть Blender была немного нелюбимой. Но у вас достаточно контроля над этим, чтобы получить точные результаты. Чтобы перемещать и масштабировать его в интерактивном режиме, нажмите Shift + T, затем G или S. Вы также можете использовать ограничения оси. Чтобы масштабировать его по оси z, выполните следующие действия: Shift + T — S — Z. К сожалению, вы не можете правильно видеть свою текстуру в окне просмотра, кроме как в плоских отображаемых объектах, таких как полы, с опцией отображения SGSL для отображения куба. Придется рендерить, чтобы проверить результаты.Однако я точно знаю, где должна быть моя текстура, поэтому я масштабирую и помещаю ее в каркасный режим, например:
Чтобы отобразить второй объект, я могу масштабировать и перемещать его пространство текстуры, как раньше, до тех пор, пока он не совпадет с пространством текстуры первого объекта. Но, может быть, мне нужно сделать это точнее; например, если два объекта встречаются на краю, будет видно любое небольшое смещение карт. Поэтому для этого я буду использовать настройки на панели «Данные объекта» -> Пространство текстуры (вы не поверите, сколько времени мне потребовалось, чтобы заметить, что эти настройки существуют!) — где вы можете точно настроить размер и положение Коробка пространства текстуры.
Чтобы получить такое же сопоставление, я скопирую / вставлю настройки из одного объекта в другой.
К сожалению, я не нашел прямого способа скопировать все настройки сопоставления с одного объекта на другой, я просто скопировал их один за другим. Чтобы сделать его немного лучше, я открыл текстовое окно сбоку и сначала скопировал все числа из объекта стены, так что, по крайней мере, мне не придется переходить от одного выделения к другому шесть раз. Небольшое дополнение для копирования координат текстурного пространства между объектами было бы хорошей идеей.
Я также попытался выяснить вариант текстурной сетки на этой панели, но не мог понять, как это работает. Установка другой сетки в качестве ввода пространства текстуры в моем тесте выглядела так же, как и автоматическое пространство текстуры. Был бы рад, если бы у кого-нибудь было какое-то представление об этом.
Возвращаясь к теме, эти настройки также можно использовать для масштабирования текстуры в соответствии с точными пропорциями карты или для масштабирования текстуры до реального размера, например, пола, покрытого плитками 30 × 60, без необходимости выполнять другие вычисления. .
Итак, вот результат, вся древесина выровнена как задумано:
Вы можете заметить плитку, если присмотритесь, но я думаю, что это нормально.
Другие моменты по сгенерированному отображению:
Существует только одно пространство текстуры для каждого объекта, поэтому, если вы хотите смешивать текстуры, масштабированные по-разному, вы можете разместить одну с пространством текстуры, а другую, изменив настройки повтора и смещения. Например, вы можете использовать большую карту с некоторой грязью в пространстве автоматической текстуры и использовать повторение на фактической текстуре облицовки.Не пробовал, но я думаю, что вы можете смешивать сгенерированные сопоставленные текстуры с текстурами с УФ-отображением — чтобы получить граффити на кирпичной стене или инстансе.
Есть связанный метод сопоставления, который звучит хорошо — Сопоставление объектов, которое принимает координаты сопоставления другого объекта, поэтому вы можете настроить сопоставление, изменив этот объект. Я очень старался использовать его, прежде чем обнаружил, что такое пространство текстуры, но я получил действительно ошибочные результаты, например, один рендер хорошо показал текстуру, а более поздний рендер на той же сцене показал, что текстура сошла с ума.Понятия не имею, пропустил ли я что-то, или это известная проблема, или она будет исправлена, поскольку я не нашел другой ссылки на нее в сообществе Blender.
Существует также модификатор, который использует проекции с камер для настройки мозаичного отображения, но он также дал мне неверные результаты.
Обычное сгенерированное отображение, кажется, работает без сбоев, я надеюсь, что так оно и будет в следующих выпусках Blender.
Правила дизайна: Текстура и узор
Текстура и Узор — сложные элементы дизайна, с которыми можно поиграть.Люди очень привязаны к своему осязанию, поэтому текстура, в частности, является очень важным элементом в пространстве. Подумайте только о том, как детям нужно все потрогать, чтобы испытать это. При проектировании комнаты использование текстуры и рисунка добавляет фактор комфорта и улучшает восприятие пространства.
Что такое текстура?
Текстура — это просто качество поверхности материала. Он может быть гладким, шершавым, неровным или плоским. Когда мы смотрим на поверхность, наше восприятие этой поверхности зависит от текстуры прилегающей поверхности.Например: грубые поверхности кажутся более текстурированными по сравнению с гладкими. Освещение, применяемое к поверхности, также может влиять на текстуру. Например: свет, освещающий каменную стену, отбрасывает тени, делая стену более текстурированной.
Что такое узор?
Узор — это повторение графического мотива на поверхности, чаще всего на ткани и обоях в наших домах. В то время как текстура относится к физическому качеству поверхности, узор создает иллюстративное восприятие.
12 советов, которые помогут вам использовать текстуру и узор в вашем доме
- Не стоит недооценивать силу текстуры и узора, они играют важную роль в объединении элементов комнаты и создании уютной атмосферы.Будьте осторожны, чтобы убедиться, что «визуальный вес» этих элементов сбалансирован.
. - Из-за сильных ассоциаций, которые у нас есть с материалами, текстуры и узоры могут использоваться, чтобы сделать пространство подходящим для конкретной цели или для человека.
. - Свет влияет на текстуру: прямой свет усиливает ее, тогда как рассеянный свет отвлекает. Каждая текстура также по-разному отражает свет, поэтому используйте блестящие отражающие текстуры там, где требуется больше света, и более темные, более поглощающие текстуры, когда уровень света слишком высок.
. - Младенцы и дети постоянно ищут новые визуальные стимулы, чтобы больше узнать об окружающем мире. Удовлетворите этот интерес, добавив стимулирующие узоры и текстуры в комнаты, где они спят и играют.
. - Высококонтрастные, визуально стимулирующие узоры могут дезориентировать, поэтому используйте их аккуратно в своем интерьере.
. - Выбор рисунка для интерьера — это самый быстрый способ «приобщиться» к определенному стилю. Первоначальный выбор ткани или обоев может даже обеспечить основу цвета, дизайна и стиля для всей комнаты.
. - Выбирайте обои и ткани с вертикальным акцентом на дизайне, чтобы создать впечатление большей высоты. Используйте горизонтальные текстуры на небольшой длине комнаты, чтобы привлечь внимание и увеличить длину пространства.
. - Обои с негеометрическим рисунком обеспечат хороший камуфляж стен с неровностями поверхности.
. - Узоры с сильным рисунком имеют тенденцию приближаться к наблюдателю, в то время как узоры с меньшей плотностью не будут такими мощными.
. - Используйте текстуру и узор, чтобы создать интересные области, чтобы направить взгляд к определенным фокусным точкам.
. - Слишком большой раппорт, используемый в качестве покрытия для стен, сделает комнату меньше, поэтому используйте крупномасштабные узоры на больших участках или стенах и более мелкие узоры на небольших стенах.
. - Уравновешивайте сильные узоры с более приглушенными, чтобы не загромождать комнату. Подумайте об использовании этих элементов слоями, от сильных до тонких, создавая сбалансированный вид.
Это отличные элементы, с которыми можно поиграть, и их можно сделать даже в небольших количествах.