Здравствуйте!
есть цель - отображать модели в формате 3ds на сборке ам3359 + дисплей. собрал Qt с поддержкой OpenGL 2.0 и собрал Qt3D. Все работает отлично, примеры с отрисовкой моделей 3ds запускаются и работают корректно. но как только я меняю в файле *.qml имя модели на своё(взял модели отсюда: http://habrahabr.ru/post/133126/) возникает ошибка и приложение не запускается.
файл *.qml:
Viewport {
anchors.fill: parent
camera: Camera { eye: Qt.vector3d(0,0,10)}
Item3D {
scale: 0.4
position: Qt.vector3d(0,-2,0)
transform: [
Rotation3D {id: correct; angle: 90; axis: Qt.vector3d(0,1,0)},
Rotation3D {id: pitch; angle: -90; axis: Qt.vector3d(0,0,1)},
Rotation3D {id: roll; angle: 0; axis: Qt.vector3d(1,0,0)},
Rotation3D {id: yaw; angle: 0; axis: Qt.vector3d(0,1,0)}
]
mesh: Mesh {source: "meshes/ufo.3ds"} <-- меняю тут, остальную часть примера не трогаю
}
}
/qt4_install_last/examples/bin# ./tst_model3ds -qws -display powervr -fullscreen
[ 6982.810638] Alignment trap: not handling instruction edd17a00 at [<45b227e0>]
[ 6982.818206] Unhandled fault: alignment exception (0x001) at 0x00125a4b
Bus error
почитал о выравнивании, представление получил. после чего попробовал сделать следующее:
echo 2 > /proc/cpu/alignment
не помогло.
пробовал открыть модель, которая шла в комплекте с примером в двух 3ds редакторах(на win7, linux только на виртуалке) и ничего не меняя сохранить. после указанной процедуры приложение так же запускаться отказывается. т.е. если модель, которая отображалась в приложении корректно открыть->сохранить в 3ds редакторе - получаем Alignment trap. пробовал отрезать последние несколько байт, которые появляются в файле после прохода через редактор, чтобы уравнять модели по размеру - тоже Alignment trap. так же пробовал сравнить модели до/после прохода через редактор с помощью diff - различия есть, но мало что понятно :)
в силу отсутствия опыта с linux и Qt не пойму куда двигаться дальше. подскажите пожалста, как решить проблему?