Всем привет, нашел в интернете модифицированную версию BSPC - MBSPC.
Увеличил лимиты HL_MAX_MAP_PLANES, HL_MAX_MAP_NODES и т.д. в mbspc/l_bsp_hl.h
И он начал практически все CS карты конвертировать в .map
Только вот проблема есть с align текустурами т.е. в редакторе (Jackhammer) по-умолчанию у всех текстур не стоит никакой align (Face/World), как я понял это задается где то тут:
(mbspc/map.c)
Дело в том, что это необратимое действие кагбы. Ну то есть не разложить обратно текстурную матрицу на вот эти сдвиги и скейлы, потому что оно уже умножено и прибавлено. Можно только эмпирически попробовать подобрать эти значения, я где-то видел в сорцах третьего дуума нужную функцию. И еще в q3map2 вроде бы. Но задача нетривиальная, сразу говорю.
~ X ~ писал: lolwtf?!?! открыты исходники bspc!?! Я могу его дебажить!?!?!
Исходники bspc открыты с 2005-го Карл! В комплекте с сорцами ку3.
Но вы же все умные, у вас же всё говно и анальщина, поэтому вы ничего не знаете и ничем не интерисуетесь и по праву получаете наградную медаль великого слоупока всех времён и народов!
Дядя Миша внезапно, никогда квакой не интересовался. Особенно третьей.
Для меня БСПЦ - это а) консольная закрытая мегахитрая утилита, которой можно разобрать халвокарты чтобы хотя бы посмотреть, "как это сделано", б) ГУИшная обёртка к ней (WinBSPC). Причём обе страшно глючные, вылетучие, тормозные и на половине карт не рабочие в принципе. Если это из комплекта сырцов КУТРИ - я удивлён.
~ X ~ писал: Для меня БСПЦ - это а) консольная закрытая мегахитрая утилита, которой можно разобрать халвокарты чтобы хотя бы посмотреть
BSPC - это генератор AAS-файлов для навигации ботов третьей кваки.
Диканпил первохалфовских карт туда был всунут по остаточному принципу.
Больше скажу - там этот диканпил и нужен вот именно для анализа геометрии этим генератором вейпоинтов. Потому что надо всё знать и всем интерисоваться, если хочешь думать, что ты что-то контролируешь. Иначе всё что тебя ждёт - это золотая медаль почётного слоупока из нержавеющей стали.
Дядя Миша я не интересуют играми и конторами, к которым у меня резко негативное отношение - что уж тут. Спасибо за инфу. Будут сырцы - может, смогу и починить их чтоб не крошился.
~ X ~ писал: Дядя Миша я не интересуют играми и конторами, к которым у меня резко негативное отношение - что уж тут. Спасибо за инфу. Будут сырцы - может, смогу и починить их чтоб не крошился.
~ X ~ Мне кажется нету т.к. это вроде как модифицированная версия последнего BSPC от id
Добавлено 09-08-2016 в 13:39:
Цитата:
When MBSPC is used for converting BSP files to MAP files, the correct texture name is written for every brush side. However, texture alignment info (shift, scale, rotation) is not written to the MAP file. It is not trivial to obtain this info from the BSP, and I did not need it when I coded this modification, sorry. If you need this functionality, add the necessary code.
Судя по всему автор модификации мог но не стал добавлять "texture alignment info"
Дядя Миша, Вот эта функция про которую вы говорили? github (ComputeAxisBase)
ComputeAxisBase()
>>computes the base texture axis for brush primitive texturing
т.е. для face-align
а было
TextureAxisFromPlane()
>>determines best orthagonal axis to project a texture onto a wall
world align
я б выбрал test case поочевиднее, например кирпич с tex fit, повёрнутый по всем осям (с текстур локом)
не очень понятно, содержит ли map_texinfo дату про конкретный фейс (не похоже на то, судя по лимиту)
вероятно там надо искать соответствующий фейсу треугольник для начала и только потом выковыривать матрицу
Дядя Миша , можешь вспомнить, где именно в доом3 ты видел такой код?
Пошерстил DOOM-3-master, DOOM-3-BFG-master, iod3-master на предмет 'stupid', 'incredibl', 'silly', 'retard'; ничего по теме.
Затрудняюсь даже предположить, где это может быть.
Впрочем, если 'stupid', то может быть где угодно
Добавлено 10-08-2016 в 11:23:
Хотя, вот кое-что в EditorBrushPrimit.cpp:
FaceToBrushPrimitFace(face_t *f)
// we have parsed old brushes format and need conversion convert old brush texture
// representation to new format
Нюанс только в том, что используются специальные s,t для простоты, так что для произвольных из bsp сие не сгодится.
Но мне вопрос больше интересен как раз для делания интересных дел, а не тыренья чужих алигнов, поэтому данная математика может оказаться полезной, дякую.