Im-dex / xray-162

XRay engine 1.6.2 (S.T.A.L.K.E.R: Call of Pripyat) evolution
Apache License 2.0
46 stars 11 forks source link

Update xml parser #3

Closed Im-dex closed 7 years ago

Im-dex commented 7 years ago

Update tinyxml to version 4.*, or replace with faster xml parsing library.

ForserX commented 7 years ago

4.? Можно ссылку? Максимум 2.6. нашёл, вкатал, вроде работает.

Xottab-DUTY commented 7 years ago

Я так понимаю имелся ввиду TinyXML2, можно найти тут: https://github.com/leethomason/tinyxml2/releases

Чтобы его поставить, надо побольше работ провести, там же API поменялся =)

ForserX commented 7 years ago

Благодарю. Займусь на досуге. Я с сорсфордж брал.

ForserX commented 7 years ago

Не особо много работ на стадии компиляции. Единственно немного тупил над альтернативой IterateChild, но потом костыль написал. В одном месте можно просто заменить на FristChildElement(). До тестов не дошёл, ноут сел.

ForserX commented 7 years ago

Чтобы его поставить, надо побольше работ провести, там же API поменялся =)

Ну... В целом, я запустил двиг. Была проблема с одним конфигом, так и не понял, где именно, где-то в mp текстах, ибо m_Doc.Value() в новом tinyxml2 возвращал 0.

https://bitbucket.org/sv3nk/fray/commits/c7829dd7c358e3669c182dd4181ae2c1c88bb61f

Im-dex commented 7 years ago

@ForserX Ну и как оно? По памяти или скорости загрузки поменялось что-либо?

ForserX commented 7 years ago

Даже не смотрел, просто устал от бесплодных попыток профиксить х64, решил отвлечься. Выбор пал на обновление парсера.

ForserX commented 7 years ago

Кст, тут по парсеру ещё апдейт. (https://github.com/ForserX/FRay-Project/commit/c3429241a4c1bc38001df0f69bfd099e3537eff7) ((да-да, я переехал на гитхаб с битбакета))

Xottab-DUTY commented 7 years ago

@ForserX жалко, что кодировка слетела. Ты репо на bitbucket, надеюсь, не удалил? А то ж не прочесть будет что там было сделано)

ForserX commented 7 years ago

Не удалил. P.S. В основном кодировка при работе с ветками слетела. P.S.S. ну и у первых коммитов. Но там ерунда.

Im-dex commented 7 years ago

@ForserX С новосельем :) Спасибо за ссылку, но я выкинул tinyxml и уже почти переехал на pugi

ForserX commented 7 years ago

@Im-dex, хм, интересно будет глянуть. Может к себе на макросы потом повешу.

Xottab-DUTY commented 7 years ago

Интересно было бы замерить по производительности pugi и tinyxml2. Замерить как они ведут себя именно в сталкере)

Im-dex commented 7 years ago

@Xottab-DUTY На глаз разницы не видно, да и в сталкере не так много xml, чтобы получить какой-то ощутимый профит

ForserX commented 7 years ago

@Im-dex, профилировщик MVS юзни.

Xottab-DUTY commented 7 years ago

@Im-dex А по удобности для программиста?)

Im-dex commented 7 years ago

@ForserX Миллисекунды мне не особо интересны

@Xottab-DUTY Конечно pugi удобнее: не надо с указателями возиться, есть опции парсинга, хорошая дока + есть SAX XPATH из коробки

Xottab-DUTY commented 7 years ago

@Im-dex спасибо) Если руки дойдут, тогда перейду у себя на pugi. Ещё вопросик: ничего не скажешь по поводу rapidxml?

Im-dex commented 7 years ago

@Xottab-DUTY Не пользовался им, но вроде весьма популярный

Xottab-DUTY commented 7 years ago

@Im-dex надо будет и с ним сравнить)

ForserX commented 7 years ago

@Im-dex, популярный или нет, но я от лени в свой двиг затащил Тини от xr, т.к. было лень качать и изучать что-то другое. Не судите строго :)