成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android游戲引擎libgdx使用教程10:雙舞臺

移動開發 Android
游戲屏幕最常見的就是一個變化較少的背景加上一系列和用戶交互的角色和部件。為了方便管理你還可以為背景建個Group方便管理。

游戲屏幕最常見的就是一個變化較少的背景加上一系列和用戶交互的角色和部件。為了方便管理你還可以為背景建個Group方便管理。

但是有時候寫的時候沒有想到這個問題,或者是背景不是單純的一個圖片什么的,背景和角色還有一些混合邏輯分布在兩個Stage里。我重寫太麻煩,想想反正都是SpritBatch繪制出來的,用雙舞臺大不了多個攝像頭。馬上試試還真行。

先看看Stage的draw方法:

  1. /** Renders the stage */    
  2. public void draw () {    
  3. camera.update();    
  4. if (!root.visible) return;    
  5. batch.setProjectionMatrix(camera.combined);    
  6. batch.begin();    
  7. root.draw(batch, 1);    
  8. batch.end();    
  9. }   

batch的話兩個舞臺可以共用。用Stage(width, height, stretch, batch)實例化第二個舞臺。

代碼如下:

  1. package com.cnblogs.htynkn.game;   
  2. import com.badlogic.gdx.ApplicationListener;    
  3. import com.badlogic.gdx.Gdx;    
  4. import com.badlogic.gdx.InputProcessor;    
  5. import com.badlogic.gdx.graphics.GL10;    
  6. import com.badlogic.gdx.graphics.Texture;    
  7. import com.badlogic.gdx.graphics.g2d.TextureRegion;    
  8. import com.badlogic.gdx.scenes.scene2d.Stage;    
  9. import com.badlogic.gdx.scenes.scene2d.ui.Image;   
  10. public class JavaGame implements ApplicationListener {   
  11. Stage stage1;    
  12. Stage stage2;    
  13. float width;    
  14. float height;   
  15. @Override    
  16. public void create() {    
  17. width = Gdx.graphics.getWidth();    
  18. height = Gdx.graphics.getHeight();    
  19. stage1 = new Stage(width, height, true);    
  20. stage2 = new Stage(width, height, true,stage1.getSpriteBatch());    
  21. Image image = new Image(new TextureRegion(new Texture(Gdx.files    
  22. .internal("img/sky.jpg")), 5050480320));    
  23. stage1.addActor(image);    
  24. Image image2 = new Image(new TextureRegion(new Texture(Gdx.files    
  25. .internal("img/baihu.png")), 217157));    
  26. image2.x=(width-image2.width)/2;    
  27. image2.y=(height-image2.height)/2;    
  28. stage2.addActor(image2);    
  29. }   
  30. @Override    
  31. public void dispose() {    
  32. // TODO Auto-generated method stub   
  33. }   
  34. @Override    
  35. public void pause() {    
  36. // TODO Auto-generated method stub   
  37. }   
  38. @Override    
  39. public void render() {    
  40. Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);    
  41. stage1.act(Gdx.graphics.getDeltaTime());    
  42. stage2.act(Gdx.graphics.getDeltaTime());    
  43. stage1.draw();    
  44. stage2.draw();    
  45. }   
  46. @Override    
  47. public void resize(int width, int height) {    
  48. // TODO Auto-generated method stub   
  49. }   
  50. @Override    
  51. public void resume() {    
  52. // TODO Auto-generated method stub   
  53. }    
  54. }   

效果:

Android游戲引擎libgdx使用教程10:雙舞臺

如果你對于效率追求比較極致,可以考慮對于SpritBatch的緩沖數進行修改。

還有一個需要注意,背景舞臺應該先繪制,其他部件后繪制,不然效果就是下圖:

Android游戲引擎libgdx使用教程10:雙舞臺

關于舞臺的輸入控制,不能簡單的使用:

  1. Gdx.input.setInputProcessor(stage1);    
  2. Gdx.input.setInputProcessor(stage2);   

應該這樣做:

  1. InputMultiplexer inputMultiplexer=new InputMultiplexer();    
  2. inputMultiplexer.addProcessor(stage1);    
  3. inputMultiplexer.addProcessor(stage2);   

 

責任編輯:閆佳明 來源: jizhuomi
相關推薦

2013-12-04 16:28:29

Android游戲引擎libgdx教程

2013-12-04 17:14:57

Android游戲引擎libgdx教程

2013-12-04 13:30:45

Android游戲引擎libgdx教程

2013-12-06 09:59:53

Android游戲引擎libgdx教程

2013-12-04 17:27:10

Android游戲引擎libgdx教程

2013-12-06 10:12:49

Android游戲引擎libgdx教程

2013-12-06 10:22:42

Android游戲引擎libgdx教程

2013-12-04 16:07:27

Android游戲引擎libgdx教程

2013-12-04 16:21:02

Android游戲引擎libgdx教程

2013-12-06 10:35:28

Android游戲引擎libgdx教程

2011-07-18 10:53:09

2011-07-18 11:07:12

iPhone 游戲 引擎

2011-07-18 12:29:10

2011-07-18 11:23:29

iPhone 游戲 動畫

2011-07-18 11:39:58

iPhone 游戲 引擎

2014-06-03 09:35:19

Javalibgdx

2014-07-15 10:34:14

Android游戲引擎

2014-07-17 11:10:19

Android開源游戲引擎

2011-05-31 15:45:38

Android 游戲引擎 開源

2013-06-07 13:20:16

Android開發開源游戲引擎游戲開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕一区二区三区在线乱码 | 亚洲成人99 | 欧美精品久久 | 日日夜夜av| 久久久国产精品 | 伊人超碰 | 国产午夜精品一区二区三区嫩草 | 91看片免费版 | 国产午夜精品久久久 | 美女久久久 | 国产一区二区三区视频 | 久久激情网 | 91精品久久久 | 婷婷久久五月 | 欧美日韩专区 | 国产精品毛片一区二区三区 | 超碰人人人人 | 91久久伊人 | 亚洲精品一级 | 久久国产精品色av免费观看 | 亚洲色图综合网 | av中文在线 | 国产香蕉视频 | 91精品国产综合久久香蕉麻豆 | 日韩视频精品在线 | 啪啪免费 | 99久久精品免费看国产四区 | 亚洲免费在线观看视频 | 久久精品国产久精国产 | 成人在线精品 | 欧美精选一区二区 | 日韩不卡一区二区 | 日韩一区二区在线播放 | av片网| 亚洲系列第一页 | 久操福利 | 成人不卡在线 | 欧美不卡视频 | 国产视频久久 | 一区视频在线 | 欧美色视频免费 |