|
|
![]() |
#1 |
Местный
Регистрация: 12.07.2015
Сообщений: 417
|
![]()
Кол-во разделительных пробелов между значениями не принципиально. Парсер строк всё равно сплитит сроку по первому, а остальные отбрасывает. Т.е., они в тексте только место занимают.
![]() Аналогично и с числами с плавающей точкой. Для печати значений я использую стандартную процедуру форматирования. Ей на вход передаётся строка формата и она самостоятельно, под эту строку формата, формирует результат. Для FP использую "%.6g". Т.е., выводится до шести знаков после запятой, не значащие нули отрезаются. Опять же, парсер разделяет значения по разделителю (у нас это пробел) и потом программа конвертирует получившуюся строку в требуемый для секции тип. Если секция должна содержать целые типы - конвертит в целые, если дробные - в дробные. При конвертации дробных, для процедуры, не имеют значения не значащие нули, для неё 1.30 и 1.3 полностью эквивалентны. Точно также эквивалентны и 1 и 1.0, она одинаково их переведёт в число с плавающей точкой нужной точности, требуемой для той, либо иной секции. Ведь о том, какую точность использовать, в строке информации нет ![]() В принципе, я могу задать другой формат для вывода и принудительно выводить значения для каких-то секций в другом виде. Например, всегда выводить N знаков после запятой (6-7), независимо от того, значащие они, либо нет. Но практического смысла в этом не будет, парсер всё равно незначащие нули скипнет. ![]() |
![]() |
![]() |
![]() |
#2 |
Местный
Регистрация: 18.01.2012
Сообщений: 814
|
![]()
Задача распаковщика BIN-mesh -> TXT-mesh в первую очередь, в том чтобы распакованный текстовый меш максимально точно соответствовал оригинальному файлу. Даже в мелочах типа числа пробелов, количестве чисел после запятой и прочим мелочам.
Конвертеру вьюер не особо и нужен. Должна быть и консольная версия для пакетной обработки файлов. В первую строку текстового меша записывайте информацию о том, какой утилитой был распакован файл, типа // Generated by N79Tool32 v1.17 указывайте версию программы, разрядность программы и т.п в секцию хуков начинайте со строки содержащей комментарий [HookLoc] // each row is locator (matrix): axisX axisY axisZ translation. В конце файла рудиментная строка ; eof и всё. ваш текстовый меш будет максимально приближен к исходному оригинальному мешу. Будет корректный исходник с ним уже можно проводить операции изменения дистанции лодов, переименовывать коллижены или материалы, добавлять или править положение хуков, изменять имена хуков и.т.п. |
![]() |
![]() |
![]() |
#3 | |
Местный
Регистрация: 12.04.2009
Сообщений: 5,102
|
![]()
ну рас возвращаемся в русло беседы ... то я хотел бы ещё раз обратить внимание на вот этот пост Ут2 ... это реально нужная функция ...
Цитата:
__________________
ищется идейный Программер ) |
|
![]() |
![]() |
![]() |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|