Pavel3333 1,147 #440185 Posted September 5, 2018 @MasterModeley а почему удалили свой репозиторий? был очень полезный материал... Quote Share this post Link to post Short link Share on other sites
MasterModeley 29 #440196 Posted September 5, 2018 35 минут назад, Pavel3333 сказал: @MasterModeley а почему удалили свой репозиторий? был очень полезный материал... Принцип, который там использовался, был не совсем правильный. После очередного обновления танков всё порушилось. Как уже писал чуть выше, правильная и полная информация находится в репозитории https://github.com/blueskythlikesclouds/TagTools 1 Quote Share this post Link to post Short link Share on other sites
Pavel3333 1,147 #440217 Posted September 6, 2018 (edited) @MasterModeley а вообще, из этих файлов можно выделить модель или только данные по коллизиям? Edited September 6, 2018 by Pavel3333 Quote Share this post Link to post Short link Share on other sites
MasterModeley 29 #440222 Posted September 6, 2018 56 минут назад, Pavel3333 сказал: @MasterModeley а вообще, из этих файлов можно выделить модель или только данные по коллизиям? Модели бронирования, которые у меня на сайте, как раз выделены из этого файла. Это, по сути, обычная 3D модель с вершинами и поверхностями, в которой вместо цвета и текстур прописаны их физические параметры. Quote Share this post Link to post Short link Share on other sites
Pavel3333 1,147 #440226 Posted September 6, 2018 @MasterModeley глянул репозиторий, а откуда ноги растут у импортов типа <Common/Base/Config/hkProductFeatures.cxx>? Это части самого Havok'а? Где их можно найти? :) Quote Share this post Link to post Short link Share on other sites
MoD 32 #443882 Posted October 24, 2018 Раскурил эти TagTools.py Забавная штука. Блок TSTR == type strings, походу описывает названия типов(классов) Блок TNA1 совпадает по структуре с описанным в в TNAM из TagTools (ну почти совпадает, одна из записей генерит номер строки очень большой, видимо надо какую-то маску применять, а всё остальное, похоже, что вычитывает правильно) Блок TDBY - связан с FSTR (field strings), описывает структуру класса записанного в TNA1, но явно не совпадает с тем, что описано в TagTools.py. Вообще если интерпретировать в лоб, берём запись из ITEM блока, читаем нужное количество данных (в которых ещё куча выравниваний) получается странная ерунда, из-за того, что элементы не всегда одного размера (выравнивания?) И эта упаковка бесит, когда не понятно сколько байт отводится под каждый элемент. А если собирать модели, на примере ИС7, у него ~589 записей, которые описывают вершины, и только 191 запись которые укладывают эти вершины в полигоны. Кстати, кто-то осилел этот блок TBDY? Хотя, если присмотрется к этому TagTools - в принципе, оно норм читает данные, по крайней мере, похоже, что всё ОК, и только в одном моменте (надеюсь только в одном) правится добавлением маски. Только надо большая моральная стойкость, чтобы это осилить 1 Quote Share this post Link to post Short link Share on other sites
MoD 32 #444020 Posted October 26, 2018 Да что там за жесть в этом файле творится packedVertices, километр хрен знает чего в открытом виде хранить это норма. А как вершины - так сразу на, "упакованные" Quote Share this post Link to post Short link Share on other sites
MoD 32 #444658 Posted November 5, 2018 @MasterModeley привет, не подскажешь, это хоть правильное направление с хавоком? из packedVertices - выдрать 3 или 4 флоата, которые вершины описывают? 1 Quote Share this post Link to post Short link Share on other sites
MasterModeley 29 #444660 Posted November 5, 2018 (edited) Я не знаю, как и что там на самом деле, но делаю так: для packedVertices по 32 бита данных на вершину = 10 + 11 + 11 $tx = ( ( $packed & 0xFFC00000 ) >> 22 ) / 0x3FF; // $ty = ( ( $packed & 0x3FF800 ) >> 11 ) / 0x7FF; $tz = ( $packed & 0x7FF ) / 0x7FF; для sharedVertices по 64 бита данных на вершину = 22 + 21 + 21 $tx = ( ( $packed >> 42 ) & 0x3FFFFF ) / 0x3FFFFF; $ty = ( ( $packed >> 21 ) & 0x1FFFFF ) / 0x1FFFFF; $tz = ( $packed & 0x1FFFFF ) / 0x1FFFFF; Получаются нормированные координаты. Масштаб и смещение подбирается из параметров 'codecParams' и/или 'domain'. Найди меня в соцсетях или по почте [email protected]. Здесь я бываю редко и не всегда смогу ответить быстро. Edited November 5, 2018 by MasterModeley 1 Quote Share this post Link to post Short link Share on other sites
crazy_F0X 0 #447980 Posted January 3, 2019 (edited) нужно открыть hkx файл. Я со скайрима, если что. Особо в кодинге не разбираюсь, но в цэлом всё написанное понял Edited January 3, 2019 by crazy_F0X Quote Share this post Link to post Short link Share on other sites
MasterModeley 29 #447984 Posted January 3, 2019 (edited) 1 час назад, crazy_F0X сказал: нужно открыть hkx файл. Я со скайрима, если что. Особо в кодинге не разбираюсь, но в цэлом всё написанное понял Возможно, вам подойдёт вот это https://github.com/figment/hkxcmd Edited January 3, 2019 by MasterModeley Quote Share this post Link to post Short link Share on other sites
crazy_F0X 0 #448012 Posted January 4, 2019 Вроде как установил всё, кроме sdk. И только из-за того, что надо обновить opencl, но пишет что он неправильный. (с бубном танцевал, не помогло а как вообще открыть этот hkxcmd? Отдельная прога? У меня sin открывает только visual studio, а запустить не может. Причина в отсутствии sdk как я понял. Так бы и visual открыл. Sdk не могу установить, потому что нужен новый драйвер opencl, драйвер не могу поставить потому что win не принемает. Скорее всего проблема в regsvr32. Или просто под драйвером opencl имеется виду нечто другое, а не opencl.dll. (при копировании в папки замена не предлагалась) Quote Share this post Link to post Short link Share on other sites
crazy_F0X 0 #448031 Posted January 4, 2019 (edited) после обновы win появились в поиске новые сайты с sdk. Скачал, установил, изменил целевую платформу под sdk для visual 2017, сначало было 400+ ошибок. Потом 22. Качать exe отсюда не буду https://www.nexusmods.com/skyrim/mods/1797 когда разархивировал в С, то после сборки вообще 1 ошибка. Ошибка C1083 Не удается открыть файл включение: Common/Base/hkBase.h: No such file or directory, Edited January 4, 2019 by crazy_F0X Quote Share this post Link to post Short link Share on other sites
MoD 32 #520124 Posted June 22, 2022 Немного некропостинга. Давно не открывал коллижены, и теперь коллижены не парсятся. Раньше для парсинга использовал скрипт на пхп, который радостно выдавал геометрию. Недавно, судя по всему, версия хавока изменилась. Появились новые блоки на замену старым (TSTR -> TST1, FSTR -> FST1), и судя по всему в них чутка уехал формат данных. Кто-то что-то может подсказать по этому поводу? 1 Quote Share this post Link to post Short link Share on other sites
MoD 32 #520325 Posted June 24, 2022 Проблема решена. Спасибо @MasterModeley Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,150 #522781 Posted July 31, 2022 (edited) @MoD а для чего парсишь, что ты с этими моделями потом делаешь? Edited July 31, 2022 by StranikS_Scan Quote Share this post Link to post Short link Share on other sites
MoD 32 #522801 Posted July 31, 2022 4 hours ago, StranikS_Scan said: @MoD а для чего парсишь, что ты с этими моделями потом делаешь? В мобильной приложухе база знаний для wot использую. Quote Share this post Link to post Short link Share on other sites
yinx2002 0 #538427 Posted November 15 On 6/6/2018 at 2:20 PM, MasterModeley said: It turned out to be too difficult to solve the problem head-on. I had to get serious about googling. As a result, I found something useful. Here https://github.com/blueskythlikesclouds/TagTools perfectly described what and how is stored in the havok file. With minor fixes, it can digest WoT files. Moreover, in the new version of WoT, the havok format has been cleared of excess. Can you kindly teach me how to do that ? I want primitives_processed as in older version of client. Quote Share this post Link to post Short link Share on other sites