Эффективный каркас MacOS / iOS для рендеринга пользовательских карт (Spritekit или raw Metal)? - PullRequest
0 голосов
/ 14 февраля 2019

стараюсь сделать этот вопрос настолько конкретным, насколько это возможно, чтобы не быть слишком широким.Моя конечная цель - сделать морские (как на морских) карты.Смотрите изображение ниже в качестве ссылки.Я исследовал некоторые из различных фреймворков Apple, чтобы увидеть, что подходит лучше всего.Мой ввод данных - это массив массивов, где каждый дочерний массив представляет собой картографический объект (например, остров или док).Я начал с Core Graphics, так как у него очень простой API, однако его производительность плохая (для одного слоя данных требовалось> 100 мс, тогда как в среднем я мог ожидать 10-20 слоев).

Что приводит меня к моему вопросу: станет ли SpriteKit эффективной платформой для обработки этой рабочей нагрузки?Я предпочитаю избегать изучения металла, но если разработчики рекомендуют этот подход, я потрачу время.Кажется, что SpriteKit может справиться с этим - я, вероятно, буду работать с несколькими тысячами или несколькими сотнями тысяч точек / вершин за раз.Мне не нужны никакие сложные анимации, так как карта статична с точки зрения отображения.Любые входы приветствуются!

enter image description here

1 Ответ

0 голосов
/ 14 февраля 2019

GeoJSONMap

Создание карт из GeoJSON с MapKit или SpriteKit.

Карты SpriteKit могут отображаться в автономном режиме и / или в виде плоскостей в ARKit.

Я загрузил карту города, в результате чего было получено 256 статических узлов SpriteKit, сделанных из заполненных полигонов GeoJSON, на iPhone XS он дает всего 3,7 FPS.Возможно, возможна некоторая оптимизация, но я не пробовал.

...