zoukankan      html  css  js  c++  java
  • oiramExporter 0.222 release

    Author: oiram
    Project: Ogre exporter for 3ds max
    Type: plugin
    Name: oiramExporter
    Supported Versions: 3ds max 9 to 2012
    Version: 0.222 on 10/22/2012
    Last modified on tuesday 23 of october, 2012 22:25
    1. 增加了中文描述信息

    2. 增加了使用方法 

    How to use:
    使用方法:
    1. copy files to "3dsmax\plugins\" directory
    将插件的3个文件复制到3ds max的插件目录下
    2. open max file
    打开需要导出的max文件
    3. File -> Export -> "Save as type" choose "oiramExporter(*.mesh, *.skeleton, *.material)" with any "File name"
    选择菜单"文件",选择"导出",选择插件"oiramExporter(*.mesh, *.skeleton, *.material)",文件名任意,导出时不会以此为主
    4. in target output directory, you could find a directory's name  as same as max file name
    在导出的目录中,你可以看到一个目录的名称与max文件的名称相同,里面就是所有导出的文件了
    5. use model view editor to render
    使用模型查看器来观察模型或场景
    Features:
    common
    通用
    --------------
    free:
    免费版
    1.  exporting only mesh, only material or only dot scene
        提高效率, 避免每次都全部导出, 支持只导出.mesh或.material或是.scene
    2.  ogre version selection
        因为文件格式的细微的不同, 可以选择ogre的不同的版本1.8/1.7/1.6
    3.  exporting progress dialog
        显示导出进度
    4.  exporting information dialog
        显示导出的成功/失败/警告信息
    5.  save/load animation configuration
        通常美术导出动画时, 需要填写多个动画的起始/结束帧, 为了避免修改后重新导出时的重复填写, 支持通过载入上次导出时生成的motion.xml来提高效率
    6.  fixed function pipeline
        完全支持固定管线
    7.  3ds max 9/2008/2009/2010/2011/2012 with x86(32bits) and x64(64bits)
        支持32位和64位下的3ds max的多个版本: 9/2008/2009/2010/2011/2012
    commercial:
    商用版
    1.  vertex compression(save 60%)
        顶点数据压缩, 可以节省至少60%的数据量, 通过在vs中解压实现相同的效果, 这种优化方法尤其适用于移动设备
    2.  cartoon shading(post effet silhouette)
        卡通渲染技术, 通过后期特效来实现勾边
    3.  next generation shading(normalMap, specularMap, emissiveMap, glowMap)
        次世代渲染技术, 法线贴图/高光贴图/自发光贴图/辉光贴图
    4.  hardware skinning
        GPU硬件骨骼动画
    5.  normalMap swizzle, ag for DXTC, rg for PVRTC
        法线贴图在压缩后会有精度上的丢失, 对于DXTC5的压缩, 由于alpha和green的占位最高, 所以使用ag来保存normal的x和y, 然后在shader中计算出z以提高normalMap的精度; 
    对于PVRTC则选择PVRTC_BPP_4的RGB格式, 此时r和g的占位最高, 原理同DXTC
    6.  LOD generation, save/load LODs configuration
        自动根据参数生成多级LOD的mesh数据, 为了避免多次导出时重复填写参数, 支持通过选择上次导出时记录的LOD参数来提高效率
    7.  3ds max 2013 with x86(32bits) and x64(64bits)
        提供32位和64位的3ds max 2013 unicode版的插件
    8.  model view editor
        模型查看器
    9.  cartoon/next generation shader
        提供完整的卡通渲染和次世代渲染的shader
    10. ssao shader
        提供完整的SSAO的shader
    11. bloom/glow shader
        提供后期特效的全屏辉光和泛光的shader
    --------------
    mesh
    网格
    --------------
    free:
    免费版
    1.  position, diffuse, normal, multiple texcoord, tangent/binormal, bone assignments
        支持导出: 顶点、颜色、法线、多层纹理、切线、骨骼绑定数据
    2.  duplication reverse vertices when two sided, not simple "cullmode none" yet
        当美术在max中选择"双面"时, 再也不会像其他插件那样, 只是设置渲染状态为"不裁剪", 而是真的复制一份相反的顶点数据, 从而保证了正/背面的光照等效果
    3.  morph animation
        顶点动画
    4.  blend weights/indices
        骨骼动画数据
    5.  warning with more then 4 bones assignments and weights re-normalized
        当美术不小心在蒙皮时给某个顶点附上超过4根骨骼时, 插件在导出时会给予警告, 同时也会自动取其最大的4个权重, 并且重新归一化所有权重
    6.  splitting sub-mesh by material
        自动根据材质的不同来拆分成多个子mesh
    7.  unique renaming with legality name
        3ds max允许美术对节点有相同的命名, 这会在引擎中导致各种的问题, 另外文件系统也对一些非法字符有限制, 插件对此统一做了重命名处理, 并将非法字符转换成下划线, 而且在多次导出时都会保持一致
    8.  lighting map with shell material
        支持在3ds max中进行光照贴图的烘焙, 选择将光照贴图烘焙到新建的壳材质的漫反射贴图上, 插件在导出时会自动识别
    9.  re-calculate bounding box with animation mesh
        模型在施加了骨骼或顶点动画后, 原先的包裹盒会导致裁剪错误, 插件会根据动画信息导出一个新的包裹盒以解决这种问题
    10. geometry reference(instanced) checking
        场景中通常会出现大量重复的相同的物体, 比如:树木,通过在制作时, 对于重复的物体使用复制实例的方式, 则相同的mesh只会有一份, 减少了不必要的空间占用
    11. texcoords with rotation, wrap/mirror and translation
        支持对于纹理坐标的各种变换
    12. Gram-Schmidt orthogonalize with tangent, the tangent is float4, w is handedness
        确保切线空间的正确, 同时解决了美术使用镜像时, 导致的光照不正确的问题, 通过tangent的第4个分量w来保存切线空间的左右手向
    commercial:
    商用版
    1.  weld vertices
        模型中有大量的重复顶点, 通过顶点缝合, 大大减少顶点的数量(数据量), 降低渲染开销, 减少约10-20%
    2.  vertex cache optimization
        通过重新整理顶点的存放顺序和渲染顺序, 以提高显卡中顶点缓存的命中率, 提高渲染效率约5%
    3.  splitting sub-mesh by max bones number with programmable pipeline
        硬件实现骨骼动画时, 会受到显卡寄存器数量和shader复杂程度的影响, 通过设置一个批次中的最大骨骼数量, 由插件负责将超出的部分单独分离成一个新的子mesh, 这样就不需要美术去调整
    4.  LOD generation
        根据参数自动生成LOD的mesh数据
    5.  vertex compression, unsigned char 4 for normal/binormal, unsigned char 4 for blend weights,
        short2 for texcoord0, short4 for lighting map(texcoord0/texcoord1)
    顶点数据压缩, 将法线和次法线用uchar4表示, 骨骼权重用uchar4, 纹理坐标使用short2, 当使用光照贴图时(因为有两层纹理坐标)使用short4, 通过压缩mesh的大小可以减少60%
    --------------
            
    skeleton
    骨骼动画
    --------------
    free:
    免费版
    1.  biped skeletons
        支持CS和skin骨骼
    2.  multiple animation
        支持美术将全部动画制作在一个max文件中, 使用起始/结束帧来区分多个动画
    3.  multiple root bones
        场景中允许有多套骨架的骨骼动画存在
    4.  only 1 skeleton file with same skeletal
        当使用avatar时, 多个mesh会蒙皮在相同的一个骨架上, 这时插件会自动识别并只导出一份skeleton, 然后由程序负责在载入多个mesh时分享这份相同的骨骼
    5.  bone with mirror operation
        通常美术在制作对称角色时, 会只建一半的骨骼, 另一半通过复制镜像出来, 插件支持骨骼的镜像操作, 在其他的插件中, 如果美术对骨骼使用镜像操作, 则镜像部分的骨骼动画会出现错误的变形
    6.  tag-point(helper with named "tag_")
        角色的挂载点通过在骨骼上绑定一个名称前缀为"tag_"的helper物体实现, 插件将这种类型的物体解释为"挂载点"
    7.  warning with non-uniform scale check
        对于骨骼的非统一缩放将会产生一条警告, 因为这样的缩放在实时的引擎中是无法模拟的
    8.  remove unused bone/helper
        尤其是CS骨骼在拖出来之后, 会有一些完全没有有效关键帧的骨骼, 或是没有被顶点"引用"的骨骼, 或是既没有动画也没有挂载点命名的helper, 都会被移除以减少数据量的大小和计算
    commercial:
    商用版
    1.  skeleton animation optimization, remove unused key frame, less key frame and same result
        骨骼动画数据优化, 移除无用的关键帧, 减少关键帧的数量, 但保持最终的渲染效果不变
    2.  empty animation checking
        如果一个动画完全没有关键帧则会被移除
    3.  remove repeat key frames at animation tail when dot scene exporting
        在作为场景导出时, 骨骼动画将会被作为一个不停重复的动画来导出, 此时场景的总帧数可能会大于骨骼的动画帧数, 这时骨骼动画尾部的相同帧将会被移除以保证场景在渲染时效果正确
    4.  remove empty key frames
        移除完全没有变换信息的关键帧
    5.  remove same key frames with adjacent key frames
        移除完全相同的相邻帧
    6.  remove key frames which could generation with interpolation 
        移除可以通过插值生成的关键帧
    7.  animation compression and clean
        动画数据压缩和清理, 通过上述优化, 动画的长度信息将会重新计算以保证正确
    --------------
    material
    材质
    --------------
    free:
    免费版
    1.  3ds max stanard material conversion(standard, shell, sub material, mix, normal, ifl)
        支持全部3ds max的标准材质(壳材质、子材质、混合材质、法线/凹凸、序列帧), 实时渲染中将与3ds max中观察到的完全一致
    2.  material/texture unique renaming with legality name
        3ds max允许美术对材质和纹理有相同的名称和命名, 插件将会对重复的名称进行重命名, 并将非法字符转换成下划线, 而且在多次导出时都会保持一致
    3.  texture animation with ifl
        支持ifl方式的纹理动画, 所有的纹理序列帧将会被导出, 并生成对应的材质信息
    4.  texcoord transform
        完全支持纹理坐标的各种变换
    5.  diffuse map, specular map, self illumination map, opacity map, bump/normal map, reflection map
        支持导出材质中的贴图类型: 漫反射贴图、高光贴图、自发光贴图、透明贴图、凹凸/法线贴图、反射贴图
    6.  two sided, phong/flat shading, alpha blend, alpha test
        支持导出材质中的信息: 双面、phong/flat光照、alpha混合、alpha测试
    7.  ambient color, diffse color, specular color, emissive color
        支持导出材质中的颜色: 环境颜色、漫反射颜色、高光颜色、自发光颜色
    8.  material renaming when static and dynamic mesh with same material
        静态物体和动态物体(骨骼动画、顶点动画)可能拥有相同的材质, 对于这样重名的材质, 在通过使用材质派生来实现使用硬件加速时会产生问题, 插件将会进行重命名操作, 而且在多次导出时都会保持一致
    commercial:
    商用版
    1.  image compression to DXTC, PVRTC1 BPP2/4, ETC1
        可以根据目标平台的不同, 将贴图压缩成所需的DXTC/PVRTC/ETC1等格式
    2.  image compression quality option
        可以选择贴图压缩的精度和速度
    3.  normalMap swizzle, ag for DXTC, rg for PVRTC
        法线贴图在压缩后会有精度上的丢失, 对于DXTC5的压缩, 由于alpha和green的占位最高, 所以使用ag来保存normal的x和y, 然后在shader中计算出z以提高normalMap的精度; 
    对于PVRTC则选择PVRTC_BPP_4的RGB格式, 此时r和g的占位最高, 原理同DXTC
    4.  image power of two checking and resizing
        检测贴图的大小是否为2的幂, 并且进行缩放
    5.  image max size checking and resizing
        检测贴图的大小是否超过最大尺寸限制, 并且进行缩放
    6.  image generation mipmaps
        自动生成贴图的mipmaps信息
    7.  min/max size checking and resizing for PVRTC and ETC1
        对于PVRTC和ETC1有着最大尺寸的限制, 当选择压缩贴图为两者时, 会自动对超出2048的贴图的尺寸进行缩放
    --------------
    scene
    场景信息
    --------------
    free:
    免费版
    1.  ambient color in environment and effects dialog
        支持导出在3ds max的environment and effects对话框中的环境光信息
    2.  standard fog atmospheric in environment and effects dialog
        支持导出在3ds max的environment and effects对话框中的雾效信息
    3.  user defined properties of node(like: sound = x, particle system = y)
        有些信息和操作是在3ds max中无法表现的, 例如某物体的属性, 如: 音效、粒子特效、速度等, 通过填写自定义属性, 便于程序在载入时对其进行实现
    4.  exporting only 1 mesh with geometry reference
        场景中通常会出现大量重复的相同的物体, 比如:树木,通过在制作时, 对于重复的物体使用复制实例的方式, 则相同的mesh只会有一份, 减少了不必要的空间占用, 同时.scene中引用的也将会是同一份.mesh
    5.  exporting node hierarchy
        导出正确和完全的节点的层次关系
    6.  node full transformation
        导出全部的节点变换信息
    7.  node key frame animation track
        支持节点动画, 在场景中有一些物体的动画, 不需要使用复杂的骨骼动画或是顶点动画, 其动画通常只是节点的变换动画, 
    例如实现风车的旋转, 则只需要360度旋转节点就可以了, 实现了相同的效果同时节省了空间和计算量
    8.  node spline animation track
        节点可以实现沿样条线运动
    9.  node path constraint animation track
        节点通过路径约束来实现"绑定"在动画轨迹上
    10. tag-point by helper with named "tag_"
        场景中可以通过约束实现骨骼绑定, 例如将场景中的鼓锤绑定到鼓手的手上
    11. camera animation track, camera target animation track
        支持导出完整的摄像机信息, 如远/近裁剪面、fov等, 以及摄像机本身的动画轨迹 和观察点的动画轨迹 
    12. direction light, spot light, full decay type support, light animation track
        支持导出方向光和聚光灯, 所有灯光属性导出后与3ds max中观察到的保持完全一致, 包括灯光的动画轨迹
    13. unattached spline animation track
        场景中的样条将会被导出成一段轨迹动画, 程序在载入.scene后, 可以在运行将动态得将物体绑定到轨迹动画上, 例如NPC先是沿着预设好的样条轨迹A运动, 当发生某事件后, 再动态重新绑定到样条轨迹B上
    commercial:
    商用版
    1.  scene editor
        场景查看器
    2.  dot scene loader source code
        .scene的全部载入代码
    3.  3D audio system with OpenAL
        通过OpenAL实现的音效/音乐库, 实现场景中的3D音效播放, 音效使用wave, 音乐使用ogg
    4.  supporting particle universe for particle system
        粒子系统支持particle universe
    --------------
    contact us:
    联系我们
    --------------
    email: oiramario@gmail.com
    QQ:    4172485
    web:   http://www.flagon.cn

     http://www.opengpu.org/forum.php?mod=viewthread&tid=10579#lastpost

     http://www.ogre3d.org/forums/viewtopic.php?f=8&t=73539

  • 相关阅读:
    【SQL】语句综合练习
    【Java基础】static关键字
    【SQL】定义约束
    【SQL】数据定义语言(DDL)
    【SQL】事务处理语言(TCL)
    Stream流
    线程池(重点)
    CountDownLatch CyclicBarrier Semaphore
    集合线程安全
    20210128 寻找数组的中心索引
  • 原文地址:https://www.cnblogs.com/oiramario/p/2735848.html
Copyright © 2011-2022 走看看