То, что я пытаюсь сделать, - это создать игру, которая обладает невероятной способностью масштабирования элемента canvas. Я хотел бы воспользоваться тем преимуществом, которое векторная графика имеет, поскольку она может быть программно создана во время выполнения с высокой производительностью растровых изображений.
То, что я хотел бы сделать, это программно создать изображение первого кадра игрового «спрайта» ... это было бы векторное изображение. Хотя после первого кадра я не хочу тратить впустую циклы ЦП на рисование изображения, хотя ... я хотел бы кэшировать его как растровое / высокопроизводительное изображение для этого уровня масштабирования.
После этого, если пользователь увеличивает масштаб на> 20%, я затем перерисовываю изображение с более высоким уровнем детализации векторного изображения. Как и выше, это векторное изображение будет затем кэшироваться и оптимизироваться.
Как вы можете видеть здесь, это был бы довольно простой космический корабль. Сначала я сделал бы его программным способом как вектор, а затем ... я думаю, растровым? Цель состоит в том, чтобы не тратить процессор.
Если пользователь увеличивает ...
Будет нарисовано новое векторное изображение той же формы, хотя и с гораздо более высоким уровнем детализации. Это в основном система уровня детализации. В этом случае и после первоначальной программной прорисовки я бы "растрировал" изображение для максимальной производительности.
У кого-нибудь есть идеи о том, какие инструменты мне понадобятся, чтобы сделать это реальностью внутри HTML-холста? (Остальная часть игры будет запущена внутри элемента canvas ..)
Большое спасибо за ваши мысли.
** Редактировать: я хотел добавить ... возможно, путь рендеринга изображения через SVG (программно), а затем вставка этого png-файла в холст с помощью drawimage (), может обеспечить некоторый успех? Что-то похожее? Хм ... * * 1023