使用JSR-184里的Sprite3D对象
2008-02-23 09:26:14来源:互联网 阅读 ()
在这里我们将向你介绍如何使用Sprite3D类,并向你讲述基于索尼爱立信移动手机JP3(Java Platform 3)或JP4中使用该类特殊效果的优势。
索尼爱立信采用的JAVA平台能满足开发者开发手机上的各种应用程序。目前,索尼爱立信上使用的JAVA平台有5个版本,这些版本都是和开发者共同完成的,并将协助开发者在游戏可玩性上不断提高,新的JAVA平台将引入这一特点,并公之于众。 在索尼爱立信的JAVA平台上,开发者可以修改结构,例如:CLDC1.0或CLDC1.1,并可以按不同的需求增加可选包,例如:JSR-82等。 下面是在市面上支持JAVA平台的索尼爱立信主要特点和机型。 JP = Java Platform Sprite3D实际上就是把一张2D的图片放在3D的空间里。sprite总是正对着Camera的,而不考虑Camera的角度和World的旋转。 Sprite3D有两种类型: 1:固定模式(unscaled) sprite的大小是由剪裁矩形的宽和高的象素值决定的。 2:缩放模式(scaled) sprite着色的大小取决于该对象与active camera的距离。 在基于JP3或JP4的真实目标设备上实现sprite的特殊效果时。sprite不会在同一位置绘画,下面让我们看一个例子: 这是一张100*10象素的图片,我们用它来生成一个sprite,每一帧为10象素。 这是在基于JP3或JP4手机上的特效,例如:索尼爱立信K700 这是在模拟器或基于JP5手机上的特效,例如:索尼爱立信K750和K600 通过以上了解,在使用Sprite3D时,开发者需要为不同的目标设备改写应用程序。 需要注意的是,在使用精灵的缩放模式时,sprite必须按比例增加,增加的比例该sprite帧的个数相等的(你应该查看你的目标设备是如何实现的,在模拟器上却不需要)。 我们再看一个例子: CompositingMode cm = new CompositingMode(); cm.setBlending(CompositingMode.ALPHA); Appearance appearance = new Appearance(); appearance.setCompositingMode(cm); sprite3D = new Sprite3D(false, new Image2D(Image2D.RGBA, texImg), appearance); sprite3D.scale(10.0f, 1.0f, 1.0f);//假设该精灵由10帧组成 sprite3D.setCrop(0, 0, 10, 10); 要做成这种特殊颜色效果,首先要创建一张由这些颜色组成的png图片,并创建一个格式为RGBA的Image2D的对象,然后添加CompositingMode到Appearance中。 如果你要使用缩放模式的精灵,你必须通知并使用Transform类去移动精灵,精灵将会按一定缩放比例变换。 sprite3D.scale(6.0f, 1.0f, 1.0f); sprite3D.translate(6.0f, 0.0f, 0.0f);//与postTranslate(1.0f, 0.0f, 0.0f)方法同样的结果 transform.postTranslate(1.0f, 0.0f, 0.0f); sprite3D.setTransform(transform);上一篇: 工厂模式-使用同一接口创建不同的类实例
下一篇: 单建模式-全局共享类的一个实例
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash