索尼爱立信K700手机的Java 3D引擎提供了访问全新开发领域的可能性。K700同时支持JSR 184和Mascot Capsule 第三版的API,本文将主要关注使用Mascot Capsule第三版API的技巧。
通用3D建模技巧
Mascot Capsule引擎第三版只支持0%,5%和100%的多边形透明度,因此创建3D模型的时候确保只使用了上述数值。
将每个模型导出为一个BAC文件。虽然也可以把多个模型导出到一个BAC文件中,但是这样只能使得你的编程工作更加复杂。
导出模型的时候,让你的模型位于0,0,0。这样可以使得编程更简单。
Camera和Light不能被导出到BAC文件,因此不要在你的3D模型中浪费时间来设置这些内容。
骨架的重量值只能取100%或者0%,其他的任何值都无效。
3D显示技巧
使用下面的3种方法可以减小你的3D MIDlet的纹理失真的情况:
1、 在失真区域使用更多的多边形
2、 使用非常难辨认出来是否发生扭曲的帖图,假如可能的话,使用随机模式会使帖图更清楚
3、 尽量把这些区域隐藏在2D图形后面
Mascat Capsule使用Z排序算法来计算多边形的顺序。像所有的Z排序一样,这意味着有时候多边形的绘制顺序和眼睛看到的可能不一致。细分多边形可以解决这个问题。另一方面,假如顺序的问题出在模型之间,通过刷新不同模型之间的绘画缓存可以减小这个问题的影响程度。
程序性能技巧
绞尽脑汁多想一些办法来创建同样的效果,然后选择消耗处理器和内存最小的方式。
3D模型中多边形的数量是影响性能的要害因素。然而,这并非唯一的因素。在移动电话这种处理能力有限的设备上,你应该多计算绘画的像素数量而不光是多边形的数量。具有多个多边形的小模型绘画速度比多边形数目少的大模型快。