Category: наука

Category was added automatically. Read all entries about "наука".

scionik

ЦЕИ РАН



Сегодня просто отличный день. На конференциях в Крокусе и Сколково с докладами выступал, теперь вот взял новую высоту... Только что рассказал доклад о проекте Нефертари в Российской Академии Наук, а точнее в центре египтологических исследований РАН. Уложиться в один академический час довольно-таки сложно, но зато никакой воды, всё чётко и по делу. Хотя доклад можно спокойно растянуть на два часа, но это для обывателей с разжёвыванием всего материала, а тут уже не нужно рассказывать кто такая Нефертари, как и где строились гробницы и т.п.
Сегодня я выставил проект на обсуждение учёным и тем самым сделал ещё один шаг в его развитии, а самое главное, дал пищу для размышлений египтологам. Я чрезмерно благодарен, что мне позволили выступить с докладом в ЦЕИ РАН перед профессионалами. Огромное спасибо всем слушателям, надеюсь я заинтересовал вас и теперь можно проделать работу над ошибками, не смотря на все сложности, продолжить совершенствовать и дальше развивать этот большой, красивый и интересный проект.
scionik

Окно сообщений mental ray

Для вывода информации о процессе рендеринга в mental ray существует специальное информационное окно mental ray Messages window (окно сообщений mental ray), в котором можно установить уровень подробностей вывода информации о текущем рендеринге. В нём можно отслеживать ход рендеринга и мониторить статистические данные для анализа.

Для открытия информационного окна выберите из меню команду Rendering > Render Message Window (Визуализация > окно сообщений рендерера).

Окно сообщений mental ray содержит 3 вкладки для вывода информации о текущем рендеринге:


  • Production (Итоговый) – для вывода сообщений процесса итогового рендеринга;

  • Material Editor (Редактор материалов) – для вывода сообщений рендеринга предварительного просмотра образца материала в редакторе материалов;

  • Active Shade (Интерактивный) – для вывода сообщений при интерактивном рендеринге.



Рис. 1  Активация подробного вывода сообщений mental ray в 3ds Max

В открывшемся окне mental ray Messages, как показано на рисунке 1, нажав правой кнопкой мыши, из контекстного меню можно указать требуемый уровень подробностей и просмотреть результаты вывода (ход выполнения визуализации).

Уровни подробности вывода информации:

Show Information Message (Отображать информационные сообщения) – При включении этой опции, окно сообщений отображает общие информационные сведения о рендеринге;

Show Progress Message (Отображать сообщения о ходе процесса) – Отображает текущее выполнение задач;

Log Debug Messages (Вести лог отладки) – Записывает сообщения отладки в файл. Сообщения отладки никогда не отображаются в окне сообщения mental ray. Их можно прочесть из записанного файла лога.

Open Message Window on Error (открыть при ошибке) – При активации этой опции, окно сообщений открывается только при обнаружении ошибок во время рендеринга. По умолчанию эта опция активна, что позволяет сразу обнаруживать ошибки рендеринга и принимать меры по их устранению.

В верхней правой части окна сообщений mental ray можно увидеть версию рендерера, а также количество доступных потоков ядер CPU, рисунок 2



Рис. 2  Окно сообщений mental ray и версия рендерера

Open on Errors (Открывать при ошибках) – Установка этого чекбокса в нижней левой части окна принуждает окно сообщений mental ray автоматически открываться при возникновении ошибок во время рендеринга.

Расшифровка сообщений mental ray

В окне сообщений mental ray отображается прогресс рендеринга, статистика, и возможные предупреждения об ошибках. Сообщения о прогрессе рендеринга и информационные сообщения отображаются текстом чёрного цвета. Предупреждения – оранжевым, а ошибки красным цветами, рисунок 3.



Рис. 3  Окно сообщений mental ray, содержащее предупреждение об ошибках рендеринга

Сообщение mental ray содержит ряд данных:


  • Классификацию данных;

  • Имя хоста и поток;

  • Текущее использование памяти;

  • Информацию, предупреждение или же указание на ошибку (плюс её код);

  • Расшифровку сообщения.

