SOUR介绍,一个自定义的3D格式
来源:互联网 发布:手机淘宝怎么差评不了 编辑:程序博客网 时间:2024/06/04 00:48
/** * @author matrix3d * 翻译力求准确,信达雅谈不上,如有错误和不准确的地方,欢迎指出。 * @see http://infinitetabs.com/wp/introducing-sour-a-custom-3d-format/#respond */
注:SOUR是我在Kumoshi工作期间创建的。
顶点切线是什么,为什么他们很重要?让我给你们解释下。
什么是顶点切线?(What’s a Vertex Tangent?)
你或许知道3D模型是由三角形构成。每个三角形有三个点,叫做顶点(vertices)。一个顶点(vertex)就是3D空间中的一个点(Point)。就像一个2D空间中的点(Point)一样,一个顶点(vertex)有其X和Y坐标,但对于3D空间,一个顶点(vertex)也需要Z坐标。还有其他与三角形每个顶点有关的信息。除了说这些其他的信息被用于正确地照亮(light)3D形状外,我不会太深入它。在关于顶点(vertex)的这部分信息中,就有每一个顶点包含着另外一个由3个数值组成的集合,这个集合叫顶点切线。
顶点切线对于法线贴图(normal mapping)十分重要,这种技术使得低模看上去就像高模。对于一个给定的3D模型,使用法线贴图后,你的显卡所需要渲染计算量就减少了,这样就在不牺牲太多图像质量的情况下提高了性能。
返回Away3D和SOUR(Back to Away3D and SOUR)
既然当前所有的Blender导出格式都不保存顶点切线,在Away3D读取模型时,它意识到没有定点切线便试图自己去计算出它。如果创建3D模型的软件其法线贴图算法与Away3D使用的是相同的(数学)生成算法,那么一切OK。但Blender和Away3D使用的不是相同的算法,其结果就是对于(在Blender中)使用法线贴图的模型经常会形成难看的缝隙。
SOUR通过将顶点切线保存在3D文件中解决了这个问题。Away3D从没有机会来生成(不正确而且)不匹配的顶点切线,这下模型看上去漂亮多了。
SOUR也有一些其他功能:
索引和压缩(indexed & compressed)以节省空间
基于骨骼或者关键帧形状(keyshape-based)的顶点动画
还能够导出顶点法线(vertex normals)
拥有一个Blender导出脚本和Away3D解析器,这是其Github网址。
如果你用Google搜索一下“法线贴图缝隙”,你会发现Away3D远不是唯一一款受害于不标准法线贴图生成算法的引擎,JMonkey,OGRE,XNA等等其它都有这问题。我很高兴看到SOUR格式应用越来越广泛。如果你对格式有任何建议,请在文章的评论中留下你的意见。
- SOUR介绍,一个自定义的3D格式
- sour
- Cesium 3d tiles格式介绍
- 3D格式,难得的文章
- %d的格式控制
- %d的格式控制
- 关于Rawajai框架读取自定义3D模型(.obj)解析时的一个错误??解决办法!!!
- 介绍一个判断3D中N个点共线的方法
- 3D格式
- 3D格式
- 3D 格式
- 3D格式简介
- 3d格式
- 3d格式
- 自定义的旋转3D效果
- 3D旋转动画的自定义FlopView
- 自定义3D效果的轮转控件
- 介绍一个新推出的免费的用于点云的2D/3D的处理的开源项目Point Clouds Library (PCL)
- C++开发环境:Codeblocks
- 判断一个图是否有环(有向图,无向图)
- Mysql 常用命名总结
- 菜鸟刚写的程序,求大神指点有什么要改进的地方!
- USACO/ratios 3.2.4
- SOUR介绍,一个自定义的3D格式
- AIX6.1系统安装配置手册
- 关于无向图判断是否存在回路的方法
- MySQL的重装问题解决
- 关于项目经理/IT顾问的两则笑话
- HDU 2199
- About exception
- MySQL 5.6.9 RC 发布
- 实验三十四 Windows Server 2012 RDS桌面虚拟化之五VDI标准部署之非托管个人虚拟机