Как манипулировать пикселями отображаемого экрана или экранного объекта в ActionScript 3?

Мой игровой движок не рендерит в BitmapData, как это делает Flixel/Flashpunk. Вместо этого он использует список отображения Flash Player внутри.

Мне нужно выполнить некоторую постобработку, такую ​​как сканирование строк, колебание, сбой и т. Д. На конечном отрендеренном экране (например, http://goo.gl/Enwae). Я сделал рендеринг в текстуру в OpenGL и использовал пиксельный шейдер, используемый для манипулирования финальной визуализированной сценой.

Как мне реализовать эквивалент того же в Actionscript 3? Я видел ссылку на классы Pixel Bender и Shader Filter. Может ли кто-нибудь привести простой пример или указать мне соответствующую информацию в контексте, указанном здесь?

1 ответ

Я уверен, что вам нужно будет визуализировать экран в BitmapData в какой-то момент, если вы хотите манипулировать пикселями таким образом.

Вы можете попробовать использовать BitmapData.draw() для рендеринга всего этапа в BitmapData, но производительность, скорее всего, будет ужасной, если вы просто не используете ее на довольно статичном экране (например, в меню).

В противном случае вам, вероятно, будет лучше с игровым движком, который переходит к растровому холсту вместо использования списка отображения.

Другие вопросы по тегам