Зеркальная поверхность

Шейдеры и все-все-все.

Зеркальная поверхность

Сообщение homerender 31 июл 2010, 13:03

Привет всем. Так получилось что мне очень надо сделать штуку подобную этой:

http://local.wasp.uwa.edu.au/~pbourke/miscellaneous/domemirror/UnityiDome/

Для создания эффекта Fisheye нужно зеркало в форме линзы. Это мы сумели:
Изображение

А вот материал подходящий не нашел :(
Скачал с форума MirrorReflection, но результат совершенно не тот - отражение ровное, словно зеркало невыпуклое:
Изображение

Нужно чтобы материал отражал правильно, по форме объекта и получилось вот так:
Изображение

К сожалению в скриптах я практически не разбираюсь. Помогите плиз реализовать это дело.
Изображение
Изображение
Аватара пользователя
homerender
UNIт
 
Сообщения: 72
Зарегистрирован: 30 янв 2010, 01:13
  • Сайт
  • ICQ

Re: Зеркальная поверхность

Сообщение Paul Siberdt 31 июл 2010, 13:17

- Вам нужна Pro версия движка и фишай пост-шейдер, что реализует этот эффект.
- Можно также (версия Pro) посмотреть шейдеры водной поверхности, где рефрактится дно и использовать его, заменив карту нормалей на свою, эмулирующую кривизну линзы. Далее этот материал вешаете на объект перед камерой и получаете грубый fisheye-эффект
- Или (опять версия Pro) рендерить картинку в текстуру, а потом бросать ее на кривую линзообразнуюповерхность перед камерой
- А еще, например, (опять версия Pro) рендерить картинку в текстуру, а потом бросать ее на плоскость перед камерой, для которой создана развертка, эмулирующая сверхширокий угол объектива

Грамотнее всего, конечно, первый вариант. Остальное - костыли :D

Есть еще вариант:
- посмотреть результат картинки при малых FoV камеры и прикинуть, может бОльшего и не нужно? ;)
Последний раз редактировалось Paul Siberdt 31 июл 2010, 13:19, всего редактировалось 1 раз.
Аватара пользователя
Paul Siberdt
Адепт
 
Сообщения: 5317
Зарегистрирован: 20 июн 2009, 21:24
Откуда: Moscow, Russia
Skype: siberdt
  • Сайт

Re: Зеркальная поверхность

Сообщение homerender 31 июл 2010, 13:19

У меня про. Щас буду дальше ломать голову. Спасибо.
Изображение
Изображение
Аватара пользователя
homerender
UNIт
 
Сообщения: 72
Зарегистрирован: 30 янв 2010, 01:13
  • Сайт
  • ICQ

Re: Зеркальная поверхность

Сообщение Paul Siberdt 31 июл 2010, 13:20

Смотрим апдейт моего сообщения (последняя строчка) :)

Кстати, на всякий случай, фишай эффект несовместим с оптическими прицелами.
Оптический прицел - это телеобъектив (более 200mm), а фишай - сверхширокий угол (менее 10mm).

А ребята их примера, похоже, пользуют метод наложения рендера на кривую поверхность :)
Аватара пользователя
Paul Siberdt
Адепт
 
Сообщения: 5317
Зарегистрирован: 20 июн 2009, 21:24
Откуда: Moscow, Russia
Skype: siberdt
  • Сайт

Re: Зеркальная поверхность

Сообщение homerender 31 июл 2010, 13:30

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

http://local.wasp.uwa.edu.au/~pbourke/miscellaneous/domemirror/UnityiDome/domedemos.zip

Там демка с фишаем. Может еще кому пригодится. Сделано текстурами снятыми с разных камер. То что было нужно :D

Еще раз спасибо :)
Изображение
Изображение
Аватара пользователя
homerender
UNIт
 
Сообщения: 72
Зарегистрирован: 30 янв 2010, 01:13
  • Сайт
  • ICQ


Вернуться в Shader Lab

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4