JPCT-AE的3D游戏——添加图片

本文详细介绍了在游戏开发中如何批量载入图片并将其显示在2D界面上,包括使用assets、drawable和raw文件夹载入图片的方法,以及如何将Texture对象注册到TextureManager中和创建Overlay对象来实现实时贴图效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于多种原因,现在忙得很,所以更新不太稳定,不过发现也没什么人看,所以也不是太有关系的。

今天主要讲一点内容就是添加图片,并将其显示在屏幕上,其实就是2D的图片了。在我们做3D的游戏时,像一些选项界面什么的都是2D的。

下面是主要步骤了:

1、载入图片

图片一般有两个存放的文件夹,一个是assets文件夹,一个是drawable文件夹,当然我一般是放在raw文件夹下的,这个文件夹是创建在R下的。assets文件夹中内容的特点是ADT不会为该文件下的内容分配资源编号。也就是在读取时需要给出文件路径。方法如下:

		Texture Tex_Result;
		Resources res=getResources();
		AssetManager am = res.getAssets();
		try {
			InputStream is;
			is=am.open("texttex/" + filename + ".jpg");
			tex_Result=new Texture(is);
			TextureManager.getInstance().addTexture(filename, tex_Result);
		}catch(IOException e){
			Logger.log("error:Text load failing");
		}


这种方法的好处是可以实现载人的批量处理,只要你图片命名的有规律。


第二种方法就是直接Texture(R.XX.XX)的方法了,这个直接加载图片资源到Texture对象。之前的方法是Texture(InputStream)。


2、将Texture对象注册到TextureManager中

所以的Texture对象在使用前都要注册到TextureManager中,然后分配一个名称。如上面代码的

TextureManager.getInstance().addTexture(filename, tex_Result);
filename是String型的,也就是你分配给这个Texture对象的名称了,后面的tex_Result就是Texture对象了。


3、创建Overlay对象

JPCT-AE中实现2D图片的就是Overlay这个类了,其实它也可以在3D空间上实现图片贴在屏幕上的效果,像我以后要做的游戏中的控制杆,就是用它实现的。不管你怎样移动空间中的物体。控制杆总是贴在屏幕上的。

方法简单:

Overlay mOverlay = new(world,x1,y1,x2,y2,texturename);

这个是简单的创建了,当然还有其他方法。先解释一下,world当然就是指游戏中的world对象,或者说是这个贴图存在的空间。x1,y1,x2,y2是这张贴图的2D的位置,要给出左上点和右下点。texturename就是之前注册的Texture对象的名称了,想贴哪张就贴哪张。





在这张图中主要实现了点击进入几个字样的隐现效果,道理很简单,就是改变这个Overlay对象的透明度就可以了。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值