Я создаю простой способ рендеринга игры. У меня есть статические изображения, такие как фон карты, который вообще не меняется. Я просто использую 30% всего экрана для изменения графики. И я не чувствую, что нужно переделывать все это снова и снова, если он не меняется.Метод пассивного рендеринга
в Интернете Я нашел что-то о пассивном рендеринге - вы рисуете то, что вам нужно, и ждите ... пока что-то не обновится. После этого вы обновите его и снова подождите. Похож на отличный способ для этой ситуации. Но теперь ... У меня есть метод визуализации так:
public class X extends Canvas{
//some method
this.createBufferStrategy(3);
//....
public void render(){
BufferStrategy buffer = this.getBufferStrategy();
Graphics g = buffer.getDrawGraphics();
//Draws black background...
g.setColor(Color.BLACK);
g.fillRect(....
for(... //cycles every object and calls their render methods...
}
Это не в состоянии поддерживать дро и ждать способ ... becouse фон перерисовывается каждый 1/30 секунды, так что если вы этого не сделаете есть что рисовать, вы получаете черное полотно без ничего на нем .. поэтому вы должны всегда перерисовывать все каждое обновление ... Если я не рисую фон, буфер начинает мигать, как ад ..., так что я должен иметь что-то, чтобы покрыть это.
Я искал в интернете и ничего не нашел много о других решениях для этого типа рендеринга .. Tuns всячины для активного рендеринга, но ничего для этого Нарисовать и ждать методы ..
Я думаю, что это невозможно сделать с помощью BufferStrategy , Есть ли что-то еще для этого? Также есть другой источник для Graphics g? В Интернете было что-то о том, чтобы называть его directyl из Canvas, но я не запустил его для этого. Или я думаю об этом с неправильного угла?