选择显示字体大小

在mascot capsule v3中使用多个纹理

原文地址链接

 

mascot capsule v3支持在轮廓上使用多个纹理,然而,重复纹理却是不支持的,例如,你不能在一个纹理上再添加另一个纹理。请记住,在mascot capsule v3里,所有纹理都是以256x256的图象存放在堆里的,并不考虑原始大小。

       下面我将创建一个使用两个独立纹理的midlet

 

下载源代码

html/uploadpic/2005-12/2005122331842453.gif" width=106 onload=javascript:resizepic(this) border=0>在这个立方体上使用了两个独立的纹理 

 

       当一个轮廓从3d authoring程序中导出时,一个bac文件被创建。这个bac文件是一个文本文件,它存储了轮廓数据。文件里的这些数据可以用pac工具或手工编辑。

       在mascot capsule v3 api中,这个bac文件不能以轮廓的形式被装载和使用。因此,我们得使用micro3dconv_sony_ericsson工具冲bac文件中创建一个mbac文件。在使用midlet以前,可以使用pvmicro工具预览轮廓的最终效果。

       如果我们关注bac文件,我们可以看纹理坐标说明书,接下来我们可以知道如何如何使用这些坐标来创建轮廓。

 

( texturecoords
    ( f2    0.0005 0.9995 )
    ( f2    0.9995 0.9995 )
    ( f2    0.9995 0.0005 )
    ( f2    0.0005 0.0005 )
  ) ; texturecoords  
 
 ( polygons; number of faces: 6
  ;        mat vertex indices  texture coord. indices
    ( face    0 ( i4 0 1
2 3  ) ( i4 2 3 0 1 )  )
    ( face    0 ( i4 4 5 6 7  ) ( i4 2 1 0 3 )  )
    ( face    0 ( i4 8 9 10 11  ) ( i4 2 1 0 3 )  )

    ( face    0 ( i4 12 13 14 15  ) ( i4 2 3 0 1 )  )
    ( face    0 ( i4 16 17 18 19  ) ( i4 0 3 2 1 )  )
    ( face    1 ( i4 20 21 22 23  ) ( i4 1 0 3 2 )  )
  )

 

在上面的表中,除了最后一个值为一以外,所有面的”mat”(材质)值为零,就是这个值为一的材质的纹理与其他的不同。

       当我们装载这些纹理信息时,必须使用一个数组来存储这些信息。下面是实现的代码:

 

cubefigure = new figure("/cube.mbac");
textures = new texture[] {new texture("/image.bmp", true),
               new texture("/se_turtle.bmp", true)};

cubefigure.settexture(textures);

 

g3d.renderfigure(cubefigure, 0, 0, layout, effect);

 

       为了之前的想法,我们必须把两张图象合并成一张图象。在这个例子中,两张96x96的图象被合并成一张192x96的图象。请注意:在一个轮廓中使用一张图片里的两种不同的纹理是可能实现的。

html/uploadpic/2005-12/2005122331842154.gif" width=192 onload=javascript:resizepic(this) border=0>

 

       下面的纹理坐标是用来控制在一个面显示乌龟图象的。

 

private int[] tex = {
            192, 0,     96, 0,    96, 96,     192, 96,
            0, 96,      96, 96,   96, 0,      0, 0,
            0, 96,      96, 96,   95, 0,      0, 0,
            0, 96,      96, 96,   95, 0,      0, 0,
            0, 96,      96, 96,   95, 0,      0, 0,
            0, 96,      96, 96,   95, 0,      0, 0};

 

       上面提到的一些工具可以在这里下载。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons