如何从 imputProcessor class 绘制纹理? LibGDX
How to draw texture from imputProcessor class? LibGDX
我尝试使用 LibGDX 的 InputProcessor class 来绘制东西。但是什么也没画!我可以从任何其他地方绘制纹理而不是 render () class in LibGDX?
是的,如果我在 render () class 中绘制它就可以绘制,但是我可以从其他地方绘制吗,比如 InputProcessor touchDragged?
这是我的代码
public class mm_imput implements InputProcessor {
SpriteBatch batch=new SpriteBatch();
Texture pixel=new Texture("something.png");
@Override
public boolean touchDragged (int x, int y, int pointer) {
drawSomething();
}
void drawSomething() {
batch.begin();
batch.draw(pixel, 100, 100, 100, 100);
batch.end();
}
}
每次拖动鼠标应该会显示一些东西..如何实现?
您的批处理必须在屏幕的渲染方法中 class。
在这里link你会明白我在说什么:https://github.com/littletinman/Hype/blob/master/Hype/core/src/com/philiproyer/hype/screens/Details.java
我有一个主屏幕 class,带有渲染方法。我正在实现 InputProcessor 接口。
我推荐的是让 Render 方法处于触摸按下的状态。
public void render(float delta) {
Gdx.gl.glClearColor( 0, 0, 0, 1); // Clear the screen with a solid color
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
if(isTouching == true) { // check for touching
batch.begin();
batch.draw(pixel, 100, 100, 100, 100);
batch.end();
}
}
然后,在 touchDown 方法中添加如下内容
public boolean touchDown(int screenX, int screenY, int pointer, int button) {
isTouching = true; // Set boolean to true
return false;
}
要确保在您停止触摸时重置它,请在您的 touchUp 方法中执行以下操作
public boolean touchUp(int screenX, int screenY, int pointer, int button) {
isTouching = false; // Set boolean to false
return false;
}
如果有任何不清楚的地方,请告诉我。祝你好运!
我尝试使用 LibGDX 的 InputProcessor class 来绘制东西。但是什么也没画!我可以从任何其他地方绘制纹理而不是 render () class in LibGDX?
是的,如果我在 render () class 中绘制它就可以绘制,但是我可以从其他地方绘制吗,比如 InputProcessor touchDragged?
这是我的代码
public class mm_imput implements InputProcessor {
SpriteBatch batch=new SpriteBatch();
Texture pixel=new Texture("something.png");
@Override
public boolean touchDragged (int x, int y, int pointer) {
drawSomething();
}
void drawSomething() {
batch.begin();
batch.draw(pixel, 100, 100, 100, 100);
batch.end();
}
}
每次拖动鼠标应该会显示一些东西..如何实现?
您的批处理必须在屏幕的渲染方法中 class。
在这里link你会明白我在说什么:https://github.com/littletinman/Hype/blob/master/Hype/core/src/com/philiproyer/hype/screens/Details.java
我有一个主屏幕 class,带有渲染方法。我正在实现 InputProcessor 接口。
我推荐的是让 Render 方法处于触摸按下的状态。
public void render(float delta) {
Gdx.gl.glClearColor( 0, 0, 0, 1); // Clear the screen with a solid color
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
if(isTouching == true) { // check for touching
batch.begin();
batch.draw(pixel, 100, 100, 100, 100);
batch.end();
}
}
然后,在 touchDown 方法中添加如下内容
public boolean touchDown(int screenX, int screenY, int pointer, int button) {
isTouching = true; // Set boolean to true
return false;
}
要确保在您停止触摸时重置它,请在您的 touchUp 方法中执行以下操作
public boolean touchUp(int screenX, int screenY, int pointer, int button) {
isTouching = false; // Set boolean to false
return false;
}
如果有任何不清楚的地方,请告诉我。祝你好运!