WCD Posted November 8, 2019 Share Posted November 8, 2019 (edited) 06.11.2019 в 16:22, DrWeb7_1 сказал: @Spectr20 , это конспирологи диванные, особая группа в ЦА! О госпади, сказочник распетушился.. Чувствуешь за собой видать что народ понял, что мозги клепал и сопли размазывал так шуточки сейчас уже подхватываешь. Эти конспирологи диванные если, что могут и есть - сказки не рассказывают и не жмут и давно бы выложили хотя бы отличия протокола для обновлений центра от протокола обновлений лаунчера. На будущее, шутки шутками но по волнующей проблемной теме не нужному мозги дурить людям. Edited November 8, 2019 by WCD 6 @ Quote Link to comment Short link Share on other sites More sharing options...
MetOn Posted November 20, 2019 Share Posted November 20, 2019 Да... Я бы хотел потестить, а еще сильнее хотелось бы помочь, но я настолько несведущ в этом, насколько это вообще возможно. Мне 16 лет, я даун и могу решать уравнения на паскале)) @ Quote Link to comment Short link Share on other sites More sharing options...
MetOn Posted December 2, 2019 Share Posted December 2, 2019 Такое ощущение, что я своим сообщением похоронил тему) @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted December 2, 2019 Share Posted December 2, 2019 55 минут назад, MetOn сказал: Такое ощущение, что я своим сообщением похоронил тему) Она изначально была холодна как труп. 1 @ Quote Link to comment Short link Share on other sites More sharing options...
DrWeb7_1 Posted December 2, 2019 Share Posted December 2, 2019 @MetOn , WCD отбил всё желание писать в ней. @ Quote Link to comment Short link Share on other sites More sharing options...
Pavel3333 Posted December 2, 2019 Share Posted December 2, 2019 ЛСД это как раковая опухоль. Везде оставляет метастазы и всё вокруг умирает. 3 @ Quote Link to comment Short link Share on other sites More sharing options...
TULLIE Posted December 30, 2019 Share Posted December 30, 2019 Все эмулятор умер никто делать не хочет? @ Quote Link to comment Short link Share on other sites More sharing options...
SkepticalFox Posted December 30, 2019 Share Posted December 30, 2019 @TULLIE хочешь проспонсировать? Всегда пожалуйста 2 @ Quote Link to comment Short link Share on other sites More sharing options...
Dragon armor Posted February 25, 2020 Author Share Posted February 25, 2020 Пора возобновить тему. Так как изначально было понятно, что это абсолютно не нужная и бесполезная вещь, которую делаю, то до меня дошла интересная идея, что в одну харю, никого и ни о чём не спрашивая, буду делать ещё пару лет до какого-то результата, которым можно поделиться. А спрашивая каждую мелочь, вместо того, чтобы самому найти ответ, можно и ускорить результат. Вдруг у кого-то уже есть ответ на вопрос, на который мне нужно потратить прилично времени. Первое, что нужно было, это вьювер. Так как использовать клиент для тестирования каждой детали - это очень долго. Поэтому прикрутил 3d визуализацию. Пока что только для загрузки геометрии карты. Вид так себе, но большего и не нужно. И тут первый вопрос возник. У меня очень большая надежда на то, что на сервере и в клиенте используются одни и те же статичные модели. Танки-то понятно, что разные, там даже папка с коллизией называется по-другому. А вот если и в статике не так, то совсем плохо. Потому что для физического движка нужна коллизия. И в движке используется bsp версии 2. Кто-то разбирался с этим? Вот что у меня получается при загрузке из файла танка (тут просто показательно). Это дамп загруженной геометрии, если напрямую сохранить. Там ведь bsp-дерево строится. Как это можно привести к какому-то нормальному виду? Боюсь, что придётся собственный алгоритм для обсчёта коллизии добавлять (благо физический движок позволяет это). Второе, это space.bin. Мне много из него не надо. Судя по всему, нужны секции BSMI, BSMO и, возможно, BSMA. Дошёл уже до моделек, которые на карте должны быть. Compiled space utils не полон, эти секции там не расписаны. Явно где-то в них хранится положение на карте. Может кто дошёл до этого, или это уже известо? Где хранятся координаты статики на карте? 4 @ Quote Link to comment Short link Share on other sites More sharing options...
DrWeb7_1 Posted February 25, 2020 Share Posted February 25, 2020 4 часа назад, Dragon armor сказал: Второе, это space.bin. Мне много из него не надо. Судя по всему, нужны секции BSMI, BSMO и, возможно, BSMA. Дошёл уже до моделек, которые на карте должны быть. Compiled space utils не полон, эти секции там не расписаны. Явно где-то в них хранится положение на карте. Может кто дошёл до этого, или это уже известо? Где хранятся координаты статики на карте? Если я правильно понял вопрос, то требуется понять, какая из секций spaces.bin отвечает за статичные элементы на карте? Я как-то пробовал декомпилятором spaces.bin разобрать файл ангара от 0.9.22.0.1, ничего не получилось. А что с растительностью, кстати? Там тоже свои приколы на уровне SpeedTree? @ Quote Link to comment Short link Share on other sites More sharing options...
Dragon armor Posted February 25, 2020 Author Share Posted February 25, 2020 @DrWeb7_1 За статичные элементы, судя по названию, отвечают три перечисленные мной секции. Ещё есть BSGD (Static Geometry Data), но там, как мне помнится, содержится геометрия модели (копия из primitives_processed). Мне же надо координаты статичных объектов найти. Да и со статикой не всё ясно. Где их количество на карте? В какой секции? 38 минут назад, DrWeb7_1 сказал: А что с растительностью, кстати? Пока не занимался этим. @ Quote Link to comment Short link Share on other sites More sharing options...
DrWeb7_1 Posted February 25, 2020 Share Posted February 25, 2020 @Dragon armor , можешь скинуть ссылку на тот декомпилятор, который на секции с этими четырёхбуквенными названиями разбирает файл spaces? Если у меня получится найти время, попробую выяснить, в чём дело. @ Quote Link to comment Short link Share on other sites More sharing options...
Dragon armor Posted February 25, 2020 Author Share Posted February 25, 2020 @DrWeb7_1 У меня самописный на сишке. @ Quote Link to comment Short link Share on other sites More sharing options...
DrWeb7_1 Posted February 25, 2020 Share Posted February 25, 2020 20 минут назад, Dragon armor сказал: самописный Хмм... *почесал затылок* тогда буду ворошить темы на форуме, вдруг найду что-то похожее... @ Quote Link to comment Short link Share on other sites More sharing options...
Dragon armor Posted February 25, 2020 Author Share Posted February 25, 2020 Оказывается, всё под носом было. Позиция находится в секции BSMI. Если смотреть файл bsmi_section.py, то это элемент _01_64, то есть это первый элемент секции размером 64 байта, что соответствует матрице 4х4. Тогда получается, что количество статичных объектов на карте будет равно количеству элементов в секции. 1 @ Quote Link to comment Short link Share on other sites More sharing options...
DrWeb7_1 Posted February 26, 2020 Share Posted February 26, 2020 8 часов назад, Dragon armor сказал: Позиция находится в секции BSMI. Получается, это всё клиентское позиционирование объектов? А серверное позиционирование что из себя представляет в таком случае? На первых страницах темы была карта высот для ландшафта. @ Quote Link to comment Short link Share on other sites More sharing options...
Dragon armor Posted February 26, 2020 Author Share Posted February 26, 2020 33 минуты назад, DrWeb7_1 сказал: Получается, это всё клиентское позиционирование объектов? А серверное позиционирование что из себя представляет в таком случае? Это оптимизация. Для того, чтобы от сервера к клиенту не отправлять те данные, которые никогда не меняются (положение статических объектов, как пример). На клиенте и сервере находятся одинаковые данные (в данном случае, за исключением самих моделей танков, хз что там на сервере). Клиент загружает 3d модель, текстуры, модель коллизии. Серверу нужна только коллизия. Клиенту коллизия тоже необходима, позиционирование башни этому пример, когда мышь наводится на какую-то точку, клиент делает raycast и отправляет серверу позицию, находящуюся на ландшафте или танке (или в условной бесконечности, если в небо навести), в которую он хотел бы, чтобы башня повернулась. Хз понятно объяснил или нет, мне то это всё как-раз понятно и непонятно, что может быть другим непонятно, отсюда следует не совсем понятность, как надо объяснить, чтобы было понятно. 41 минуту назад, DrWeb7_1 сказал: На первых страницах темы была карта высот для ландшафта. Это самое простое. За исключением "дыр" на ландшафте, это первое, что было сделано. @ Quote Link to comment Short link Share on other sites More sharing options...
DrWeb7_1 Posted February 26, 2020 Share Posted February 26, 2020 12 минут назад, Dragon armor сказал: Хз понятно объяснил или нет, мне то это всё как-раз понятно и непонятно, что может быть другим непонятно, отсюда следует не совсем понятность, как надо объяснить, чтобы было понятно. Я прекрасно понял, как ты это объяснил. ;) 13 минут назад, Dragon armor сказал: Серверу нужна только коллизия. То есть, те самые проблемы с призрачными камнями, от которых у игроков горело после патча 1.0, были вызваны некорректной коллизией? @ Quote Link to comment Short link Share on other sites More sharing options...
Dragon armor Posted February 26, 2020 Author Share Posted February 26, 2020 6 минут назад, DrWeb7_1 сказал: То есть, те самые проблемы с призрачными камнями, от которых у игроков горело после патча 1.0, были вызваны некорректной коллизией? Да. Видимый 3d объект и его модель коллизии различались. Не знаю, как так получилось, потому что эти камни - не ландшафт, а объект, которому коллизия назначается ручками. Есть идея, что не ручками, а автоматически. А физический движок оперирует только выпуклыми объектами. И, если у камня был где-то выступ, ниже вогнутость, а ещё ниже опять выступ, то коллизия построится по двум крайним точкам, игнорируя вогрутость. Для пояснения есть такая вот картинка. Если делать автоматическую генерацию коллизии, то, будь это камнем на карте, выстрел ближе к лобовому окну машины привёл бы к тому самому забавному эффекту, противника видим - попадаем в камень. Пока печатал, мысль одна у меня возникла. Получается, что клиент генерировал коллизию правильно, а сервер по какой-то причине нет. Это получается типичный рассинхрон, когда данные на клиенте и на сервере не совпадают. @ Quote Link to comment Short link Share on other sites More sharing options...
DrWeb7_1 Posted February 26, 2020 Share Posted February 26, 2020 6 минут назад, Dragon armor сказал: Это получается типичный рассинхрон, когда данные на клиенте и на сервере не совпадают. Казалось бы мелочь... а вытворяет такое безобразие. Как тогда объяснить поведение орудия танка при прикосновении к другим объектам? Оно ведь проходит сквозь все объекты. @ 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.