Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Загрузка анимированных моделей в JavaFX используя Assimp

Загрузка анимированных моделей в JavaFX используя Assimp

Поделиться
Lashey1976Новичокwww8 ноя. 201719:09#0
Появилась идея использовать для загрузки анимированных 3d моделей в javaFx assimp
https://github.com/ILDAR1976/JavaFxWithAssimp.git. Задача загрузки не анимированных моделей решена,
но вот с анимированными моделями возникли трудности. Не удается корректно создать матрицу преобразования
сетки для анимированной модели. Как быть?
Lashey1976Новичокwww8 ноя. 201719:10#1
Решил проблему следующим образом, в файле "SkinningMesh.java" сделал так:

private float[][] initializeRelativePoints(final Affine[] bindTransforms, final Affine bindGlobalTransform) {
final ObservableFloatArray points = getPoints();
final float[][] relativePts = new float[nJoints][nPoints * 3];
for (int j = 0; j < nJoints; j++) {

Transform postBindTransform = bindTransforms[j]; //.createConcatenation(bindGlobalTran sform); убрал умножение на базовую матрицу трансформации

for (int i = 0; i < nPoints; i++) {
final Point3D relativePt = postBindTransform.transform(points. get(3 * i), points.get(3 * i + 1), points.get(3 * i + 2));
relativePts[j][3 * i ] = (float) relativePt.getX();
relativePts[j][3 * i + 1] = (float) relativePt.getY();
relativePts[j][3 * i + 2] = (float) relativePt.getZ();
}
}
return relativePts;
}

/ Форум / Программирование игр / Графика

2001—2017 © GameDev.ru — Разработка игр