Достойный формат файла для моей карты сохраняет - PullRequest
1 голос
/ 04 марта 2012

Я создаю редактор карт для игры XNA, над которой я работаю.

По сути, все, что нужно редактору для сохранения, - это X мозаики, Y мозаики, Z мозаики, значение TX и значение TY, связанное с плиткой.Это всего 5 значений на плитку (будет около 20000 плиток на карту).Я собирался сохранить файл просто как байты, но байты могут идти только к 256, и этого недостаточно для покрытия некоторых (наиболее реально) плиток.

Есть ли какой-то формат сохранения, уже существующийчто позволит мне легко сохранить эти 5 (возможно, более поздние) значения и легко их прочитать?Я делаю все это на VB.net, поэтому я был бы признателен за то, что вы предоставили мне, по крайней мере .net (я в порядке с любым .net, я могу конвертировать, и, фактически, мой проект на самом деле оба C # .netи VB.net, поэтому у меня не должно быть проблем с этим).

Ответы [ 4 ]

2 голосов
/ 04 марта 2012

Другой вариант - формат protobuf.Это чистый двоичный код, переносимый, быстрый и поддерживает управление версиями из коробки.Как правило, это хороший выбор для ваших целей.

По сравнению с XML вы, вероятно, получили бы файлы гораздо меньшего размера и более быструю загрузку карт.

Есть хорошая библиотека для .NET: http://code.google.com/p/protobuf-net/

2 голосов
/ 04 марта 2012

посмотрите на http://code.google.com/p/protobuf-net/

Я использую это в чем-то, что я сделал, и это очень эффективно.

1 голос
/ 04 марта 2012

Я сохраняю свои карты в XML, файлы могут стать большими (что может быть преодолено с помощью обертки сжатия), но они не только будут удобочитаемыми / редактируемыми человеком, но также легко пишут различные инструменты на разных языках, так как большинство поддерживает некоторая форма редактирования XML или даже отображение XML на объект.

Удачи!

0 голосов
/ 04 марта 2012

Поскольку вы по существу храните таблицу «строк» ​​с одинаковым форматом, как насчет простого файла с разделителями-запятыми?

Не такой компактный, как "настоящий" двоичный файл, но и не такой расточительный, как XML. Довольно легко добавлять новые «столбцы» и вообще легко работать с ними.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...