Какие эффекты мне нужно учитывать для радужной оболочки?


10

Радужная оболочка (красочное кольцо, окружающее зрачок глаза) покрыта слоем воды и, кажется, имеет непрозрачные элементы, встроенные в прозрачные и полупрозрачные элементы. Какие эффекты мне нужно смоделировать, чтобы радужная оболочка выглядела реалистично крупным планом (радужная оболочка занимает более 20% площади изображения)?

Необходимо ли поверхностное рассеяние или достаточно прозрачности? Нужно ли учитывать свет изнутри глаза, который вводится через зрачок, или же задняя часть радужки может считаться полностью непрозрачной? Есть ли другие эффекты, которые я не учел?

Я рассчитываю на создание неподвижных изображений в автономном режиме - подход не должен работать в режиме реального времени.

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

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


3
Подповерхностное рассеяние наверняка будет важным в таком крупном плане. Вы можете посмотреть на работу Хорхе Хименеса для вдохновения; увидеть его выступления на SIGGRAPH 2012 и GDC 2013 . Его работа в режиме реального времени, но я уверен, что некоторые идеи могут быть адаптированы.
Натан Рид

Ответы:


12

Для реалистичной радужной оболочки вам необходимо:

  1. Геометрия : ириды очень разные у разных людей, и их внешний вид резко меняется в зависимости от того, расширен зрачок (расслаблена ли сфинктерная мышца) или нет. Вы не получите нигде только с примитивами. Вся структура похожа на толстую эластичную морщинистую ткань, подвешенную в воде. Морщины появляются и исчезают при движении. Используйте программное обеспечение для лепки и учебник по анатомии.

  2. Материал : на радужной оболочке почти нет зеркального отражения, поскольку она суспендирована в (в основном) воде, которая имеет такой же показатель преломления, что и ткань. Я не знаю значений шероховатости, так как я никогда не видел сухой ирис. С зеркальной моделью GGX шероховатость 0,4 выглядит хорошо. Коричневые ириды кажутся более грубыми, почти как очень мелкий песок. Модель затенения, которая использует шероховатость в диффузном компоненте, была бы хороша.

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

  4. Рефракция и отражение на роговице: роговица (слой жидкости, покрывающий ее) действует как линза. Это искажает изображение радужной оболочки, видимое камерой. Без этого он не будет выглядеть реально, особенно если смотреть в глаза сбоку. Необычная вещь о глазе - то, что с графической точки зрения объект находится внутриОбъектив. Так что нет никакого уравнения тонкой линзы, которое придет вам на помощь. Вы должны преломить свет один раз, на границе раздела между слезным слоем и воздухом. Другие поверхности раздела (слой слезной оболочки снаружи роговицы, слои и мембраны внутри роговицы, внутри роговицы и камерной жидкости) не имеют значения, поскольку все показатели преломления очень похожи или структуры чрезвычайно тонкие. Единственная другая оптически важная структура - это линза, которая находится позади радужной оболочки и может быть проигнорирована. Форма роговицы имеет решающее значение, поскольку она будет искажать все. Люди с деформациями роговицы, такими как кератоконус, имеют странно выглядящие глаза. Также вся сцена должна отражаться на роговице / жидкости. Мы ожидаем увидеть отражения источников света над радужной оболочкой / зрачком.

  5. Лимба : Глядя фронтально на глаз, есть серовато кольцо вокруг радужки. Это та часть, где роговица сливается со склерой («белым» глаза), переходя от прозрачной к непрозрачной. За лимбом, с анатомической точки зрения, находится угол иридокорнеальной области, где радужная оболочка соответствует остальной части глаза. Эту область невозможно увидеть из-за преломления, упомянутого выше, это место буквально никогда не видело света. Излучаемый оттуда свет испытывает полное внутреннее преломление на границе роговицы, вы не можете смотреть на него снаружи. Таким образом, выглядит очень странно, когда виден переход от радужной оболочки к остальной части глаза. Для правильного перехода необходим рефракция и постепенный переход от роговицы к склере.

  6. Подповерхностное рассеяние : возможно, вам удастся избежать этого на самой радужной оболочке, поскольку сзади никогда не будет света, особенно с коричневой радужной оболочкой (более пигментированной -> больше затухания во время рассеяния). Хотя для некоторых направлений света это будет иметь значение. И все равно это нужно на коже и склере. Но это не самый важный эффект.

  7. Окружающая окклюзия : вам нужен хороший SSAO (или GI ), чтобы выделиться тонкой структурой. Там почти нет зеркальных, поэтому вам нужны другие визуальные подсказки для геометрии. Выберите метод, который использует ваши нормали из карты нормалей. HBAO будет хорошо работать. Для автономного рендеринга GI будет сделан вашим выбранным средством визуализации.

  8. Освещение : использование какого-либо физического метода само собой разумеется. Освещение на основе изображений, особенно для отражения роговицы. Под определенными углами преломление света на роговице также может стать актуальным (только для аналитических источников света). Постобработка (цветение), особенно для рефлекса роговицы.

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

Этот список выглядит большим, но вы попросили фотореализм;) Он все равно будет хорошо выглядеть, если вы только сделаете легкую половину и подделаете остальное.

(Источник: я занимаюсь графическим программированием для медицинских симуляций с акцентом на человеческий глаз)

Материал:


3
Было бы интересно увидеть некоторые результаты вашего подробного рецепта, если есть какие-либо, которыми вы можете поделиться.
Rotem

Не в данный момент, извините: /
cupe
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.