1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

корректная загрузка 3DS файла

Тема в разделе "Графика в играх", создана пользователем -, 18 июл 2004.

Модераторы: Артер
  1. Guest

    Сравнительно недавно я решил написать загрузчик (с анимацией) моделей из файла 3DS. Сначала это казалось достаточно простым делом, однако затем (как всегда) возникли непредвиденные

    трудности. Дело в том, что если при создании модели в 3DStudio Max (вер. 5.0) поизвращаться с её позицией/поворотами + позицией/поворотами Pivot point (точка определяющая локальную

    систему координат объекта и являющаяся по совместительству центром вращения объекта), то корректная загрузка на этом прекращается.

    Изучение доков по данной проблеме показало, в том числе, важность для решения этой проблемы блоков:

    0x4160 (Локальная система координат + вектор переноса) - матрица 4x3
    0xb013 (Pivot point)
    ???

    Однако, всякие манипуляции с данными из них не дали однозначного рез-та (кое-что грузмться верно, а кое-что нет и наоборот). Как именно с ними работать инфы нет, а метод проб и ошибок, к

    сожалению, на этот раз что-то затянулся...
    Я пытался реализовать следующую последовательность действий:

    0)гружу кучу всего, в том числе:
    1) гружу вершины и данные о гранях объекта
    2)гружу 0x4160
    3)гружу 0xb013
    4).......

    4) осуществляю обратный сдвиг вершин объекта по вектору переноса и умножаю вершины на лок.сист.коорд (ЛСК)

    5)сдвигаю вершины на позицию из 0-го кадра анимации
    6)поворачиваю объект на данные 0-го кадра анимации

    (делаю именно нулевой кадр анимации, т.к. пока я просто добиваюсь нормального исходного отображения объекта, а прочая анимация для меня в данное время не важна)

    7)??????????????? что надо делать еще - без понятия

    Может, кто-нибудь имеющий опыт загрузки моделей из файла 3ds поделится своими соображениями по данной теме? Заранее благодарен.

    P.S. пишу на C++, OpenGL
     
Модераторы: Артер

Поделиться этой страницей