`
micheal19840929
  • 浏览: 168527 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

导出M3G文件指南

    博客分类:
  • J2ME
阅读更多

 

概述:

       这个文档罗列了一些我们在开发3D模型和使用M3G作为最终输出模型时需要注意的一些问题。注意本指南中讨论的时使用的是3DMax3D的建模工具。

1.  通常的问题:

a)       如果你想你的应用程序能够运行一个任意的适合M3G的引擎,那们就不要使用任何额外的扩展接口。当不确定某一接口是否可用时,可以参考在的文档http://www.forum.nokia.com/java | Documents | Java API Specifications.(JSR184)。

b)       文件打算生成一个Java压缩文件(JAR)或者普通的压缩文件时应当非压缩地导出。在程序开始时,解压同样数据两次会使程序变慢,并且相当关键地是增加内存的消耗。

c)        我们在代码中需要存取的那些对象需要有唯一的UserID值。

2.  摄像机

a)         手动设置摄像机的剪切框。

b)        尽可能的从零点移动近的剪切框。

c)        移动远的剪切框时,尽可能的接近近的剪切框。

d)        确保在场景中至少有一个可用的摄像机。

e)         如果使用了多个摄像机,确保在输出时至少其中的一个是可用的。

3.  几何学

a)         使用更好的表面纹理细节代替几何的贴图(译者注:尽量减少多边形个数)。

b)        确保无论在任何地方,网格都是实例的。

c)        删除所有不必要的顶点和多边形。

d)        不用在屏幕上不被显示的比较小的多边形。

e)         避免同一平面多边形彼此覆盖,举个例子使用二进制运算符将这些多边形连成不互相覆盖的多边形

f)         对于减少多边形的个数,使用相交的几何图形优于合并过的多变形。然而,注意过深的相交几何也增加了光栅化的负荷。在所有的接口中相交多边形可能不是抗锯齿(anti-aliased

g)        确认所有的物体形状都已经被重新设置,尽可能多的让一些形状被设置成唯一的矩阵。

h)        单一的蒙皮网格可能比使用多等级的物体处理速度快,这依赖于接口和向量数组的宽度。

i)          在实时的光线渲染时,表面的法线向量是必须的。

4.  光线

a)         为了使光线看起来比较好,物体通常被分割(分割多边形)。

b)        只渲染那些需要光线的物体,因为光线计算十分耗费资源。

c)        光线映射在很多情况下是比较快和效果十分好的,相对于实时的光线操作。

d)        在同一个物体上使用光线映射和散射映射时,请确定你的目标硬件设备是否支持多贴图(所有的Nokia都支持)。

e)         如果可能,尽量使用方向灯光而不是点光源。

f)         天空光源(环境光源),面光源,和其他的更高级的光源是不支持的。

g)        动态阴影是不支持的,可以使用贴图映射的方式显示阴影效果。

h)        方向光照不能被消减和限制成一个锥体(相当于使用点光源)。

i)          在场景中不要使用多于一两个光源,如果你想使用更多,那们在你的程序中使用屏蔽和列表的方式,在需要光照的物体上分别使用不同的光源。

j)          如果你的程序想在所有的接口上使用,在任何物体上都不要使用超过8个的虚拟光源。

5.  表现和贴图

a)         保持贴图尽可能的消以节省内存。

b)        确保如果使用一种以上的材质素材时图片是实例化的。

c)        使用透明(Alpha)或亮度(Luminance)的格式代替使用RGBRGBA的格式。

d)        使用压缩的象素格式代替原始的RGBRGBA格式。

e)         不要使用低于16×16的调色板。

f)         如果使所有的设备都能够运行你的程序,那么贴图的大小不能超过256×256。而且长和宽都必须使2的幂(1248163264128256),但不要求相同。

g)        在任何可能的地方,使用Compositing = REPLACETexture Blending = REPLACE模式,以减少每个象素点的计算。

h)        如果你使用1alpha(就是透明绘制),总是使用Texture Blending RPLACEAlpha Threshold0.5的贴图,这比使用Texturing Blending ALPHA快的多。

i)          在你导出文件时,删除掉你不用的所有的数据,包括向量颜色或贴图坐标等,这样可以节省文件的大小和内存。

j)          如果可能使用8位的贴图坐标而不是16位的。

k)        对于背景的贴图必须是RGB格式的,除非你使用Image2D创建场景可以使用RGBA格式。

6.  动画

a)         删除所有不必要的帧。

b)        针对于较快的处理速度使用线性的帧,对于要长时间播放使用时间槽方式。

c)        旋转时使用时间槽控制器,以减少帧数。

d)        使用时间槽控制器时,确保所有输入输出设置都是相同的。

e)         在骨骼上不要使用没有定义的比例尺

f)  所有运动目标必须有相同的时间键数字。

 

分享到:
评论

相关推荐

    类:要素导出shp文件

    类:要素导出shp文件 本文将详细介绍如何使用 ArcGIS 的 API 实现要素导出 shp 文件的功能。该类文件中提供了一个名为 ExportToShp 的类,用于将要素类导出到 shp 文件中。 一、导出要素类的参数设置 在 ...

    javaScript 导出excel文件

    JavaScript 导出 Excel 文件 JavaScript 导出 Excel 文件是指使用 JavaScript 语言将 HTML 表格数据导出到 Excel 文件中的过程。在本文中,我们将探讨如何使用 JavaScript 实现 Excel 文件的导出,并介绍相关的技术...

    kibana 的配置文件导出

    kibana 的配置文件导出kibana 的配置文件导出kibana 的配置文件导出kibana 的配置文件导出kibana 的配置文件导出kibana 的配置文件导出kibana 的配置文件导出kibana 的配置文件导出kibana 的配置文件导出kibana 的...

    m3_export_3dsmax m3模型导出

    M3 Import Script,3ds Max 的M3模型导出

    Oracle可执行文件,包含导入导出可执行文件

    `expdp`是数据泵导出工具,它能将数据库对象(如表、视图、存储过程等)及其相关的数据导出到一个二进制的转储文件中。这个转储文件可以在需要时用`impdp`工具导入到其他Oracle数据库中。`expdp`支持多种导出模式,...

    导出EDIF文件

    ### 导出EDIF文件 #### 一、概述 在电子设计自动化(EDA)领域,EDIF(Electronic Design Interchange Format)是一种广泛采用的标准格式,用于在不同的EDA工具之间交换电路设计数据。导出EDIF文件是将一个电路...

    C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致的解决办法

    "C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致的解决办法" 在导出Excel文件时,经常会遇到“文件格式与扩展名指定格式不一致”的问题,这是因为大多数人在导出Excel文件时,都是默认保存Excel的格式...

    使用wireshark导出rtpdump文件步骤

    使用Wireshark导出RTPdump文件是网络分析和故障排除过程中一个非常有用的技术,特别是在处理VoIP(Voice over IP)和音频/视频流通信时。RTP(Real-time Transport Protocol)是互联网上用于实时数据传输的一套标准...

    spring mvc+ajax 导出导入xml文件功能实现和整理

    在本篇文档中,我们主要探讨了使用Spring MVC和Ajax技术实现导出和导入XML文件的功能。这一技术在Web开发中十分常见,用于在客户端与服务器之间传输数据,且常常用于文件操作场景。 首先,我们来看文档中提及的导入...

    Java导出CSV文件

    java导出数据时,如果对数据格式没有特殊要求,为了提高效率可以导出CSV格式的文件,导出CSV文件不支持多个sheet页。

    idea增量导出web目录文件插件

    idea插件,可以按照web目录格式增量导出war包文件。使用方法:1.导入插件;2.在要导出的java文件中右键--》Generate War Packages--》按照提示导出。

    数据库表导出CHM文件

    数据库表导出CHM文件是一项实用的技术,它允许用户将数据库中的数据整理并保存为Microsoft的帮助文件格式(CHM)。这种格式便于查看、检索和分发,尤其适用于创建数据库手册或文档。支持多种数据库系统,如SQL ...

    SQL SERVER 导出image 类型文件到本地

    易写的从SQL SERVER 中导出image 类型文件到本地

    MATLAB导出stl格式文件

    在MATLAB环境中,导出STL( Stereolithography)格式文件是一项常见的任务,尤其对于3D打印和计算机辅助设计(CAD)应用来说至关重要。STL是一种标准的3D几何模型文件格式,它以三角面片来表示物体的表面。本主题将...

    Excel文件(xlsx)导出json文件

    Excel文件(xlsx)导出json文件 Excel文件(xlsx)导出json文件 Excel文件(xlsx)导出json文件 Excel文件(xlsx)导出json文件 Excel文件(xlsx)导出json文件 Excel文件(xlsx)导出json文件 Excel文件(xlsx)导出json文件 ...

    将datatable里的数据导出DBF文件

    - **标准库复制**:为了确保导出的DBF文件结构符合预期,首先需要复制一个标准的DBF文件作为模板。这一步骤确保了导出的DBF文件具有正确的字段定义和数据类型。 - 代码示例: ```csharp System.IO.File.Copy...

    oracle数据库的表数据导出为csv文件

    ### Oracle数据库表数据导出为CSV文件的知识点详解 #### 一、背景介绍 在日常工作中,我们常常需要将Oracle数据库中的表数据导出为CSV文件格式,以便于数据分析、备份或其他用途。本文将详细介绍如何使用Oracle PL/...

    Visual C++源代码 173 如何把水晶报表导出到Excel文件

    Visual C++源代码 173 如何把水晶报表导出到Excel文件Visual C++源代码 173 如何把水晶报表导出到Excel文件Visual C++源代码 173 如何把水晶报表导出到Excel文件Visual C++源代码 173 如何把水晶报表导出到Excel文件...

    postman导出的json文件转Jmeter的jmx文件

    postman导出的json文件转Jmeter的jmx文件,根据github开源项目 https://github.com/Loadium/postman2jmx.git 打包而成的jar。 有java环境的可以直接运行 需要传两个参数: - 第一个参数为postman导出的json文件; -...

    SilvacoTonyplot中如何导出数据导出图片保存文件[汇编].pdf

    在 Silvaco Tonyplot 中,用户可以将.log 文件导出成.dat 文件,然后使用 Origin 作图。下面是具体的操作步骤: 1. 在 Silvaco Tonyplot 中,选择需要导出的.log 文件。 2. 点击“File”菜单,选择“Export”。 3. ...

Global site tag (gtag.js) - Google Analytics