Для начала разберём несколько примеров информационных сообщений mental ray.

RC 0.4 265 MB info: option: samples   min -1, max 0

RC – Классификация сообщения: rendering core (ядро рендерера);

0.4 – Этот параметр будет более подробно описан далее в книге в разделе распределённой визуализации;

265 MB – Объём используемой памяти на данный момент рендеринга;

info – Информационное сообщение. В этом примере значения сэмплинга;

RC 0.4 710 MB info: wallclock  0:04:31.41 for rendering

В этом примере отображается статистика времени рендеринга. На данный момент было использовано уже 710 MB памяти.

RCFG 0.4 885 MB info: finished computing final gather level 1 (pass 2 of 3)

В этом примере показана генерация Final Gather и её этап, т.е. завершен второй из трёх этапов. RCFG – Классификация сообщения: rendering core Final gathering (ядро рендерера метода освещения отражённым светом Final Gather); На данный момент было использовано уже 885 MB памяти.

Разберём примеры сообщений ошибок и предупреждений рендеринга:



Рис. 4  Примеры ошибки и предупреждения mental ray

На рисунке 4 показаны примеры ошибки неподдерживаемого материала mental ray, а также предупреждение об изменении фильтрации изображения.

MSG 0.0 55 MB error: Material "vr metallPilished  ( VRayMtl )" not supported by the translator. Will render black.

MSG – Классификация сообщения: message passing (Передача сообщения);

55 MB – Объём используемой памяти на данный момент рендеринга;

Error – Указание на ошибку;

Описание – В данном примере ошибки в материале "vr metallPilished  ( VRayMtl )", т.е. тип материала рендерера V-Ray. mental ray не поддерживает данный тип материала и поэтому объекты, использующие материал "vr metallPilished  ( VRayMtl )", будут отображаться чёрными на финальном изображении.

RCGI 0.10 180 MB error 361053: no photons stored after emitting 1000000 photons from light "PhotometricLight001|Light": canceling emission job

В этом примере показана ошибка генерации фотонов RCGI – Классификация сообщения RC global illumination and caustics (Глобальное освещение и Каустика); В сообщении говорится о том, что после генерации света PhotometricLight001 1000000 фотонов источником, ни один фотон не достиг поверхности сцены, в связи с этим генерация фотонов отменена для данного источника света.

Существует много причин появления этой ошибки. Например, часть источника света погружена в объект, или же наоборот, источник света может быть расположен слишком далеко от объектов сцены. Убедитесь, что источник света в сцене расположен верно. О фотонах и их управлением речь пойдёт в IV главе книги.

RC 0.4 91 MB warn 082034: sample filter other than box 1.0 1.0 not supported for these sampling levels

RC 0.4 91 MB warn 082035: sample filter switched to box 1.0 1.0

RC – Классификация сообщения: rendering core (ядро рендерера);

91 MB – Объём используемой памяти на данный момент рендеринга;

Warn 082034; 082035 – Предупреждения и их кодировка

Описание – В этом примере отображается предупреждение о смене фильтрации картинки. В настройках рендеринга были указаны заниженные параметры сэмплинга (min 1/16  max 1/4) и выбран фильтр Mitchell размером 3х3. Но этот фильтр не поддерживается при низкой фильтрации, поэтому mental ray автоматически переключился на фильтр Box размером фильтрации 1х1. Подробно сэмплинг и фильтрация описаны в IV главе книги.

Рассмотрим другие примеры ошибок и предупреждений:

RCFG 0.2 warn 542009: finalgather ray returned NaN for the finalgather point at pixel 185.724 127.049

В этом примере сообщение указывает на то, что один из шейдер не совсем корректно работает с Final Gather. Также в сообщении указаны координаты возможных неправильно рассчитанных пикселей (185.724 127.049). В этом сообщении присутствует сокращение NaN (Not A Number), что означает Число недопустимого диапазона.

Это предупреждение не такое уж и «страшное», ведь это всего лишь предупреждение. Главное чтобы на финальном изображении не было видно последствий в виде серых пятен или прочих артефактов.

