Boundary First Flattening边界展UV
Boundary First Flattening边界展UVhttps://geometrycollective.github.io/boundary-first-flattening/imgs/logo.pngBoundary First Flattening(BFF)是一个用于表面参数化的免费开源应用程序。与其他用于UV贴图的工具不同,BFF允许对扁平网格进行自由形式编辑,使用户可以直接控制展平域的形状,而不是被软件提供的任何东西所困扰。初始展平是完全自动的,数学上的失真保证与任何其他共形映射工具一样低或低。该工具还提供了标准UV映射软件中不具备的一些最先进的展平技术,例如锥形奇点,可以显着减少区域失真,以及无缝地图,通过确保所有切割的相同纹理分辨率,帮助消除伪影。BFF经过高度优化,允许对具有数百万个三角形的网格进行交互式编辑。难民局申请是基于纸, “ 边界的第1扁平化”的罗汉Sawhney和 基南起重机。在GitHub上查看项目专题库https://geometrycollective.github.io/boundary-first-flattening/imgs/teaser.png
[*]最小面积失真 - 默认情况下,BFF自动产生平坦化,最小区域失真和几乎零角度失真。此贴图通常适用于大多数纹理和表面处理任务。
[*]直接编辑 - 可以使用基于句柄的边界曲线大小和方向操作交互式编辑初始地图。这可用于将UV打包到纹理图集中,或用于强调应该接收更多纹理区域的表面区域(例如)。
[*]尖角 -域也可以被展平为与尖角的多边形,如矩形(用于,例如最大限度地利用纹理区域的)。
[*]锥形奇点 - 锥形奇点可用于减少高曲率区域的面积畸变。锥体可以手动或自动放置,并可以交互式调整。可选地,可以沿着由锥体放置引起的任何切割使得到的地图全局无缝。
[*]均匀化 - 表面可以映射到圆盘(或球体),这对于交叉参数化(将一个表面映射到另一个表面)非常有用。
下载应用程序https://geometrycollective.github.io/boundary-first-flattening/imgs/MacAppIcon.pngMac OS X(v1.2) https://geometrycollective.github.io/boundary-first-flattening/imgs/WindowsAppIcon.pngWindows(v1.1)发布历史
[*]v1.0(2017年12月) - 初始版本。
[*]v1.1(2019年1月) - 添加对任意拓扑(孔,手柄等 ;不仅仅是磁盘和球体),四边形和多边形网格,没有GUI构建依赖关系的命令行界面以及加载时的3倍总体加速/的支持解决/写入操作。
[*]v1.2(2019年6月) - 确保输入/输出网格中的顶点排序一致; 加速带边界曲面的锥计算; 轻微加速和错误修复。
教程https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_edit.gifBFF应该是相当直观的使用,所以继续尝试一下!如果您仍然有疑问,下面的教程可能会提供一些有用的指导。(警告:与大多数教程一样,这个教程可能与最新软件版本不同步。请自行承担风险!;-))BFF既可以从命令行运行,也可以在提供自动参数化和一些基本操作的情况下运行,也可以在交互式GUI中运行,后者提供额外的操作和编辑功能。两种工具都以OBJ格式加载多边形网格,并生成一个扁平网格(也是OBJ格式)。支持具有(和不具有)边界,孔,手柄和多个组件的网格。唯一的限制是网格必须具有多种连接(尽管在未来版本中可能会放宽)。没有磁盘或球体拓扑的网格将自动剪切以进行展平。https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_meshsupport.jpghttps://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_multiplecomponents.gif
交互式图形界面最初,GUI应该看起来像这样:https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_gui.jpg在3D视图显示了原始网格,UV视图显示当前压扁。由于BFF速度非常快,因此您无需采取任何措施来获得更新的扁平化; 只要单击按钮或其他UI元素,UV视图就会自动刷新。该工具栏提供用于平坦化的表面的各种选项; 密切关注工具提示,它可以提供有关当前所选工具的有用信息。默认情况下,UV贴图可视化为曲面上的网格; 表面上的阴影也用于照亮UV贴图,以给出3D和2D之间的对应感。其他可视化选项如下所述。最后,“重置”按钮将当前工具(以及相应的展平)设置回其默认参数。按Load Mesh按钮可以加载新的网格 ; “ 导出网格”按钮允许将网格导出为OBJ格式,纹理坐标存储在vt字段中(展平网格中每个不同的三角形角一个)。“ 导出标准化UV”复选框将在纹理空间中缩放0到1之间的UV。调整视图可以在3D视图和UV视图中独立调整视图。特别是:
[*]旋转 - 单击并拖动背景中的任何点(不在网格上)
[*]翻译 - alt /选项 - 单击背景
[*]放大/缩小 - 向上/向下滚动
可视化选项除了可视化地图本身外,BFF还提供检查地图质量的设施。“ 着色”菜单(“ 绘图”部分中的第一个菜单)提供以下选项:https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_shading.jpg
[*]不变
没有特殊的阴影; 用于查看线框或检查局部重叠。在这个视图中,翻转的三角形(相当罕见)将以鲜红色绘制。
[*]阴影
UV视图中的网格将使用3D视图中的阴影点亮。此着色提供了一种快速查看哪些要素映射到哪里的方法。
[*]保形失真
显示映射中的角度失真。蓝色表示没有角度失真,绿色表示一点角度失真,红色表示很多角度失真。对于相当漂亮的网格(例如,小三角形,而不是太疯狂的宽高比),您应该看到非常小的角度失真。简单模型上的大角度失真可能表明您的网格存在问题(例如,长不可见的细长条或近简并元素)。在此模式下,总角度失真将打印在着色菜单上方(此数量是平均和最大准共形失真,其中1表示无失真)。
[*]区域失真
显示映射对区域的扭曲程度。白色表示没有区域失真,蓝色表示收缩,红色表示扩展。在此模式下,总面积失真将打印在着色菜单上方 (此数量是平均和最大对数共形因子,其中零表示无失真)。
该模式菜单绘制表面上不同的图案。选择这些图案是为了给出平坦化中的角度和区域变形的感觉。对于完美的地图(即,根本没有失真),图案在整个表面上应该看起来是均匀的,并且UV视图中的圆形和正方形应该看起来像3D视图中的圆形和正方形(考虑透视变形)。通过这些功能,您可以了解纹理和其他数据在映射到曲面时的外观。特别是:https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_patterns.jpg
[*]没有
没有显示模式。用于清楚地查看地图的其他功能(例如,区域失真或线框)。
[*]格
绘制规则的网格图案。(请注意,对于具有圆锥或切割的地图,只有在地图无缝化时,网格线才会准确排列。)
[*]棋盘
绘制一个常规的棋盘图案。(请注意,即使是无缝地图,由于奇偶校验的考虑,也可能会从黑色跳到白色。)
[*]界
绘制随机圆圈。对于具有低角度失真的地图,这些圆圈仍应看起来像3D表面上的圆圈(而不是椭圆)。
直接位于“ 图案菜单”下方的“ 图案比例滑块”将调整图案的比例。这种调整对于例如理解具有高面积失真的地图中发生的事情是有用的。https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_scale.gif“ 显示线框”复选框可切换网格边缘上线框的显示,这有助于可视化地图。https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_wireframe.jpg目标边界BFF提供的关键功能是通过操纵其边界曲线来改变展平的目标形状的能力。无论使用何种目标形状,BFF都会倾向于减少非常低失真的地图,这样纹理和其他数据仍然可以很好地映射回原始表面。可以通过图形界面访问几种可能性(通过源代码级访问可以获得其他可能性):https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_targetboundary.jpg
[*]自动
如果不需要对边界进行特殊控制,BFF会自动产生最小面积失真的平坦化。(注意,因为我们在数学上保证,这是最低的区域失真,它是不可能通过使用不同的扁平化软件,以减少区域失真然而,区域失真。可以通过增加削减和锥奇异减少;见下文)
[*]磁盘
将曲面映射到圆盘。此贴图提供了一种在两个不同曲面(例如,两个不同面)之间获取贴图的简单方法:仅将每个曲面独立地映射到磁盘,然后在第二个网格中定位与第一个网格上的给定点对应的点,按照从第一个表面到磁盘的映射,然后再回到第二个表面。(专家评论:未通过GUI公开的莫比乌斯自由度;未来版本可能支持对这些自由度的直接控制。)
[*]编辑边界
使用用户指定的样条线直接操作边界曲线。可以通过单击(或按住Ctrl键单击)边界上的点来添加(或删除)控制点。单击并拖动手柄将改变比例; 保持移位将控制角度而不是比例。
[*]设置边界角度
允许指定多边形的角度。可以使用“ 角度控制”滑块或通过键入角度框(其中值被解释为π的倍数)来指定角度。与任何多边形一样,这些角度当然必须总和为2π-通过调整最近最近更新的角落角度,GUI将自动调整角度以始终保持此总和。
锥形奇点通常,不可能完美地平整表面。在某处,必然会出现角度或区域的扭曲。BFF可以产生具有最小面积失真和几乎零角度失真的平坦化,但在某些情况下,区域失真对于实际使用来说仍然太高。一种解决方案是将网状物切割成较小的片,每个片更容易变平,但通常这是不必要的侵略性。可以通过插入锥形奇点来将失真减少到更合理的水平,这在服装设计中起到与“飞镖”相同的作用。BFF GUI可以轻松探索放置锥体的效果,还可以自动放置锥体以减少区域失真。与普通切割不同,普通切割可能由于切割分辨率的差异而导致视觉伪影,BFF保证地图是无缝的,这意味着在UV空间中两个相应的切割边缘总是具有相同的长度。下面更详细地讨论无缝地图。手动圆锥放置添加锥体的最简单方法是在目标边界设置为“ 自动”或“ 磁盘”时单击3D视图或UV视图中曲面的任何点。这样做会在点击位置插入一个圆锥,找到从该圆锥到边界的切口,并更新展平。额外的点击将添加额外的视锥细胞。要查看对区域失真的影响,请将绘图模式设置为“ 区域失真”,这将显示表面上区域失真的分布(如上所述)。点击高区域失真的区域将倾向于减少它。绘制图案(例如网格或棋盘格)也可以提供一定程度的尺度失真感。注意一个可怜的锥实际上可以选择增加区域distortion-一些实验可以在这里需要。或者,可以尝试自动放置按钮,如下所述。(在GUI中自动拾取切割;切割策略目前只能通过对BFF的源级修改来更改。)https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_cones.jpg的角度控制滑块允许调整锥角; 或者,可以键入特定的锥角(π的倍数)。在制衣中可以类似于“飞镖”来理解锥角:较小的角度通常会适应较小的曲率; 大角度有助于高度弯曲的区域。对于球面(无边界),总角度总和必须始终为4π; GUI将自动调整最近最近更新的锥体以确保此总和成立。https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_coneangle.jpg自动锥形放置只需按下“ 放置锥体”按钮,即可放置目标锥体数量。可以在#Cones字段中指定锥的数量。请注意,计算这些锥体可能需要一些时间,尤其是对于具有许多边界顶点的网格。(此功能将在未来版本中得到改进;请继续关注!)https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_autocones.jpg无缝地图(即将推出!)放置锥体将在表面切割(用红线表示)。默认情况下,BFF已经保证切割两侧边缘的UV长度保证完全相同,因此切割时纹理分辨率没有跳跃。同样地,两个切割边缘之间的UV空间中的角度由锥角精确确定 - 例如,如果所有锥角都是π/ 2的倍数(即 90度),那么边缘也将相关90度旋转。要检查此项,请将绘图模式设置为“ 网格”。如果您的所有锥角都是π/ 2的倍数,您应该看到,当您穿过切口时,网格线的间距和方向都不会改变。但是,您可能还会注意到,当您穿过切口时,网格线会向左或向右移动,从而产生可见的接缝。如果表面需要用常规图案覆盖(或镶嵌到常规网格中),则可以通过按下“ 删除接缝”按钮来消除此接缝。https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_seamless.jpg球参数化对于类球体表面,BFF也会自动生成球体图; 只需按Map to Sphere按钮即可。对于球体的地图,可以提供给用户的控制较少,因为没有可编辑的边界!(未来的版本可能会暴露莫比乌斯的自由度,就像磁盘一样。)https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_sphere.jpg为了获得具有较低区域失真的地图,可以再次添加锥形奇点(自动或手动),如上所述。表面将自动切割成圆盘并展平。https://geometrycollective.github.io/boundary-first-flattening/imgs/tutorial/bff_spherecones.jpg
下载地址
**** Hidden Message *****
页:
[1]