SkepticalFox Posted February 28, 2017 Author Share Posted February 28, 2017 (edited) . Edited May 22, 2022 by SkepticalFox @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 1, 2017 Share Posted March 1, 2017 Ок, намёк понят. @ Quote Link to comment Short link Share on other sites More sharing options...
SkepticalFox Posted March 1, 2017 Author Share Posted March 1, 2017 (edited) . Edited May 22, 2022 by SkepticalFox @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 1, 2017 Share Posted March 1, 2017 Не, такого нет точно. @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 3, 2017 Share Posted March 3, 2017 (edited) https://kt.pe/kaitai_struct_webide/ Вот удобная веб-программка для реверса) Посмотрел там - заинтересовала int8=64 в первой строке. В остальном смысла не вижу. Java не знаю. Попробовал перегнать в универсальный декодер - фигня. Сейчас unpack'ом попробую поработать. P.S. я с анпаком не работал, попробую изучить сначала распаковщик спейс.бин. Подскажи, что значат эти строки: http://joxi.ru/KAxNKKgcxQvwm8 PPS Разобрался.https://docs.python.org/2/library/struct.html#format-characters Понял кое-что! http://joxi.ru/82QEggWUXgqj2d Теперь надо найти зависимость между int'ами и всем блоком. PPPS. 3f - не признак конца блока, а его длина... Так. Один блок - 64 байта. Зачем тогда длину блока в конце указывать?.. Содержимое блока состоит из float'ов. Задача упростилась. http://joxi.ru/zANGNNQs3gMer9 Понял. Первые 4 int'а - данные о блоках. Первый - длина первого блока - 48 байт. Второй - 0 - хз. Третий - 63 - наверное, длина последующих блоков, хотя я не уверен. Четвертый - 70 - тоже не знаю. Edited March 3, 2017 by Pavel3333 @ Quote Link to comment Short link Share on other sites More sharing options...
SkepticalFox Posted March 3, 2017 Author Share Posted March 3, 2017 Четвертый - 70 - тоже не знаю.Ну так-то все это очевидно. Вопрос в самом смысле чисел в блоке с данными, а не в дескрипторе блоков - они универсальны. @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 3, 2017 Share Posted March 3, 2017 Часть с данными - полностью float'ы, хотя встречаются 'HMM=[float]' и подобное. Ну так-то все это очевидно. Для кого как... Я вот впервые копаюсь в таких файликах, для меня это открытие. @ Quote Link to comment Short link Share on other sites More sharing options...
SkepticalFox Posted March 3, 2017 Author Share Posted March 3, 2017 (edited) полностью float'ыэпсилон в float'е говорит о том, что это и не float вовсе) там вперемешку что-то... вот для этого мне и нужны старые ангары... Edited March 3, 2017 by SkepticalFox @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 3, 2017 Share Posted March 3, 2017 (edited) эпсилон в float'е говорит о том, что это и не float вовсе)Сдаюсь!Не думал, что всё до такой степени сложнааааа http://joxi.ru/RmzNaavcEl84mO ...такое чувство, что "?" - разделитель... Edited March 3, 2017 by Pavel3333 @ Quote Link to comment Short link Share on other sites More sharing options...
SkepticalFox Posted March 3, 2017 Author Share Posted March 3, 2017 (edited) Сдаюсь! Не думал, что всё до такой степени сложнааааа Да не. Все очень просто. Идут два uint32, которые содержат информацию о размере блока и о количестве блоков этого размера. 48 0 - блоков с размером 48 нет, т.к. второе число 0. 64 70 - размер 64, блоков 70. после 64*70 снова идет блок с 2 числами ну и так далее... Думаю каждое из чисел 48, 64, ... означает тип ламп - spot, omni, ... Edited March 3, 2017 by SkepticalFox @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 3, 2017 Share Posted March 3, 2017 (edited) Аааа, спасибо. Думаю каждое из чисел 48, 64, ... означает тип ламп - spot, omni, ... Ну да, их два всего. Но они могут быть target или free. В таргете должна быть еще позиция пустышки, на которую направляется камера. Я думаю, эти 16 байт выделяются именно для таргет spotlight/omnilight. А еще надо проверить, может ли быть в BigWorld'е SunLight... А кстати, почему последний блок такой огромный? Намекает на конец файла... Edited March 3, 2017 by Pavel3333 @ Quote Link to comment Short link Share on other sites More sharing options...
SkepticalFox Posted March 3, 2017 Author Share Posted March 3, 2017 (edited) А еще надо проверить, может ли быть в BigWorld'е SunLight...Чую ночью проверю. Кстати, можно просто в space.bin инжектить новые значения для ламп и смотреть что изменится) Но вроде некоторые лампы только на улучшенном графоне видны... Edited March 3, 2017 by SkepticalFox @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 3, 2017 Share Posted March 3, 2017 инжектить новые значения для ламп и смотреть что изменится) Ну да) но их там дофига, надо уметь усмотреть изменения. Чую ночью проверю. А ты на малиновке проверь. Или другой карте. Если его нет - то можно смело сказать, что движок санлайтом управляет. ПС. @ Quote Link to comment Short link Share on other sites More sharing options...
SkepticalFox Posted March 3, 2017 Author Share Posted March 3, 2017 (edited) . Edited January 20, 2018 by SkepticalFox @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 3, 2017 Share Posted March 3, 2017 (edited) Во, видишь? Там могут быть 80-байтные, 48-байтные и 64-байтные секции. Но в малиновке их нет, следовательно, движок сам управляет SunLight'ом. ...и восьмибайтные бывают!? не заметил с первого раза. Придумал. Давай возьмем и удалим все секции кроме одной? А заголовок есесно поправим. Ну а конец тоже надо оставить, а то боюсь клиент крашиться будет. Edited March 3, 2017 by Pavel3333 @ Quote Link to comment Short link Share on other sites More sharing options...
SkepticalFox Posted March 3, 2017 Author Share Posted March 3, 2017 (edited) . Edited January 20, 2018 by SkepticalFox @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 3, 2017 Share Posted March 3, 2017 (edited) PS. выяснил, что: с 56 до 60 байта 100% float. После 'НММ=' всегда идет float... либо int, надо выяснить. Также есть 'НМL=', аналогично с пунктом выше. 56-60 байты ?сортируют? строки. Т.е. если эти байты - '00HB', то они обязательно будут иметь вид . Все байты до выделения разные. Дай-ка я составлю табличку. Погоди немного. Edited March 3, 2017 by Pavel3333 @ Quote Link to comment Short link Share on other sites More sharing options...
SkepticalFox Posted March 3, 2017 Author Share Posted March 3, 2017 (edited) Все байты до выделения разные.Это как <node>...<row3>...</row3></node> Там тоже всегда одно и тоже. Edited March 3, 2017 by SkepticalFox @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 3, 2017 Share Posted March 3, 2017 (edited) Это как <node>...<row3>...</row3></node> Там тоже всегда одно и тоже. А, ну и отлично. Сейчас рассортирую все и будем гадать.:) Во! Держи! BWLC.zip Странно, но в последних строках не хватает восьми байт, чтоб всё было как выше. http://joxi.ru/bmonGGBCzv7Xry Сверху есть различия для лампы с 56-60 байтами "А" (00 00 а0 41) Остальное сверять лень. Я немного подустал, пойду сделаю glossiness map для своего божественного патрона. Edited March 3, 2017 by Pavel3333 @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted March 5, 2017 Share Posted March 5, 2017 (edited) Сейчас попробую запихнуть только секции A. Затести, плес. Смещения учел. Длжно быть освещение только А, либо вылет.space.zip Исправил сейчас, перекачай. Edited March 5, 2017 by Pavel3333 @ Quote Link to comment Short link Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.