spine如何放置顶点

533人阅读
2022-09-16 08:56:22
0
收藏
在选择放置网格顶点的位置时,需要考虑很多因素。除了下面的信息,我们关于网格的系列博客文章还提供了许多关于设计网格的很好的提示:
顶点放置
网格分类
网格权重工作流程

外壳尺寸

描绘可以将顶点尽可能放置在靠近图片内部的边框,而不会切掉任何像素。

网格外壳应尽可能多地排除空白。例如,一张树图片的树干两边可能都有很多空白区域。即使树不需要变形,使用网格排除像素也是有益的。

外壳外部的像素根本不会绘制,也不计入填充率。对于填充率受限的游戏,这可以提高性能,特别是对于有大量空白的大图片。

当纹理打包使用多边形时,网格纹理图集区域可以非常紧密地打包,从而可以在单个纹理图集页面中容纳更多图片。即使不使用多边形进行打包,去除空白也可以删除网格外壳之外的所有像素。
外壳边缘

如果从未使用网格外壳切掉不透明像素,则不需要使用多重采样抗锯齿(MSAA)。

如果网格外壳用于切掉非透明像素,则生成的边将有锯齿。这意味着沿边缘的像素要么显示,要么不显示,边缘将呈锯齿状,而不是平滑的。要在这种情况下获得平滑边缘,可以在渲染网格时使用多重采样抗锯齿(MSAA)。这可以在设置对话框中为Spine编辑器启用,也可以在导出对话框上为图片或视频导出启用。要在运行时获得平滑边缘,需要为你的游戏工具包设置MSAA。

图片边界边缘的非透明像素也可能导致锯齿,即使这些像素不会被切掉。这发生在Spine编辑器中,因为它会加载单张图片,而图片边缘的像素旁没有用于平滑过滤的透明像素。在运行时,从纹理图集加载时,图片周围通常至少有1个像素的透明空间,因此不会出现这种锯齿。


网格可以是凹面的,但不能有孔。如果需要有孔,通常在网格图片中使用透明像素就足够了。例如,头部网格的图片可以为眼孔使用透明像素。

使用两个网格最简单的方法是首先创建一个包含整个图片并在孔的内侧有顶点的网格。接下来,复制网格并通过删除顶点来修改这两个网格,直到每个网格都占据了孔周围的一半。

如果需要的孔很大,可能不希望绘制大量透明像素,因为这会对填充率产生负面影响。此外,在纹理图集中,有大量空白的大图会占用很多空间。在这种情况下,可以使用两个网格,各对应于孔周围图片的一半。

顶点数

通常,网格中的顶点数量应该保持在最小,以减少CPU使用量。每一帧CPU须计算每个顶点的位置。虽然这是一个快速的运算,但屏幕上一次出现许多骨架和许多网格(每个网格都有许多顶点)可能会增加数千个需要计算的位置。

使用权重时,影响顶点的每个骨骼都会添加一个额外的顶点变换。例如,有100个顶点的网格需要100个顶点变换。如果同一网格有2个骨骼影响每个顶点,就需要200个顶点变换。如果将网格绑定到多个骨骼,并使用平滑来展开权重,则可以极大地增加所需的顶点变换数量。使用修剪可移除不必要的权重并限制可能影响顶点的骨骼数量。
变形

顶点放置的位置以及它们由边连接的方式决定了网格的变形方式。应使用权重完成大部分或所有变形。应避免使用变形关键帧或将其保持在最低限度。
请文明上网理性发言

未登录
全部评论(0)