Быстрый способ визуализации тысяч bmp во Flash? - PullRequest
2 голосов
/ 05 мая 2011

Какой самый быстрый способ визуализации нескольких десятков 16x16 растровых изображений десятки тысяч раз в случайных местах на экране 800x600?

1) Использовать CopyPixel (), чтобы перенаправить каждый спрайт в экранный буфер 800 * 600?Конечно, вызовите unlock (), lock () для экранного буфера.

2) Использование Алхимии?На стороне c ++ создайте uint * screenBuffer = new uint [800 * 600];и создайте множество: uint * spriteBmp = new uint [16 * 16];И скопировать каждый spriteBmp в тысячи (x, y) мест в screenBuffer?

3) Pixel bender?

Кроме того, мне интересно, какой метод потенциально может использовать аппаратный рендеринг.То есть, если 1) и 3) могут использовать преимущества пользовательских видеокарт, они должны быть на величины быстрее, чем любой программный растеризатор, который я создаю с помощью 2).

Мне не нужно масштабирование или вращение на каждом bmp, ноИнтересно, не нарушат ли они какие-либо оптимизации API as3 для растровых изображений, выровненных по экрану?

Спасибо

1 Ответ

0 голосов
/ 01 августа 2012

Вы пробовали Скворец ?Это бесплатная библиотека, использующая графический процессор!

Вы можете действительно рендерить огромное количество растровых изображений с помощью графического процессора.

btw: Если вы используете тот же растровый рисунок, это будет еще быстрее!

...