Извлечь координаты вокселя из файла

Я делаю игру на Unity C#, и мне нужно извлечь позицию вокселя (и, в идеале, цвет) из моего MagicaVoxel. редактор, который сохраняет свои файлы в .vox и может экспортировать в несколько других форматов.

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


person Alex P.    schedule 04.09.2017    source источник
comment
У вас уже есть макет файла, в котором более или менее четко указано, как устроены данные. Почему вы ожидаете, что его будет читать текстовый редактор? Это просто куча байтов, упакованных в более крупные куски.   -  person Milster    schedule 04.09.2017
comment
@Milster Я думал, что если ни один из моих тестовых редакторов не сможет его прочитать, моя программа не будет работать в эфире ... У меня нет большого опыта чтения из таких файлов, и я не знаю, как использовать макет файла, если Во-первых, я не могу это прочитать ... может быть, вы могли бы написать ответ и развеять мое замешательство? Спасибо   -  person Alex P.    schedule 04.09.2017
comment
Я не думаю, что на этот вопрос можно ответить в нынешнем состоянии. Хотя исходные данные не самые сложные, это, вероятно, непростая задача для новичка. Упомянутый вами формат .vox сохраняет данные кусками (каждый раз сначала указывается, сколько данных поступает, а затем как они будут сохранены). Вам нужно будет прочитать данные побайтно, точно в заданном формате. В нынешнем виде я не могу ответить на вопрос, так как я не знаю, как вы хотите, чтобы результат выглядел, и поскольку это означало бы массу работы для меня, которая на самом деле должна быть вашей.   -  person Milster    schedule 04.09.2017
comment
Я был бы счастлив приложить усилия, чтобы узнать это, я просто потерялся и не знаю, что искать. Не могли бы вы порекомендовать какие-либо учебные ресурсы или ключевые слова?   -  person Alex P.    schedule 04.09.2017
comment
Боюсь, нет ключевых слов. .vox format, на который вы ссылаетесь, может ответить на все ваши вопросы, если вы его понимаете (без обид). Он описывает, как упорядочены байты и как вы можете их интерпретировать, чтобы построить интерпретатор/преобразовать его в нужный формат. Рассказать вам, как и что делать в столь небольшом количестве символов, как это, для меня невозможно, может быть, кто-то другой сможет.   -  person Milster    schedule 04.09.2017


Ответы (1)


Вот ответ, если кому-то все еще интересно: с опцией экспорта вы можете сохранить его в формате .ply (нажмите «точка» - экспортировать облака точек). Если вы откроете файл .ply в текстовом редакторе, вы найдете координаты и соответствующие значения RGB.

person ari    schedule 28.03.2019