Как оживить движение 3d моделей в Mapbox GL JS - PullRequest
1 голос
/ 27 марта 2019

Пример 3d-модели в документации Mapbox GL JS заставил меня задуматься о том, как можно анимировать движение трехмерных транспортных средств по карте (например, демонстрация Uber AVS и Cesium ).

Я попытался адаптировать пример кода 3d-модели, удалив текущую 3d-модель, создав новую и добавив ее. Однако этот цикл слишком медленный для плавной анимации:

const moveObject = () => {
  map.removeLayer('3d-model');
  modelOrigin = incrementCoords(modelOrigin);
  modelTransform = createModelTransform(modelOrigin);
  const customLayer = createCustomLayer(modelTransform);
  map.addLayer(customLayer);
};

В идеале я хотел бы видеть плавную анимацию - как в демонстрации AVS или в различных примерах 'animate a line / point / marker ' в Mapbox GL JS документы.

1 Ответ

1 голос
/ 28 марта 2019

Для настоящего случая использования в 3D, как в этих демонстрациях, вам лучше использовать инструмент 3D, а не Mapbox GL JS. Это не 3D-рендеринг или настоящее 3D, поэтому вы не получаете то, что хотите. Что касается инструмента Mapbox, лучшим вариантом будет Maps SDK для Unity .

В Unity SDK есть пример замены трехмерного здания пользовательской моделью. Вы можете найти его здесь: https://docs.mapbox.com/unity/maps/examples/replace-features/

...