forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   C++ (http://forum.boolean.name/forumdisplay.php?f=22)
-   -   Clear Engine (Понятный движок) (http://forum.boolean.name/showthread.php?t=18702)

Mr_F_ 28.11.2013 01:14

Ответ: Clear Engine (Понятный движок)
 
Цитата:

диффуз * лайтмап
для LDR лайтмапов это даст очень унылый результат, добавь константу, на которую лайтмап будет домножаться, в старых играх (ХЛ2, мафия, макс пейн) она была равна 2 (потому что это можно было сделать FFP блендом), в результате лайтмап мог не только темнить но и засветлять.

Цитата:

Не писать же на каждый случай шейдер
- можно их генерировать из кусков кода
- можно юзать деферед (хотя я не фанат)

pozitiffcat 28.11.2013 09:02

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

HolyDel 28.11.2013 11:26

Ответ: Clear Engine (Понятный движок)
 
мне вот всегда было интересно почему все используют нормалкарты в тангентспейсе. ведь для статики можно было бы использовать и в обектспейсе нормалкарты. но нет. никто не использует.

pozitiffcat 28.11.2013 11:49

Ответ: Clear Engine (Понятный движок)
 
Цитата:

Сообщение от HolyDel (Сообщение 270733)
мне вот всегда было интересно почему все используют нормалкарты в тангентспейсе. ведь для статики можно было бы использовать и в обектспейсе нормалкарты. но нет. никто не использует.

там вроде другой эффект получается.. у меня до этого так было

Mr_F_ 28.11.2013 12:41

Ответ: Clear Engine (Понятный движок)
 
Цитата:

Просто каждый кадр я задаю в каждый зарегестрированый на сцене шейдер информацию о источниках освещения
не знаю как в GL (в webgl вот нельзя), но в DX9 можно было назначать константы не просто "в шейдер" а в конкретный константный регистр на видяхе, так можно было бы 1 раз на старте рендера все константы для всех лайтов засунуть, а потом шейдеры их бы юзали или не юзали.
В DX10 и далее это ещё более удобно обёрнуто в constant buffers. Основная философия - разделить константы на группы по частоте обновления.


Цитата:

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

я делал для террейна нормали 8 битные ворлдспейс, смотрелось херово, пришлось юзать 16 бит хотя бы.

pozitiffcat 28.11.2013 13:34

Ответ: Clear Engine (Понятный движок)
 
Цитата:

Сообщение от Mr_F_ (Сообщение 270735)
не знаю как в GL (в webgl вот нельзя), но в DX9 можно было назначать константы не просто "в шейдер" а в конкретный константный регистр на видяхе, так можно было бы 1 раз на старте рендера все константы для всех лайтов засунуть, а потом шейдеры их бы юзали или не юзали.
В DX10 и далее это ещё более удобно обёрнуто в constant buffers. Основная философия - разделить константы на группы по частоте обновления.

хм... гуглил, но не нагуглил такую фичу в opengl, неужели он не умеет такую важную вещь?

HolyDel 28.11.2013 13:55

Ответ: Clear Engine (Понятный движок)
 
не оно?
http://www.opengl.org/registry/specs...le_uniform.txt

Mr_F_ 28.11.2013 14:03

Ответ: Clear Engine (Понятный движок)
 
аналог констант буферов есть вроде, но это в современном ГЛ, не знаю как в мобилковом (в вебном нет):
http://www.opengl.org/wiki/Uniform_Buffer_Object

Цитата:

не оно?
и правда:
Цитата:

An older form of this functionality exists through the EXT_bindable_uniform extension.

pozitiffcat 28.11.2013 21:29

Ответ: Clear Engine (Понятный движок)
 
Собрал под win32, можете потыкать, там 3 сэмпла. Ну и собраная либа с инклюдами https://bitbucket.org/pozitiffcat/cl...ase_alpha2.zip

Randomize 28.11.2013 22:07

Ответ: Clear Engine (Понятный движок)
 

Цитата:

Работает на MaxSite CMS | Время: 6.3956 | SQL: 14 | Память: 41.08MB | Вход
Немедленно менять хостинг!
Нужен бесплатный тогда посмотри например:
http://byethost.com/
http://beget.ru/
http://hostinger.ru/ (не рекомендую)

ARA 28.11.2013 22:13

Ответ: Clear Engine (Понятный движок)
 
Свет както неправильно всёже работает. Я его приблизил вплотную к стене а он затух.

Arton 28.11.2013 22:14

Ответ: Clear Engine (Понятный движок)
 
Цитата:

Сообщение от pozitiffcat (Сообщение 270757)
Собрал под win32, можете потыкать, там 3 сэмпла. Ну и собраная либа с инклюдами https://bitbucket.org/pozitiffcat/cl...ase_alpha2.zip

Почему если удерживая курсор завести его за край окна (пример 1,2), то свет вырубается намертво?

pozitiffcat 28.11.2013 22:15

Ответ: Clear Engine (Понятный движок)
 
Цитата:

Сообщение от Arton (Сообщение 270760)
Почему если удерживая курсор завести его за край окна (пример 1,2), то свет вырубается намертво?

положение там unsigned int, когда за экран заводишь там становится что то типа 45658764566

pozitiffcat 28.11.2013 22:16

Ответ: Clear Engine (Понятный движок)
 
Цитата:

Сообщение от ARENSHI (Сообщение 270759)
Свет както неправильно всёже работает. Я его приблизил вплотную к стене а он затух.

да вот и сам непойму всеже, правильно или нет, хотя блендер вроде похожую картинку дает...

ARA 28.11.2013 22:35

Ответ: Clear Engine (Понятный движок)
 
Цитата:

Сообщение от pozitiffcat (Сообщение 270762)
да вот и сам непойму всеже, правильно или нет, хотя блендер вроде похожую картинку дает...

Хотя смарю щас в юнити примерно также работает)
Вот что реально напрягает - спекуляр. Ваще что такое спекуляр? Это фэйклвое заблюреное отражение источника света на поверхности. А как предметы в зеркале отражаются, представь? Точно не так как у тебя в семпле. Щас блик как-то странно тянется к центру нижней границы экрана.
В юньке спек выглядит так:


Часовой пояс GMT +4, время: 01:15.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot