Недавно я сделал окунуться в DirectX и немного поработал с Anim8or, и обнаружил несколько типов файлов, которые модели могут экспортировать в текстовые. Особенно я попал в файлы VTX. Я научился разбирать некоторые из них, но я, очевидно, пропустил несколько вещей.. Формат файла VTX?
Начинается с .Faceset
с немедленно (в той же строке), за которой следует количество ячеек в файле.
Для каждой сетки, есть один .Vertex
участок и один .Index
раздел в таком порядке и первая пара .Vertex
/.Index
секций являются первой сеткой, вторым набором является второй сеткой и так далее, как можно было ожидать.
В разделе .Vertex
файла содержится 8 номеров в строке и неопределенное количество строк спецификации файла, просто Anim8or быть добрым). Первые 3 числа соответствуют координатам X, Y и Z для определенной точки, которая позже будет использоваться как вершина, а другая 5 я понятия не имею. В большинстве случаев последние 2 числа равны 0, но я заметил, что это не ВСЕГДА, правда, обычно это правда.
Далее идет соответствующий раздел .Index
. Этот раздел имеет 4 номера. Первые 3 являются ссылочными номерами ранее указанным вершинам, а три точки обозначают треугольник в модели. 0 означает первый упомянутый Vertex, 1 означает следующий и т. Д., Как массив с нулевым значением. Четвертый номер всегда будет -1, я не могу понять, какое значение у него есть, и я не могу обещать, что он ВСЕГДА -1. Если вы не можете сказать, я не слишком уверен в этом типе файла.
В этом файле также есть другая информация, которую я сейчас предпочитаю игнорировать, потому что я новичок и не хочу слишком сильно усваивать вещи. Такой, как после каждого .Index
раздела:
.Brdf
// Ambient color
0.431 0.431 0.431
// Diffuse color
0.431 0.431 0.431
// Specular color and exponent
1 1 1 2
// Kspecular = 0.5
// end of .Brdf
Мне кажется, речь идет о поверхности сетки только что описали. Но это не нужно для размещения ячеек, поэтому я сейчас проехал мимо него.
Переходя к реальной проблеме ... Я могу загрузить VTX-файл, когда в VTX-файле есть только одна сетка (это означает, что .FaceSet
равно 1). Я могу почти успешно загрузить файл VTX с несколькими сетками, каждая сетка успешно структурирована, но неправильно размещена по отношению к другим сеткам. Я загрузил модель AT-AT из потока Anim8or на форуме, и он состоит из 344 сеток, когда я загружаю файл только с использованием спецификаций, о которых я упоминал до сих пор, похоже, что AT-AT взломан, как будто это была диаграмма того, как это сделать (при загрузке в Anim8or все части близки и напоминают полностью собранный AT-AT). Все части ориентированы правильно и имеют одно и то же направление вверх, но между кусками имеется дополнительное пространство.
Знает ли кто-нибудь, как правильно читать VTX-файл? Или знаете веб-сайт, который объяснит, что означают эти другие цифры?
Edit:
Расширение файла .VTX используется для большого количества различных вещей и имеет много различных структур, в зависимости от того, что предполагаемое использование. Valve, Visio, Anim8or и некоторые другие используют VTX, меня интересует только VTX-файл, который экспортирует Anim8or, и структуру, которую он использует.