Java LibGDX剪刀不工作
我想剪掉屏幕的某一部分,这样就不会画出屏幕外的任何东西。 我的代码如下所示:Java LibGDX剪刀不工作,java,libgdx,2d,clipping,Java,Libgdx,2d,Clipping,我想剪掉屏幕的某一部分,这样就不会画出屏幕外的任何东西。 我的代码如下所示: public void draw(Camera camera, ShapeRenderer renderer){ Rectangle scissors = new Rectangle(); Rectangle clipBounds = new Rectangle(pos.x, pos.y, pos.x+width, pos.y+height); ScissorStack.
public void draw(Camera camera, ShapeRenderer renderer){
Rectangle scissors = new Rectangle();
Rectangle clipBounds = new Rectangle(pos.x, pos.y, pos.x+width, pos.y+height);
ScissorStack.calculateScissors(camera, 0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight(), new Matrix4(), clipBounds, scissors);
renderer.begin(ShapeType.Filled);
ScissorStack.pushScissors(scissors);
for(Block[] row : blocks){
for(Block block : row)
block.draw(renderer);// draw some rects
}
ScissorStack.popScissors();
renderer.end();
}
但是这个代码没有效果,也就是说,剪贴簿外面的形状也会被绘制出来。
我的代码怎么了
在
renderer.end()
之前,渲染不会发生,因此请将其放入剪刀堆栈中