作者:mydeman 文章来源:http://www.j2medev.com/Article/ShowArticle.asp?ArticleID=810
Mascot Capsule Micro3D V3 API支持颜色掩盖和四种纹理与背景颜色混合模式。
当混合颜色时,来自背景RGB值和来自纹理的RGB颜色单独的混合。请注意,Half(一半)、Addition(相加)和Subtract(相减)模式不能同时作用于同一个多边形。
下面的表格显示了背景和纹理的颜色是如何混合在一起的。
属性 |
背景 |
纹理 |
Normal(正常) |
0% |
+100% |
Half(一半) |
50% |
+50% |
Add(相加) |
100% |
+100% |
Sub(相减) |
100% |
-100% |
可以使用下面命令中的一个来完成颜色混合:
Graphics3D.PATTR_BLEND_NORMAL
Graphics3D.PATTR_BLEND_HALF
Graphics3D.PATTR_BLEND_ADD
Graphics3D.PATTR_BLEND_SUB
// 示例命令
private final int COMMAND = Graphics3D.PDATA_NORMAL_NONE |
Graphics3D.PDATA_TEXURE_COORD |
Graphics3D.PRIMITVE_QUADS |
Graphics3D.PATTR_BLEND_HALF;
别忘了使用透明度设置效果:
effect.setTransparency (true);
掩盖的实现同样简单。只需使用Graphics3D.PATTR_COLORKEY命令,然后结合在图片所使用的调色板中的一个给定值0,就可以掩盖出第一种颜色。
当掩盖颜色时,你不能使用透明度设置效果。
下面的Ghost图片展示了当分别使用1)Normal、2)PATTR_COLORKEY和3)PATTR_BLEND_HALF | PATTR_COLORKEY时不同的效果。
|
|
|
Normal(正常,没有混合) |
使用掩盖(ColorKey) |
使用一半混合和掩盖(ColorKey) |
本文以及例子都比较简单,不再做分析。另外,我们可以修改keyPressed()方法,观察每一种混合属性和PATTR_COLORKEY的单独效果,修改后程序如下:
public void keyPressed(int key) {
if (key == -6) {
index = index == 4 ? 0 : index + 1;
if (index == 0) {
// 去掉前一种的混合效果
COMMAND ^= Graphics3D.PATTR_BLEND_ADD;
// 正常模式
COMMAND |= Graphics3D.PATTR_BLEND_NORMAL;
} else if (index == 1) {
COMMAND ^= Graphics3D.PATTR_BLEND_NORMAL;
// 使用COLORKEY
COMMAND |= Graphics3D.PATTR_COLORKEY;
} else if (index == 2){
COMMAND ^= Graphics3D.PATTR_COLORKEY;
// 一半的混合模式
COMMAND |= Graphics3D.PATTR_BLEND_HALF;
} else if (index == 3){
COMMAND ^= Graphics3D.PATTR_BLEND_HALF;
// 相减的混合模式
COMMAND |= Graphics3D.PATTR_BLEND_SUB;
} else if (index == 4){
COMMAND ^= Graphics3D.PATTR_BLEND_SUB;
// 相加的混合模式
COMMAND |= Graphics3D.PATTR_BLEND_ADD;
}
}
}
下载范例程序和源代码
下载范例程序和源代码
分享到:
相关推荐
Mascot Capsule v3是一款专为移动设备优化的3D引擎,提供了更为高级的图形处理能力,如高级光影效果、动态阴影、粒子系统等。相比JSR-184,它更适合于开发大型、复杂度高的3D游戏。教程将深入探讨Mascot Capsule v3...
教程内容源自Sony Ericsson Mobile Communications AB,涵盖了JSR-184和Mascot Capsule v3两个关键标准,它们都是为了在J2ME平台上实现3D图形支持而制定的。 **JSR-184(Mobile 3D Graphics API)** 是Java ...
文中详细介绍了如何在索尼爱立信的一系列手机上利用Java ME实现3D图形处理,以及如何使用Mascot Capsule Micro 3D Version 3 和 JSR 184 Mobile 3D Graphics API 来开发Java 3D应用程序。 #### 二、目标受众 - **...
而Mascot Capsule v3依靠”look-at”方法,这是在某些3D API里的通用方法。look-at方法从一个position,一个 look-at direction和一个up vector创建一个照相机转换矩阵,为了方便Mascot Capsule v3与JSR-184之间的...
Mascot Capsule v3是另一个关键概念,它是JSR-184的实现之一,由索尼爱立信(现合并为索尼移动通信)开发。Mascot Capsule提供了一个高效、可移植的框架,让开发者能够利用JSR-184的功能。它包括了3D渲染引擎、纹理...
Mascot Capsule篇介绍了Mascot Capsule技术,这是一种用于创建3D模型和动画的特殊技术,包括3D模型的绘制、3D变换和透明纹理精灵的实现,以及几个实例演示,如动画机器人、跳舞的男孩和旋转的飞机。 总的来说,这...
Mascot Capsule v3则是Sony Ericsson提供的一套用于创建高质量3D图形的软件库。这些技术使开发者能够在移动设备上创建出具有复杂3D效果的应用程序和游戏,满足了市场对于高质量移动娱乐的需求。 #### 五、J2ME开发...
Mascot Capsule API在日本及其他地区有广泛应用,而JSR 239(Java Bindings for OpenGL ES)为OpenGL ES提供了一个Java接口,简化了3D内容的移植。尽管M3G、OpenGL ES和Mascot Capsule API各有特点,但M3G获得了广泛...
- Mascot Capsule V3 4. **Java平台4 (JP4)** - 特性: - MIDP 2.0 - CLDC 1.1 - JSR-185 - JSR-120 (WMA) - JSR-135 (MMAPI) - Nokia UI API 1.1 - JSR-184 (Mobile 3D) - Mascot Capsule V3 - JSR-75 ...
J2ME 3D通过提供一套API(如Mascot Capsule 3D)来支持3D图形渲染、动画等功能,从而使得开发者能够创建更为丰富和复杂的3D移动应用。 #### 二、开发环境的选择和配置 选择合适的开发工具对于提高开发效率至关重要...
★已经过安装测试,但使用者后果自负与本论坛无关。 [免责声明] ★本帖介绍的文本内容转自网络,如有出入则以官方站点公布之信息为准,凡摘自网络相关图文介绍内容的本帖不另行标注出处,原创作者如有异议可提出...
TX Mascot Installer.exe
从 MASCOT 通用格式 (.mgf) 文件读取和提取数据的函数.mgf 格式包含最少的元数据(频谱标题、保留时间、前体质量、前体强度和电荷)和相应的MS2频谱( https://fiehnlab.ucdavis.edu/projects/lipidblast/mgf-files ...
它支持大多数2D游戏以及某些限制的3D(Mascot Capsule 3D游戏不起作用)。 仿真器具有虚拟键盘,每个应用程序的单独设置,扩展支持。 该项目是。 系统要求:Android 4.0+ 兼容性 提示 在某些情况下启用过滤会...
从 Github 使用 R: install.packages( " devtools " ) library( " devtools " ) install_github( " mascotParser " , " nghiavtr " ) library( " mascotParser " ) ##1。 解析 MSMS Mascot 搜索结果文件的示例: ...