Я хочу нарисовать некоторый текст с помощью BitmapFont до некоторого временного местоположения, а затем нарисую часть этого места до окончательного спрайта. Я думал о том, чтобы нарисовать во временную spritebatch, но нельзя сделать нарисовать spritebatch на другой. Как я мог это сделать?LibGDX draw BitmapFont в промежуточное местоположение (spritebatch)
1
A
ответ
0
Вы пытались его записать в pixmap временно? Когда вы хотите нарисовать его, вы можете загрузить pixmap в объект текстуры.
0
Вы можете использовать FrameBuffer. См. Мой пример ниже, вы можете нарисовать все, что хотите, в функции drawBuffer, а затем нарисовать его на экране.
Надеется, что это помогает
--EDIT--
ПРИМЕЧАНИЯ: Вы должны иметь useGL20 = истину; в вашей Конфигурации приложения
public class SpaceMania extends Game {
@Override
public void create() {
setScreen(new ScreenView());
}
}
class ScreenView implements Screen{
InputMultiplexer input;
FrameBuffer buffer;
SpriteBatch screenBatch;
ShapeRenderer shape;
@Override
public void render(float delta) {
//Draw Buffer
drawBuffer();
//Draw buffer to screen
screenBatch.begin();
screenBatch.draw(buffer.getColorBufferTexture(), 0,0,600,200);
screenBatch.end();
}
public void drawBuffer(){
buffer.begin();
shape.begin(ShapeType.FilledCircle);
shape.setColor(Color.RED);
shape.filledCircle(50, 50, 50);
shape.end();
buffer.end();
}
@Override
public void show() {
buffer = new FrameBuffer(Format.RGBA8888, 200, 200,false);
screenBatch = new SpriteBatch();
shape = new ShapeRenderer();
}
@Override
public void hide() {
// TODO Auto-generated method stub
}
@Override
public void resize(int width, int height) {
// TODO Auto-generated method stub
}
@Override
public void pause() {
// TODO Auto-generated method stub
}
@Override
public void resume() {
// TODO Auto-generated method stub
}
@Override
public void dispose() {
// TODO Auto-generated method stub
}
}
Смежные вопросы
- 1. Draw string with BitmapFont
- 2. Рисовать BitmapFont, повернутый в libgdx
- 3. Libgdx BitmapFont bad framerate
- 4. Перемещение BitmapFont с камерой LibGDX
- 5. Render BitmapFont в 3D libgdx с ModelBatch
- 6. Libgdx Как оживить BitmapFont?
- 7. libgdx BitMapFont не работает
- 8. Strech the BitmapFont в LibGdx
- 9. LibGDX Ошибка рендеринга SpriteBatch
- 10. LibGDX draw() Несоответствие API
- 11. LibGDX BitmapFont Markup Alpha Value
- 12. Перетаскивание в libgdx на SpriteBatch
- 13. Libgdx save SpriteBatch в текстуре
- 14. libGDX Добавить собственный метод в SpriteBatch
- 15. MonoGame/XNA Draw Polygon в Spritebatch
- 16. Libgdx - SpriteBatch alpha не работает
- 17. libgdx spritebatch not rendering textures
- 18. Spritebatch ничего не рисует LibGDX
- 19. LibGDX - Поворот SpriteBatch на себя
- 20. (Libgdx) BitmapFont color and Opengl 2
- 21. метод Java LibGDX BitmapFont setScale не работает
- 22. DirectX Toolkit C++ SpriteBatch Draw Rectangle
- 23. Буферы LibGDX Stencil при использовании SpriteBatch
- 24. XNA SpriteBatch Draw Extension Method throws ArrayTypeMismatchException
- 25. Libgdx Как получить общую ширину текста? (BitmapFont)
- 26. Как мне получить BitMapFont для LibGDX?
- 27. Libgdx спрайт положение относительно положения SpriteBatch в
- 28. SpriteBatch установлен ниже уровня Актера в libgdx
- 29. LibGDX draw line
- 30. libgdx overlap stop draw
Я бы хотел, но BitmapFont может только рисовать на spritebatch. –