【学习】Mesh
属性:
faces: Map [只读] 对象【表面】的集合
surfaces:Map [只读] 对象【面】得集合
vertices:Map [只读] 对象【顶点】的集合
主要方法:
cloneMaterialToAllSurfaces(material:SurfaceMaterial):void 设置对象的所有【表面】的材质
createFace(vertices:Array, id:Object = null):Face 创建一个【面】
createVertex(x:Number = 0, y:Number = 0, z:Number = 0, id:Object = null):Vertex 添加一个新顶点
getFaceById(id:Object):Face 根据标识得到【表面】
getFaceId(face:Face):Object 得到【面】的标识符
moveAllFacesToSurface(surface:Object = null, removeSurfaces:Boolean = false):Surface 移动所有【面】到【表面】
setMaterialToSurface(material:SurfaceMaterial, surface:Object):void 设置表面的材质
setUVsToFace(aUV:Point, bUV:Point, cUV:Point, face:Object):void 给指定的【面】设置UV-coordinates (UV坐标)
附:
什么是UV? (网上找的,待确认)
"UV"这里是指u,v纹理贴图坐标的简称(它和空间模型的X, Y, Z轴是类似的). 它定义了图片上每个点的位置的信息. 这些点与3D模型是相互联系的, 以决定表面纹理贴图的位置. UV就是将图像上每一个点精确对应到模型物体的表面. 在点与点之间的间隙位置由软件进行图像光滑插值处理. 这就是所谓的UV贴图.
那为什么用UV坐标而不是标准的投影坐标呢? 通常给物体纹理贴图最标准的方法就是以planar(*面),cylindrical(圆柱), spherical(球形),cubic(方盒)坐标方式投影贴图.
Planar projection(*面投影方式)是将图像沿x,y或z轴直接投影到物体. 这种方法使用于纸张, 布告, 书的封面等 - 也就是表面*整的物体.*面投影的缺点是如果表面不*整, 或者物体边缘弯曲, 就会产生如图A的不理想接缝和变形. 避免这种情况需要创建带有alpha通道的图像, 来掩盖临*的*面投影接缝, 而这会是非常烦琐的工作. 所以不要对有较大厚度的物体和不*整的表面运用*面投影方式. 对于立方体可以在x, y方向分别进行*面投影, 但是要注意边缘接缝的融合. 或者采用无缝连续的纹理, 并使用cubic投影方式. 多数软件有图片自动缩放功能, 使图像与表面吻合. 显然, 如果你的图像与表面形状不同, 自动缩放就会改变图像的比例以吻合表面. 这通常会产生不理想的效果, 所以制作贴图前先测量你的物体尺寸.
浙公网安备 33010602011771号