Я пытаюсь экспортировать некоторые сетки, созданные в Away3D (с Extrude Path), в файл .obj, который я могу использовать в Three.js. Мне удалось экспортировать геометрию, но можно определить UV-отображение. Вот что я получил до сих пор:Сохранение сетки Away3D для Wavefront .obj
private static function getObjFile(geometry:Geometry):String {
var objFile:String = "" ;
var i:int = 0;
var pri:int = 0;
var sg:SubGeometry;
var b:uint = 0;
for each(sg in geometry.subGeometries){
objFile += "\no";
i = 0;
for each(var v:Number in sg.vertexData){
if(i%3 == 0) objFile += "\nv";
i++;
objFile += " " + setPrecision(v, 1000);
}
i=0;
for each(var v:Number in sg.UVData){
if(i%2 == 0) objFile += "\nvt";
i++;
objFile += " " + setPrecision(v, 1000);
}
b = 0;
for each(var ind:uint in sg.indexData){
if(b%3 == 0) objFile += "\nf";
b++;
objFile += " " + String(ind + 1 + pri)+"/"+String(ind + 1 + pri);
}
b = 0;
for each(var n:Number in sg.vertexNormalData) {
if (b % 3 == 0) objFile += "\nvn";
objFile += " " + setPrecision(n, 1000);
b++;
}
pri = i /3;
}
return objFile;
}
Что я делаю неправильно? Мне нужна геометрия и UVs ... пока я сохраняю только первые две петли, я получаю действительные объекты с геометрией и без UV. Если добавить UV-фильтр ... Ультрафиолетовый буфер по какой-то причине недействителен.
Та же ошибка: один или несколько нормалей буферы были либо пустыми, либо недействительно (1). – Iansen