2012-07-01 2 views
4

Я использую LibGDX для небольшого проекта приложения, и мне нужно как-то взять серию спрайтов и поместить их (или их пиксели) в Pixmap. Основная идея заключается в том, чтобы принимать случайные спрайты, которые генерируются с помощью различных средств во время работы приложения, и только в определенное время объединяют некоторые из них в один фоновый спрайт.LibGDX - Sprite to Pixmap

Я считаю, что большую часть этого можно сделать легко, но шаг получения изображений спрайтов в Pixmap для меня не столь очевиден. У спрайтов также есть различные прозрачные и полупрозрачные пиксели, поэтому просто захват цвета на каждом пикселе, пока он находится на одном экране, на самом деле не применим, так как он, очевидно, не должен принимать цвета фона с ним.

Если есть подходящая альтернатива этому, что бы выполнить то, что я ищу, я также хотел бы услышать это. Любая помощь высоко ценится.

ответ

2

Я думаю, что вы хотите отобразить свои спрайты в буфер вне экрана (называемый «FBO» или FrameBuffer в libgdx) (смешение их по мере добавления), а затем визуализировать этот экранный буфер на экране как однократный призыв? Если да, то этот вопрос должен помочь: libgdx SpriteBatch render to texture

Для этого требуется OpenGL ES 2.0, который устранит поддержку некоторых старых устройств.

+0

Ну, FBO звучат правильно для меня, но ни один из моих экспериментов с ними в моей текущей настройке оказался очень успешным (я не знаю много о OpenGL и могу просто ошибиться). Кроме того, я хотел бы иметь пиксельные данные в Pixmap, так как это, по-видимому, лучший способ изменить их на пиксельной основе, так как я хотел бы время от времени быть в состоянии. – Shamrock

+0

Если вы хотите получить доступ к пикселам на процессоре, и вы генерируете эти текстуры на процессоре, то вы, вероятно, должны просто собрать их самостоятельно на CPU и полностью исключить OpenGL? –

+0

Ну, это будет иметь смысл, но я считаю, что успешное выполнение этой сложной настройки, которую я пытаюсь достичь, будет немного по моей голове на данный момент. Основная причина, по которой они хотят в Pixmap, - это способность выборочно удалять определенные области, но я уверен, что это также возможно, если вы планируете маршрут FBO по-другому. Я думаю, что сейчас это мешает ему работать, это моя нехватка знаний в этой области, поэтому я буду работать над этим немного больше и посмотреть, смогу ли я получить что-то более многообещающее. – Shamrock