опаньки... |
[Jul. 6th, 2019|07:10 am] |
нашёл старый-старый баг (красиво посаженый лично мной почти в самом начале ковыряния в коде): ajbsp внутри себя хранит параметры splitting plane для бсп-ноды как интегеры. ойбля.
подробнее: бсп-ноды в думе хранят вершины лайндефа, который был использован для сплита. из этих вершин вавум делает плоскость, которая потом используется при обходе дерева. и всё бы хорошо, но… в оригинальном формате уровня вершины всегда имеют целочисленные координаты. а вот в UDMF координаты могут быть дробными. однако ajbsp всё равно пихает их в инты. после чего вавумчик использует эти округлённые координаты для вычисления коэффициентов уравнения плоскости, и закономерно получает поебень.
штука в том, что standalone ajbsp не умеет в UDMF, поэтому Эндрю не парился. всё остальное там даблы, а конкретно эти координаты нигде не используются всё равно, и смысла их хранить даблом не было. когда я перетаскивал ajbsp внутрь вавумчика, я не обратил внимания. то, что UDMF-карты считаются как пиздец — это я знал. но не врубался, где именно. то, что это от округлений — было ясно, но я читал код, везде даблы — и не понимал. да и вообще я не очень понимал тогда, как работает вавумов рендер.
а сегодня посмотрел внимательно — и ёлы ж ты палы, блядь! быстренько сделал даблами — и херак! UDMF-карты, которые раньше адово глючили, внезапно стали нормально рисоваться и ходиться. заодно там был ещё один мелкобаг с лишним вызовом «чистилки» дерева, которая нужна только для негл-нод. также это, скорее всего, был и источник странных багов с неправильным определением текущего субсектора (оно тоже делается по bsp).
возможно, я ещё что-то проглядел, но уже этот фикс починил овердофига.
также сделал простенькое рихтование полученых вертексов в 16.16 — возможно, это починит рандомные «прострелы» в клипере (а может и нет, хуй знает пока). в принципе, можно и более грубо рихтовать, наверное — но я не уверен. |
|
|
Comments: |
Это вот про эти дыры в ХП?
| From: | id0 |
Date: | July 6th, 2019 - 08:34 am |
---|
| | | (Link) |
|
не, про дыры в хэпэ это гл_дравдистанс, если я правильно понимаю, можешь попробовать поменять
в файле конфига или в настройках есть?
| From: | ketmar |
Date: | July 23rd, 2019 - 03:04 pm |
---|
| | | (Link) |
|
в консоли есть. меню опций — это такой кастрированый метод менять цвары, больше оно ровно ничего не делает. всё, что в консоли наменялось — то спокойно схоронится в конфиг по выходу. и автодополнение в консоли есть, конечно.
From: | (Anonymous) |
Date: | July 6th, 2019 - 05:36 pm |
---|
| | | (Link) |
|
gl_max_draw или как-то так
From: | (Anonymous) |
Date: | July 6th, 2019 - 11:52 am |
---|
| | | (Link) |
|
Ты крут!
From: | (Anonymous) |
Date: | July 6th, 2019 - 07:23 pm |
---|
| | | (Link) |
|
это нифига не шутка. | |