надо думать более лучше |
[Feb. 26th, 2019|03:15 am] |
естественно, с фрустумом всё в порядке, надо меньше в глаза ебаться: проблемы с логикой проверок. а жаль, всё казалось так просто… |
|
|
тем не менее... |
[Feb. 26th, 2019|06:12 am] |
перестал пытаться умничать, и ввёл в клипер полный фрустум, которым проверяю видимость субсектора (по bounding box). вдобавок к заработавшим обсечениям по вертикали получил ещё один весьма весомый плюс: когда камера смотрит (почти) в пол-потолок, 1d клипер не может обсечь геометрию за спиной, из-за чего получаем парадоксальную ситуацию: на экране видно почти ничего, а обрабатывается намного больше, чем если просто смотреть прямо (все 360 градусов обзора). теперь нормально обсекает, и смотреть в пол больше не больно.
не помню вот, обсекает ли стенсильный свет субсекторы за bounding box светильника. если нет — надо срочно сделать. должно ещё немного ускорить: там такое место, что чем больше выкинем — тем лучше, потому что дикий overdraw. |
|
|
в дополнение к прошлому |
[Feb. 26th, 2019|09:23 am] |
янихуянепонял, что там янис с фаербрандом пытались сделать в стенсильном клипере, поэтому просто повыкидывал это всё нахуй — и заменил мегатупорылым тестом «sphere vs aabb» (и sphere vs plane). удивительным образом фпс на старте e1m1 подпрыгнул со старых ~39-42 до ~57-59. скорее всего потом какая-то херня повылазит, но пока вроде бы всё логично и сильно шустрее.
надо ещё сделать нормальный тест на то, может ли динамический источник света вообще тени сгенерировать, и скипать shadow volumes для таких. сейчас тест есть, но очень кривой, и много случаев определить не может. |
|
|