在JmonkeyEngine里进行swing编程

 

 

在monkey里怎么加入导航,还有一些重要的信息,比如游戏人物的一些属性,而且这个只需要二维显示就行了。

添加swing组件是比较好的选择。

 

一、生成swing显示桌面。

		display=DisplaySystem.getDisplaySystem();
		displaywide=display.getWidth();
		displayheight=display.getHeight();
		desktop=new JMEDesktop("controldesk");
		desktop.getJDesktop().setBackground(new Color(0,0,0,0));//完全透明
		desktop.setup(displaywide,displayheight,false,input);
                this.attachChild(desktop);

 

    这个桌面对象 desktop可以放在三维场景中的任意位置,但我希望他能固定在摄像机前面,

    下面这一句很有用,设置渲染模式

    this.setRenderQueueMode(Renderer.QUEUE_ORTHO);

    有了这一句,这个桌面好像就贴在了摄像机的镜头上了,不再属于三维场景,不太理解

    

 

二、生成桌面控制器

    desktopPane=desktop.getJDesktop();

  

   有了这个控制器对象,就可以在上面添加各种swing组件了

 

比如:

         JButton changegear=new JButton("切换油门档(C)");
         changegear.setSize(displaywide/8, displayheight/23);
         changegear.setLocation(displaywide*58/100, displayheight*95/100);
         desktopPane.add(changegear);

 

下面show我做的坦克游戏 swing效果:


在JmonkeyEngine里进行swing编程_第1张图片

 

下面白色的文字是 TEXT2D,不支持中文,到时换成jLabel就OK了。  按钮和小地图是swing 写的,小地图中红色的是敌人,

白色的是主角,不动的,只是方向根据车体指向变化,和敌人的位置进行了一下坐标变换就成了,真实的雷达应该也是这样显示的。

google code地址:http://code.google.com/p/netjava3d/ 有兴趣一起研究吧!

 

 

 

你可能感兴趣的:(游戏,编程,swing,qq,Google)