2013-07-12 163 views
0

我在libGdx中有背景問題。 我試着用這個解決我的問題:libGdx - 圖像背景

「在你的create()方法中,創建一個引用image.png的新紋理,然後使用你現有的SpriteBatch在render()循環中渲染它。 GL.clear()調用,去你的batch.draw(backgroundTexture,0.0),並確保你的相機處於OrthographicProjection模式。「

我這樣做:

public void render() { 
     Gdx.gl.glClearColor(0, 0, 0, 1); 
     Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); 
     camera.update(); 
     batch.setProjectionMatrix(camera.combined); 
     batch.begin(); 

     batch.draw(image, 250, 200); 
     batch.draw(backGroundImage, 0, 0); 

     batch.end(); 

「形象」 是我的法線貼圖(這是簡單的圖片), 「背景」 是OFC。我的背景。 我有「backGround」適用於我的create()方法。 Mine camer在camera = new OrthographicCamera();。 以下是我所看到的: ...我需要10點聲望才能添加圖像:< ...圖像是短的,切割左邊和右邊... 我做錯了什麼。在這個解決方案a link!和[熊貓]的參考風格的鏈接[1] Shinzul在render()中說了一些關於循環的東西,也許這是我的問題,但我不知道如何解決這個問題。 請幫忙。

回答

5
public static Texture backgroundTexture; 
    public static Sprite backgroundSprite; 
    private SpriteBatch spriteBatch; 

    private void loadTextures() { 
     backgroundTexture = new Texture("images/background.png"); 
     backgroundSprite =new Sprite(backgroundTexture); 
     . 
     . 
    } 

    public void renderBackground() { 
     backgroundSprite.draw(spriteBatch); 
    } 

    public void render() { 
     spriteBatch.begin(); 
      renderBackground(); //In first place!!!! 
      drawStuff(); 
      drawMoreStuff(); 
      drawMoreMoreStuff(); 
     spriteBatch.end(); 
    } 

我發現this online resource並幫助我開始了libgdx的世界。 我希望我一直有幫助。

0

只要你能爲這個環節非常設置使用GDX設備HIGHT寬度,它幫助我

batch.draw(mTextureBg, 0 , 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());