Найти объект с некорректным шейдером, как обычно, можно путем удаления по одному или группе объектов из сцены (предварительно сохранив оригинал сцены).

RCFG 0.5 warn 542002: angle between normal and geometry normal > 90 degrees

В этом примере также проблемы с Final Gather. Предупреждение показывает на ошибку возникающей при чрезмерном наклоне нормали, обычно в результате использования высоких значений Bump в шейдере. Также может быть некорректная геометрия, где нормаль и нормаль геометрии смотрят в разные стороны.

На заметку: В наличие нескольких таких предупреждений (warn) при рендере нет ничего страшного и можно не обращать внимания. Но если таких предупреждений много, рендеринг может замедлиться.

Теперь у вас есть базовые знания о том, что представляет собой mental ray; вы можете настроить для себя пользовательский интерфейс с учётом некоторых особенностей рендерера mental ray, организовать структуру проекта, файлов и папок. И даже если возникнут ошибки во время рендеринга, вы сможете отследить их и даже исключить их.

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

scionik

Ambient Occlusion - 1-я часть

Ambient Occlusion (далее AO) – это алгоритм, техника, имитирующая эффект теневого рефлекса

на близкорасположенных объектах. Или проще говоря – имитирует полутона глобального освещения.
Очень часто физическая корректность освещения не всегда является первостепенной задачей в
архитектурной визуализации (особенно когда сжатые сроки на исполнение проекта), в большинстве
случаев достаточно сымитировать правдоподобность глобального освещения. Такую
правдоподобность техника АО вполне способна передать. Вполне допускается использование АО
вместе с фотонными картами, вместо метода расчёта глобального освещения Final Gather.
Хотя такой результат будет совершенно далек от физической корректности, он сможет передать
вполне убедительное и гладкое глобальное освещение (больше художественную подачу изображения,
вместо фотореалистичности). Стоит отметить, что время рендеринга будет гораздо меньше
по сравнению со временем рендеринга, используя FG + Photon Map.
Как мы уже знаем, в реальной жизни освещенный объект имеет несколько компонентов
освещённости. Для примера рассмотрим цилиндр на горизонтальной поверхности, рисунок ниже.

ao_1.0

Цилиндр имеет локальные компоненты (которые не зависят от других объектов): свет, тень,
полутень. Однако есть еще и глобальная компонента – теневой рефлекс (он зависит от того,
какими другими объектами окружен цилиндр, в нашем примере, плоскость, на котором лежит цилиндр).
Отражённый свет появляется тогда, когда на теневую сторону цилиндра падает отражённый
свет от других объектов (опять же, от плоскости, на которой лежит цилиндр). Таким образом,
основная часть теневой стороны становится светлее (рефлексирует), в то время, как её
границы остаются тёмными (так как на них падает меньше отраженного света в силу их близкого
расположения относительно друг друга). Получившиеся более тёмные границы света и тени
это и есть эффект Ambient Occlusion.
Ambient Occlusion чаще всего рассчитывается путём построения лучей, исходящих из точки
поверхности во всех направлениях, с последующей их проверкой на пересечение с другими
объектами. Например, возьмём одну точку (А) в сцене. Испустим равномерно во всех
направлениях 8 лучей из этой точки (получим некое полусферическое распределение
лучей вокруг нормали плоскости).
Некоторые из лучей не пересекают цилиндр. А некоторые попадают на цилиндр, т.е. эти
лучи имеют препятствие. Итак, было испущено всего 8 лучей, 3 луча имеют преграждение,
таким образом для точки А получаем соотношение 3/8 перекрытых лучей.

ao_1.1

Далее, возьмём вторую точку (B), которая расположена ближе к цилиндру. Снова испускаем
8 лучей, но уже из точки В, как и с первой точкой (А) некоторые лучи идут без каких-либо
препятствий, оставшиеся 4 попадают на цилиндр (соответственно они имеют преграду).
Для точки В получаем соотношение 4/4 перекрытых лучей.

ao_1.2

