Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Разработка игры: отрисовка карты - CANVAS vs SVG (https://javascript.ru/forum/dom-window/73619-razrabotka-igry-otrisovka-karty-canvas-vs-svg.html)

Роман Андреевич 29.04.2018 04:10

Разработка игры: отрисовка карты - CANVAS vs SVG
 
Коллеги, доброго времени суток, собственно вопрос исходит из темы.

Работаю надо разработкой игры. И процесс остановился на рендере карты локации. Карта представляет собой набор объектов, каждый отвечает за свой участок, например "завод", "стадион" (пример) и так далее. Соответственно каждый объект имеет свое изображение, координаты, по сценарию изображения делаются в формате svg, пример:

const map_objects = {

factory: {
name: '/*some name*/',
image: '<svg>.......</svg>',
coords: /*.......*/
},
shop: {
//...

},
gym: {
//...

}

// other ....
}

При инициализации игры, из объектов таких, собирается карта локации. Карту масштабируется и можно ее двигать. С этим нет проблем.
Вопрос собственно в том, если делать через canvas, то по сути будет вставка картинок svg внутрь и несколько слоев canvas. Но ведь можно собрать карту и просто сгенерировав элемент например <gamemap></gamemap> в него вставить объекты и получится то же самое. При том у svg больше возможностей обработки событий, интерактивность ...

Вопрос производительности. При росте игры будет и увеличиваться число объектов.

Что будет быстрее отрисовка в canvas или сборка большой SVG из маленьких???


Часовой пояс GMT +3, время: 09:50.