Название: Освещение сцены Отправлено: 3DYURA от 06 Мая 2008, 11:18:16 В этой теме люди могут делится своими методами освещения сцены интерьера экстерьера.
В настоящий момент меня интересует освещения небольшого микрораена размером приблизительно (2км на 2км ) я ставлю четыре точечные источники света с мултипером (0,5) по переметру . но желаемого результата освещения не добиваюсь ??? Интересно как другие освещают Название: Re: Освещение сцены Отправлено: barmadjar от 29 Марта 2009, 22:15:01 Подскажите, люди добрые, в чем проблема!
Помещаю в модель квартиры 7 источников типа Spot Light - все нормально, помещаю 8-й источник (и более)- они уже не дают никакого эффекта, как ни старайся ??? Сталкивался ли кто-нибудь с такой проблемой? Вроде источников до 50 штук можно помещать, как я где-то читал. Название: Re: Освещение сцены Отправлено: Sqwer от 29 Марта 2009, 23:10:14 Понимаю, что источников света больше 8ми 9Директ не поддерживает. Огорчаться не стоит, остальные источники делаются шейдерами.
В шейдер входным значением будет положение источника света, цве, яркость (это стандартно). Всё зависит от написанного шейдера. Название: Re: Освещение сцены Отправлено: barmadjar от 30 Марта 2009, 00:59:46 Спасибо, Sqwer!
Попробую разобраться, хотя с шейдерами дел практически не имел, кроме квестовских. Пока с трудом представляю, каким образом это делается. Название: Re: Освещение сцены Отправлено: Sqwer от 30 Марта 2009, 13:28:51 зачем так много источников света?
Связка лайтмапов и 8 источников смотрится куда лучше!!! Название: Re: Освещение сцены Отправлено: barmadjar от 30 Марта 2009, 22:45:00 Да просто квартиру делаю.
Наверное так и поступлю. А может имеет смысл расположить источники везде, где надо, и попросту включать в тех помещениях, куда входишь, и отключать там, откуда уходишь? Тем более, что источники из соседнего помещения светят «сквозь стену». Вот кстати тоже интересный момент. Как его избежать - делать для каждого помещения свой рендер со своими источниками? Или как-то еще можно ограничить распространение света? А вот еще один пример, когда необходимо много источников – в тунеле. Название: Re: Освещение сцены Отправлено: Sqwer от 30 Марта 2009, 23:09:09 Идея С поочерёдным включением источников получится, многие так и поступали.
Подсвечивание других комнат можно исключить, используя тени или ограничивая радиус действия источников света. Используя максовский Финал рендер можно получить невероятно реалистичные лайтмапы. ПС. я использовал бы лайтмапы. Название: Re: Освещение сцены Отправлено: barmadjar от 31 Марта 2009, 00:04:17 Спасибо за советы!
Попробую) Название: Re: Освещение сцены Отправлено: Paul_Winex от 17 Сентября 2009, 00:37:52 Приветствую. У меня вопрос по освещению.
Я решил сделать сцену без лайтмапов и с динамическими источниками света с тенями (для практики). Сделал небольшую комнату, немного повозившись сделал NormalBump и тени (Stencil Shadow). Но вот со светом беда. Для отбражения рельефа я использовал стандартный канал Bumpmapping (diffuse&Specular). И не смог после этого настроить затухание света, этот канал на него не реагирует. В результате получается всё весьма отвратно! В общем данный канал неважно работает с углом освещения и расстоянием до ИС. Сцена очень контрастно и равномерно освещена. Я так понимаю что потребуется использовать какой-то шейдер. Или есть иные пути решения проблемы? Название: Re: Освещение сцены Отправлено: Sqwer от 17 Сентября 2009, 06:42:05 Советы, скорее даже правила:
Правило 1: не юзай стенсили (производительность сильно зависит от сложности геометрии) Правило 2: не юзай Квестовые шейдеры (всё равно их расширять, как например в твоём случае надо в код шейда добавить затухание по расстоянию от источника света) Делается это в вертекс шейдере где интесивность = (расстояние (вектор ИС, объект))/аутенацию для лучших результатов используют квадрат аутенации (что физически обасновано). Название: Re: Освещение сцены Отправлено: Paul_Winex от 17 Сентября 2009, 08:42:07 Спасибо, я догадывался, но небыло уверенности. А кроме как НЕ ДЕЛАТЬ, сможете подсказать как всё-таки ДЕЛАТЬ? Хотя бы в общих чертах.
Название: Re: Освещение сцены Отправлено: Paul_Winex от 17 Сентября 2009, 10:29:31 Прикрутил шейдер из этих примеров
http://guest3d.wohlnet.ru/forum/index.php?topic=130.0 (http://guest3d.wohlnet.ru/forum/index.php?topic=130.0) Картинка получше. Пропали тени. Но так как было говорено ранее, они не особо быстры, следует вопрос - какие тени исользовать? Название: Re: Освещение сцены Отправлено: Sqwer от 17 Сентября 2009, 14:55:46 http://3dvrm.com/shadows_solution/
Цитировать А кроме как НЕ ДЕЛАТЬ, сможете подсказать как всё-таки ДЕЛАТЬ? Хотя бы в общих чертах. я же уже ответил постом выше: Делается это в шейдере где интесивность = (расстояние (вектор ИС, объект))/аутенацию Но так как было говорено ранее, они не особо быстры, следует вопрос - какие тени исользовать? Пожалуйста, решение от многоуважаемого Viik'а. http://3dvrm.com/shadows_solution/ это вроде PSSM Браво, Виктор!!! ;) До такого я пока не дорос, и по тому использую простенькие приёмчики шадомаповые. http://www.gamedev.ru/code/articles/ShadowMapGLSL + размытие по глубине. Название: Re: Освещение сцены Отправлено: Paul_Winex от 17 Сентября 2009, 15:17:57 Спасибо, буду почитать!
Технический вопрос. Если я подключил в дерево объекета шейдерный канал и перецепил информацию он вершинах не так как по дефолку, то может пропасть коллизия с этим объектом? .............. Sqwer: для колизии используй упрощённую геометрию. из прочитанного следует что реализацию теней требуется делать в шейдере и никаких стандартных теней? То есть шейдер расчитывает все расстояния, векторы и тд для каждого пикселя. Верно понял? Sqwer: ага. Название: Re: Освещение сцены Отправлено: Paul_Winex от 18 Сентября 2009, 10:52:55 2Sqwer? я знаю про упрощеннную геометрию. Для скорости делал на той же что и является "цветовой" геометрией и просто столкнулся с такой бякой. Всё это ради исследиваний а не практический применений.
Спасиб за советы :) Название: Re: Освещение сцены Отправлено: Paul_Winex от 20 Сентября 2009, 00:41:37 Мда, почитал я про шейдерописание. Всё-таки не мало надо времени потратить чтобы самостоятельно этому научиться. А так как научить собственно некому, видимо придется искать готовые решения. Если вдруг тема по моему следующему вопросу открыта, то поправте меня, если нет, то подскажите следующее:
Я хочу собрать сцену со следующими элементами: - Геометрия с 2х слоями текстуры: 1. Диффузная. 2. Лайтмап типа AmbientOcclusion. - Хочу сделать на материалах Normals, Alpha, и др стандартные штуковины. - Помимо лайтмап требуется сделать и реалтаймные тени от 2-3 источников. - Bloom, РВК прочие навороты уже как прикрутки и не обязательны. В чем собственно проблема? А вот в тех самых шейдерах и в частности в тенях. Stensil тени я сумел прикрутить, но применение добротных шейдеров из ShaderFX их убило. Написать (дописать) свои я не силён :( Какие есть варианты? Может кто имеет хорошие исходники шейдеров с перечислеными возможностями и непротив ими поделиться? Может уважаемый Sqwer откликнется? ;) PS, по написанию шейдеров я читал и стараюсь читать далее, так что этот вариант обрабатывается. Я поднимаю вопрос о готовых решениях. Название: Re: Освещение сцены Отправлено: Sqwer от 20 Сентября 2009, 08:06:55 Вот тут находится реализация теней. (http://forum.quest3d.com/index.php?action=dlattach;topic=66423.0;attach=128349)
они быстрые, но не пригодны для аутдор сцен (всвязи проблем альясинга глубины). К этому шейдеру легко прикрутить Normals, Alpha, Difuse (все действия производятся в PS). Как прикручивать описано тут (http://guest3d.wohlnet.ru/forum/index.php?topic=426.0) бывшим квестером а ныне Юнитистовцем Const_47 Есть такая книжка "Shaders for programmers and artists", прочитай ее можно за 2-3 дня, и пройти все уроки. Большая часть вопросов отпадет сама. Разбираясь на примерах далеко не уйдете. Просто сейчас вы хотите чтобы шейдер просто работал, вроде получилось, потом станет вопрос внесения изменений в код, оптимизации, использования других моделей освещения, юзания масок и т.п. А вот и эта книжка, про которую говорил Виктор, отослал в личку.Название: Re: Освещение сцены Отправлено: Paul_Winex от 20 Сентября 2009, 09:55:13 ОТ-ЛИЧ-НО! Да не снизится частота твоего ядра за твой Добродетель!
зы. Юнитистовец это кто? я видимо не в курсе такой профессии :) __________ Что-то в предложенном примере теней и нет вовсе :(. Может какие несостыковки по версиям. Название: Re: Освещение сцены Отправлено: Sqwer от 20 Сентября 2009, 10:09:44 Цитировать Что-то в предложенном примере теней и нет вовсе . Может какие несостыковки по версиям. Камеру переключи ;DЮнитистовец - это юзер данного ПО (http://www.unitydev.ru/) Название: Re: Освещение сцены Отправлено: Paul_Winex от 20 Сентября 2009, 16:06:52 ХАХА, оч смешно. Первое что сделал это переключился в камеру. Она вообще на нуле лежит и не двигается. Следовательно пол у меня плоский и теней не вижу. Но усилием моска я поднял камеру повыше и всё заработало :)
Ну ваще ты прав, просто не ПЕРЕКЛЮЧИ а ПОКРУТИ. Название: Re: Освещение сцены Отправлено: Sqwer от 20 Сентября 2009, 19:26:49 Да-да, простите уж меня - дурака. Забыл сказать что её не только переключит , но и покрутить надо. А крутить надо так: УДЕРЖИВАЯ левую кнопку мыши, премещаем её.
Название: Re: Освещение сцены Отправлено: Paul_Winex от 20 Сентября 2009, 22:00:47 ;D Между прочим по-началу и знать не знал что так можно! Изменял циферки в канале векторов положения и поворота!!! Так что кто тут еще дурак :D
Название: Re: Освещение сцены Отправлено: Paul_Winex от 24 Сентября 2009, 08:35:49 Друзья мои, не осилил я пока что теневое шейдерописание, впрочем как и любое другое. И решил немного пошарить по нету в поисках готовых. Набрел на сайт
http://knowledgebase.quest3d.com/browse/detail/55 (http://knowledgebase.quest3d.com/browse/detail/55) С этой странички скачал прилагаемый шейдер (копия кода из канала). Всё там круто, есть нормалмап, спекьюлярмап, и даже стенсил тени (да, пока что их) работают. Но вот незадача, не всегда они работают. Сделал эксперемент, поставил импортировнную плоскость. Пославил местный бокс, подключил стенсил-тени, всё работает. Потом импортировал из макса объект нужный для сцены - не могу подключить тени! Точней подключаю но не работает. Предположил что быть может это из-за того что меш состоит из нескольких частей. Сделал отдельно части (боксы), всё равно теней нет. Сделал новый бокс в максе е нужный для сцены, импортнул - работает. Сделал новые боксы на нужном месте, импортнул - не работает! Это издевательство! Почему тени стенсиловые могут не работать если при таких же условиях с другими объетами и с тем же шейдером они работают? Название: Re: Освещение сцены Отправлено: Sqwer от 16 Ноября 2009, 23:35:56 Вопрос дня: стот ли производить фрустум кулинг объектов при касте теней от множества объектов, если солнце всегда в зените(т.е. солнце потенциально охватывает 1/3 от сцены)?
Реализация теней PSSM. может лучше смоделить примитивную геометрию и запекать примитывные объекты в 1 сетку , и только затем подавать на обработку? :P |