java - Libgdx 如何设置视口(viewport)位置?

标签 java libgdx

我知道在 libgdx 中,舞台使用定义相机的视口(viewport)。我想在屏幕上的一个小方 block 上渲染一个舞台。我尝试使用自定义视口(viewport),但我只能设置它的大小。我还尝试使用 setPosition(int screenX, int screenY) 方法,但无论我尝试什么,视口(viewport)似乎始终位于屏幕中间。有谁知道如何设置视口(viewport)在屏幕上的位置?

最佳答案

我认为你的问题不在于设置视口(viewport)位置,而在于更新它 - 当视口(viewport)更新时,你必须居中相机

    stage = new Stage();
    viewport = new ExtendViewport(WIDTH, HEIGHT);
    viewport.setScreenPosition(500, 500); //I'm setting viewport's position

    ...

    @Override
    public void render(float delta) 
    {
        ...

        viewport.update(currentWindowWidth, currentWindowHeight, true); //here I'm updateing it with setting camera center

        ...
    }

比较

void update(int screenWidth, int screenHeight, boolean centerCamera)

void update(int screenWidth, int screenHeight)

调用上面的更新版本,默认为 false

关于java - Libgdx 如何设置视口(viewport)位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32457269/

相关文章:

java - eclipse导入gradle项目下载永远

Java - 在自身内部使用枚举值

java - 无序(或哈希)映射中的迭代器

java - 为什么有 BigInteger(String) 而没有 BigInteger(long)?

java - LibGDX FrameBuffer 到TextureRegion 正在渲染不正确的 Sprite

java - Libgdx 主菜单屏幕

libGDX 纹理质量按比例缩小

java - java中基数(带小数位)之间的转换

java - JSTL中计算的jsp中访问JSTL变量

java - 检查 ace 是否存在以及点数是否 >21