加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – LibGDX中的Split-Screen

发布时间:2020-12-14 05:30:54 所属栏目:Java 来源:网络整理
导读:这个问题简短而简单.如何在LibGDX中创建分屏效果.如果我创建两个摄像头,那么它将绘制一个位于某个地方,然后绘制下一个,覆盖前一个摄像头.然后我想使用多个屏幕但看起来不会起作用,因为它只支持调整大小而不是在窗口内重新定位.我也使用Box2DDebugRenderer以
这个问题简短而简单.如何在LibGDX中创建分屏效果.如果我创建两个摄像头,那么它将绘制一个位于某个地方,然后绘制下一个,覆盖前一个摄像头.然后我想使用多个屏幕但看起来不会起作用,因为它只支持调整大小而不是在窗口内重新定位.我也使用Box2DDebugRenderer以及ShapeRenderer,因此它还需要在分屏限制下切断它们. LibGDX网站上似乎没有任何文档.

解决方法

在#libgdx IRC上询问了一下之后,向我指出了函数Gdx.gl.glViewport(int x,int y,int width,int height).所以你只需要一台相机.只需设置屏幕左侧的视口,然后执行绘图命令,然后设置屏幕右侧的视口并再次绘制.像这样:
@Override
public void render( float delta )
{
    /*Wipe Screen to black*/
    Gdx.gl.glClearColor( Color.BLACK );
    Gdx.gl.glClear( GL10.GL_COLOR_BUFFER_BIT );

    /*Left Half*/
    Gdx.gl.glViewport( 0,Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight() );
    //Set up camera with viewport in mind
    draw( delta );

    /*Right Half*/
    Gdx.gl.glViewport( Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight() );
    //Set up camera again with other viewport in mind
    draw( delta );
}

您只需要设置相机,使其按照您想要的方式定位并转换到有限的屏幕,而不是整个屏幕.你也可以使用第二台相机.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读