Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java libGDX-如何删除屏幕上现有的spritebatch?_Java_Android_Libgdx - Fatal编程技术网

Java libGDX-如何删除屏幕上现有的spritebatch?

Java libGDX-如何删除屏幕上现有的spritebatch?,java,android,libgdx,Java,Android,Libgdx,所以我一直在浏览和试验一些东西,但不太明白如何删除屏幕上预先存在的spriteBatch 所以基本上 我发起了 batcher.begin(); (blah blah blah) AssetLoader.font.draw(batcher, "Hey guys", x, y); 像这样的。。。 现在我想在屏幕上删除/删除/取消绘制这个东西。。。 在不使用if语句的情况下,如何执行此操作,因为。。如果我开始使用if语句,一切都会变得一团糟 非常感谢 OpenGL应用程序中普遍接受的做法是每次清除

所以我一直在浏览和试验一些东西,但不太明白如何删除屏幕上预先存在的spriteBatch

所以基本上 我发起了

batcher.begin();
(blah blah blah)
AssetLoader.font.draw(batcher, "Hey guys", x, y);
像这样的。。。 现在我想在屏幕上删除/删除/取消绘制这个东西。。。 在不使用if语句的情况下,如何执行此操作,因为。。如果我开始使用if语句,一切都会变得一团糟


非常感谢

OpenGL应用程序中普遍接受的做法是每次清除屏幕并重新绘制整个屏幕

所以,要“擦除”某些内容,只需停止绘制即可

boolean wantToSeeThis = true;

...

void render() {
   batcher.begin();
   (blah blah blah)
   if (wantToSeeThis) {
       AssetLoader.font.draw(batcher, "Hey guys", x, y);
   }
}

void hideIt() {
   wantToSeeThis = false;
}

OpenGL应用程序中普遍接受的做法是每次清除屏幕并重新绘制整个屏幕

所以,要“擦除”某些内容,只需停止绘制即可

boolean wantToSeeThis = true;

...

void render() {
   batcher.begin();
   (blah blah blah)
   if (wantToSeeThis) {
       AssetLoader.font.draw(batcher, "Hey guys", x, y);
   }
}

void hideIt() {
   wantToSeeThis = false;
}

你问什么有点不清楚。默认情况下,您的屏幕在
Render
方法中每帧都会被清除一行

gl.glClear( GL20.GL_COLOR_BUFFER_BIT );

很明显,我们需要说明什么时候我们想画东西。如果在一个类中编写整个程序,显然很快就会变得一团糟。但是Java是
OOP
,这意味着您可以添加一个类,其中包含自己的
Draw
/
Render
方法以及关于何时应该绘制它们的语句。我建议您开始学习
OOP

的基础知识,您的问题有点不清楚。默认情况下,您的屏幕在
Render
方法中每帧都会被清除一行

gl.glClear( GL20.GL_COLOR_BUFFER_BIT );

很明显,我们需要说明什么时候我们想画东西。如果在一个类中编写整个程序,显然很快就会变得一团糟。但是Java是
OOP
,这意味着您可以添加一个类,其中包含自己的
Draw
/
Render
方法以及关于何时应该绘制它们的语句。我建议您开始学习
OOP

的基础知识,您可以使用
dispose()method@user3225831如果他处置资产,当代码想要再次绘制时,他将得到一个空指针异常method@user3225831如果他处理了一个资源,当代码想要再次绘制时,他将得到一个空指针异常。要停止绘制,你的意思是我应该停止绘制它吗?我只有一个渲染类。这是否意味着我应该创建更多的渲染类@谢谢你@我在回答中更新了这个例子,让它更清楚地说明如何“停止”画画。(有无数种方式可以表达这一点,所以就把这当作一个建议……)要停止画画,你的意思是我应该停止渲染它吗?我只有一个渲染类。这是否意味着我应该创建更多的渲染类@谢谢你@我在回答中更新了这个例子,让它更清楚地说明如何“停止”画画。(有无数种方式可以表达这一点,所以就把这当作一个建议吧……)