gpt4 book ai didi

android - Libgdx:在特定矩形中绘制 Actor

转载 作者:行者123 更新时间:2023-11-29 17:48:21 24 4
gpt4 key购买 nike

我试图在舞台上绘制一个 Group Actor,但我只需要在舞台的特定区域绘制它们。

例如假设我把舞台分成两部分(左和右),然后我想只在舞台的左边画一些 Actor ,所以如果其中一个走到右边就不会了绘制。

到目前为止,我尝试使用setCullingArea 方法,但是Actors 突然消失了,如果它在限制范围内,我想绘制一个actor 的一部分。

换句话说,我正在寻找一种绘制了 Group 的 mask 区域。

谢谢。

最佳答案

您可以使用剪刀将绘图剪到屏幕的特定区域。

Rectangle leftSide;
Rectangle rightSide;

//...

public void resize(int width, int height){
//...

leftSide = new Rectangle(0,0,width/2, height);
rightSide = new Rectangle(width/2, 0, width/2, height);

}

public void render(){
//...

Gdx.gl.glEnable(GL20.GL_SCISSOR_TEST);
Gdx.gl.glScissor((int)leftSide.x, (int)leftSide.y, (int)leftSide.width, (int)leftSide.height);

//Draw stage with left side actors (set right group invisible)
//...

Gdx.gl.glScissor((int)rightSide.x, (int)rightSide.y, (int)rightSide.width, (int)rightSide.height);

//Draw stage with right side actors (set left group invisible)
//...

Gdx.gl.glDisable(GL20.GL_SCISSOR_TEST);

//...
}

如果您有其他 actors 需要跨越边界,您可以在启用剪切之前先绘制它们,然后将它们设置为不可见。

关于android - Libgdx:在特定矩形中绘制 Actor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24817938/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com