Модераторы: Rickert
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> формат файла .X при экспорте, генерация файла *.x из моей проги 
:(
    Опции темы
aalleexxaa
Дата 21.2.2011, 00:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 20.2.2011

Репутация: нет
Всего: нет



Здравствуйте!
Мне для диплома (сфера - машиностроение) нужно написать программку. Частью этой программки является вывод некой детали с ее рельефной поверхность. Так вот для вывода нашел в инете небольшой примерчик, который работает с файлами формата *.x. Т.е. мне сейчас, на данном этапе, нужно сгенерировать файл формата *.x своими силами без участия программ-экспортеров или самого 3Ds Max.
Для пробы нарисовал в максе кубик, экспортироал его и получил вот такой файл:

Код

xof 0302txt 0032
Header {
 1;
 0;
 1;
}
Frame Box01 {
   FrameTransformMatrix {
1.000000,0.000000,0.000000,0.000000,
0.000000,1.000000,0.000000,0.000000,
0.000000,0.000000,1.000000,0.000000,
0.000000,0.000000,0.000000,1.000000;;
 }
Mesh Box011 {
 24;
-16.000000;0.000000;-16.000000;,
-16.000000;0.000000;15.999999;,
15.999999;0.000000;15.999999;,
15.999999;0.000000;-16.000000;,
-16.000000;10.000000;-16.000000;,
15.999999;10.000000;-16.000000;,
15.999999;10.000000;15.999999;,
-16.000000;10.000000;15.999999;,
-16.000000;0.000000;-16.000000;,
15.999999;0.000000;-16.000000;,
15.999999;10.000000;-16.000000;,
-16.000000;10.000000;-16.000000;,
15.999999;0.000000;-16.000000;,
15.999999;0.000000;15.999999;,
15.999999;10.000000;15.999999;,
15.999999;10.000000;-16.000000;,
15.999999;0.000000;15.999999;,
-16.000000;0.000000;15.999999;,
-16.000000;10.000000;15.999999;,
15.999999;10.000000;15.999999;,
-16.000000;0.000000;15.999999;,
-16.000000;0.000000;-16.000000;,
-16.000000;10.000000;-16.000000;,
-16.000000;10.000000;15.999999;;

 12;
3;2,1,0;,
3;0,3,2;,
3;6,5,4;,
3;4,7,6;,
3;10,9,8;,
3;8,11,10;,
3;14,13,12;,
3;12,15,14;,
3;18,17,16;,
3;16,19,18;,
3;22,21,20;,
3;20,23,22;;
MeshMaterialList {
 1;
 12;
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0;;
Material {
 0.752941;0.752941;0.752941;1.000000;;
8.000000;
 0.752941;0.752941;0.752941;;
 0.000000;0.000000;0.000000;;
 }
}


MeshTextureCoords {
 24;
0.500000;0.500000;,
0.500000;0.880952;,
0.880952;0.880952;,
0.880952;0.500000;,
0.380952;0.500000;,
0.000000;0.500000;,
0.000000;0.880952;,
0.380952;0.880952;,
0.500000;0.500000;,
0.880952;0.500000;,
0.880952;0.380952;,
0.500000;0.380952;,
0.880952;0.500000;,
0.880952;0.880952;,
1.000000;0.880952;,
1.000000;0.500000;,
0.880952;0.880952;,
0.500000;0.880952;,
0.500000;1.000000;,
0.880952;1.000000;,
0.500000;0.880952;,
0.500000;0.500000;,
0.380952;0.500000;,
0.380952;0.880952;;
}
}
 }

читая и разбирая этот файл, так и не понял, почему одна и та же точка записана 3 раза (т.е. кубик в максе состоит из 8 Vertex, а в файле записано 24? попытался так сказать упростить файл и попробовать на осное написать свой, соблюдая инструкции (т.е. количество вершин, их координаты, точки описывающие треугольники). 
Код

xof 0302txt 0032
Header {
 1;
 0;
 1;
}


Frame x3ds_SeaFloor
{
 FrameTransformMatrix
 {
   1.000000,  0.000000, 0.000000, 0.000000,
   0.000000,  1.000000, 0.000000, 0.000000,
   0.000000,  0.000000, 1.000000, 0.000000,
   0.000000, 0.000000, 0.000000, 1.000000;;
 }
 Mesh SeaFloor
 {
   8;
 16.0;0.0;16.0;,
 16.0;0.0;-16.0;,
 -16.0;0.0;-16.0;,
 -16.0;0.0;16.0;,
 16.0;10.0;16.0;,
 16.0;10.0;-16.0;,
 -16.0;10.0;-16.0;,
 -16.0;10.0;16.0;;
 

    12;
3;0,1,2;,
3;2,3,0;,
3;4,5,6;,
3;6,7,4;,
3;0,1,5;,
3;5,0,4;,
3;1,2,6;,
3;6,1,5;,
3;2,3,7;,
3;7,2,6;,
3;3,0,4;,
3;4,3,7;;


MeshMaterialList {
 1;
 12;
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0;;
Material {
 0.752941;0.752941;0.752941;1.000000;;
8.000000;
 0.752941;0.752941;0.752941;;
 0.000000;0.000000;0.000000;;
 }
}
 
    MeshTextureCoords {
 24;
0.500000;0.500000;,
0.500000;0.880952;,
0.880952;0.880952;,
0.880952;0.500000;,
0.380952;0.500000;,
0.000000;0.500000;,
0.000000;0.880952;,
0.380952;0.880952;,
0.500000;0.500000;,
0.880952;0.500000;,
0.880952;0.380952;,
0.500000;0.380952;,
0.880952;0.500000;,
0.880952;0.880952;,
1.000000;0.880952;,
1.000000;0.500000;,
0.880952;0.880952;,
0.500000;0.880952;,
0.500000;1.000000;,
0.880952;1.000000;,
0.500000;0.880952;,
0.500000;0.500000;,
0.380952;0.500000;,
0.380952;0.880952;;
 
  }
 }
}



конечно же ничего не полуилось, приложение выдает ошибку типа "an undetermined error occerred". Почему? по какому закону описываются точки и треугольники?

Присоединённый файл ( Кол-во скачиваний: 1 )
Присоединённый файл  detal.x 1,32 Kb
PM MAIL   Вверх
bems
Дата 21.3.2011, 06:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: нет
Всего: 88



Числа не читал
Цитата(aalleexxaa @  21.2.2011,  00:28 Найти цитируемый пост)
 так и не понял, почему одна и та же точка записана 3 раза
например в файле могут описываться грани. Каждая вершина куба принадлежит трем граням, поэтому упоминается трижды.



--------------------
Обижено школьников: 8
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Моделированию это...
Rickert
    К моделирования относятся:
  • Все возможные виды работы с геометрией
  • Принципы и способы моделирования
  • Обсуждение конкретного ПО
  • Работа с UV картами

  • К моделированию НЕ относятя:
  • Работа с материалами (Обсуждается в "Рендеринге")
  • Работа с камерой (Обсуждается в "Рендеринге")

Не забываем указывать пакет трёхмерного моделирования, которого касается ваш вопрос.

С Уважением, Rickert.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Моделирование | Следующая тема »


 




[ Время генерации скрипта: 0.1089 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.