Подобные расчёты выполняются для каждой точки. К общему числу лучей в сцене берётся
соотношение лучей, встречающих преграждение. Чем ближе это значение к нулю, тем меньше
преграждений, чем ближе к единице, тем больше преграждений. В вышеописанном примере,
точка А будет ближе к белому участку схематической поверхности пола (менее перекрыта),
точка В будет ближе к чёрному (более перекрыта).

ao_1.3

В результате точки, окружённые большим количеством геометрии, отображаются как более
тёмные, а точки с малым количеством геометрии в видимой полусфере – светлыми.

ao_1.4

На рисунке выше показан пример применения шейдера АО к сцене. Особенно заметно влияние
техники АО на потолке и в углах помещения.

ao_1.5   ao_1.6

Без применения AO (слева); с применением AO (справа)

Технология АО имеет собственный шейдер, помимо этого он является компонентом шейдера
Arch & Design Материала. Практическое применение и пользовательские настойки шейдеров для
создания эффекта Ambient Occlusion будут описаны позже, во второй части статьи.
scionik

Освещённость и измерение освещённости (lux).

Давно уже пытаюсь разобраться с этим анализатором света... первые шаги освоения теории...
Оригинал взят с сайта http://usa.autodesk.com/3ds-max/white-papers/

Освещённость и измерение освещённости (lux).


GUID-956248C5-0050-45F9-9054-FC2CEAE493FD-low

-low  2-low

Рис. 01 Пример измерения освещённости в lux в 3ds Max

Для создания фотореалистичных изображений нам необходимо знать, как измерять свет.

Слово «Яркость» может означать разные понятия: количество света, испускаемое источником света или количество света, падающего на поверхность.

Количество света, падающего на поверхность, называется «освещенность» и измеряется в люксах (lux – метрическая система) или в канделах (foot-candles (ft-cd) – Английская система). Это основные единицы измерения, с которыми нам придется работать для оптимизации освещенности наших сцен. Количество света, испускаемое источником во всех направлениях, измеряется в люменах (будь то световой поток или поток излучения).

Эти количественные меры различаются, поскольку, чем дальше поверхность от источника света, тем меньше света падает на нее. Источник света, например свеча, создает освещённость 1 люкс на объекте, удаленном от нее на один метр. 1/4 люкса, если этот же объект удален на два метра или 1/9 люкса если объект удален от свечи на три метра.

Некоторые основные уровни освещенности приведены в таблице ниже.

Таблица. 1. Уровни освещённости в различные погодные условия

Условия

Освещение

ft-cd)

lux

Дневной свет

1 000

10 752

Облачный день

100

1 075

Пасмурный день

10

107

Сумерки

1

10,8

Темные сумерки

0,1

1,08

Полнолуние

0,01

0,108

Четверть луны

0,001

0,0108

Звездное небо

0,0001

0,0011

Комфортные уровни освещенности

Нам, как дизайнерам и визуализаторам необходимо знать, что в создаваемом нашем изображении правдоподобное освещение, и мы должны быть уверены в достоверности освещения нашего проекта.

В помещениях может быть слишком темно или слишком светло, и эти уровни освещенности зависят от того, какое предназначение этих помещения. Яркость, требуемая для производства ювелирных украшений или сборки электронных компонентов гораздо больше, чем яркость, требуемая для нормального передвижения по комнате. Ниже приведена таблица освещенности для помещений различного назначения.

Таблица. 2. Рекомендуемая освещённость для помещений различного назначения

Активность

Рекомендуемое
освещение

lux

ft-cd

Парковка/ тротуар ночью

20 – 50

2 – 5

Склады, дома, лобби, комната отдыха, обычный офис

100 – 200

10 – 20

Работа за компьютером, лаборатории, чтение и письмо (высококонтрастное), работа с документами

500

50

Супермаркеты, типовая работа с механикой/электроникой

750

75

Черчение, рисование набросков, детальная работа с механикой/электроникой, хирургия

1 000

100

Детальное черчение, рисование мелких деталей, работа с очень мелкими механическими или электронными деталями

1 500 – 2 000

100 – 200

Длительная работа с мелкими, низко контрастными деталями

2 000 – 10 000

200 – 1 000