Задать вопрос
@AndrewRusinas

2d игры на чистом JS без Canvas?

Привет, провожу мысленный эксперимент на тему того, что случится, если попытаться сделать 2D игру без Canvas, а исключительно на div'ах.

Все примеры разработки простых игрушек в обязательном порядке включают в себя использование canvas - всевозможные змейки, flappy bird'ы, пинг-понги начинаются с создания canvas. А что, если сделать их просто "обычной версткой"? Какие минусы?

От себя добавлю, что с канвасом работал в рамках конкурса телеги на создание графика - помню, был гемор с координатами. Ну и полное отсутствие css, любой стиль нужно было задавать через js построчно. Знаю, что многие выполнили эту задачу используя svg и, хоть там и были свои сложности, результат получился лучше.

А в плане разработки игр делал разве что шахматы, обошлось без канваса, но там и рендерить, разумеется, особо нечего.
  • Вопрос задан
  • 836 просмотров
Подписаться 2 Средний 14 комментариев
Решения вопроса 1
IonDen
@IonDen
JavaScript developer. IonDen.com
Все возможно, но!

На дивах - в общем итоге вы получаете DOM-дерево. А DOM-деревья очень медленные, как браузер не оптимизируй. Они тащат за собой много много всякого легаси и много много не нужных для графики вещей.
У них другое предназначение.

Другое дело канвас, где все создано для быстрой отрисовки графики.

Чем больше числа и чем слабее компьютер - тем заметнее разница.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Вообще никаких проблем.
На дивах даже 3D action есть через css 3d transform!
Главное - клонировать, если нужны подобные объекты (div'ы) и следить за асинхронностью исполнения кода везде, где это возможно.
(+"прямые руки")
Ответ написан
Комментировать
@iordania
Удачи! я как-то ландшафт (импровезированный) создавал... работала отрисовка через цикл...
Как только запускался рендер - висло всё... проц 100%, диск 100%, оперативка 100% !
После третьего раза он не включался и пришлось менять материнку... Возможно совпадение!
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 12:37
10000 руб./за проект
18 дек. 2024, в 12:22
5000 руб./за проект
18 дек. 2024, в 11:57
500 руб./в час