非等比例联合缩放测试版
今天我们推出了一个测试版功能,它允许 CSG系统创建的Union进行非等比例缩放。
启用此测试版
“允许非等比例缩放”是什么意思?
在未启用此测试版的情况下,如果您调整一个Union和一个内容相似的MeshPart的大小,您会发现两者会出现不同的缩放行为。具体来说,Union缩放为宽幕形式,使得Union的内容只会按等比例缩放:
启用此测试版后,Unions将具有与MeshParts相同的缩放行为,从而允许对内容进行非等比例缩放:
代价是什么?
表面看来,这似乎很“明显”就是事情本来应该表现的方式,但既然我们现在要做出改变,我们必须会做出一些权衡,对吗?没错,在我们承诺发布这些更改之前,有几件事我们需要您的反馈。
分离行为变更
在一个Union只能被等比例缩放的世界中,“分离”总是干脆利索地起着作用,因为从等比例Union分离出来的每个部分都可以精确地呈现出来。
对于非等比例缩放的Union,情况 并非 如此。例如,将盒体和球体的伸展Union分离的结果显然不能用原零件表示:
如果某个Union被分离,但该Union带有无法单独呈现的零件,那应该怎么办?为了解决这一问题,我们为开发人员提供两个选择:
-
重置比例: Union将恢复到其分离前最初创建的大小。当您打算编辑零件后重新合并时,这个选项是最佳选择。
-
应用比例: 比例将“尽可能贴近”各组成零件。具体来说,零件分离前后,零件的质量/体积和零件各个方面的总体方向都相同。
这里有一个极端的“应用比例”例子,其中,Union的 所有 零件都必须近似。红色是拉伸Union,半透明灰色部分是其分离后的样子:
在使用已启用测试版的模型时,请让我们知道哪个选项最终对您来说更有用,以及弹出窗口是否有妨碍您的操作。
现有非等比例缩放Union
正如帖子开头的图片所示,实际上,您现在 可以 非等比例缩放Union,只是不过用的是通常效果没那么好的宽屏缩放。这意味着会存在一些非等比例Union。现在,这个测试版 重新诠释 了现有Union的比例,Union可以填满边界框,而不是以宽屏的形式呈现。这里有三个选项:
原样发布: 如果对位置的影响非常小,我们可以直接发布当前的测试行为。这将是一个突破性的变化,因为现有非等比例缩放Union的物理大小和渲染几何结构将会改变。
在工作区下提供rollout 标记: 我们可以在工作区下临时提供一个由开发人员控制的rollout 标志,以便开发人员能够在相当长的一段时间内适应变化。
提供永久性per-union标记: 我们可以提供一个per-union属性,专门控制该特定Union的缩放行为,新Union默认为遵循新的行为,旧Union会继续遵循旧的行为。
目前,选项3是最不可取的,因为编写第三方工具有一定的难度,例如同时正确处理两种缩放行为的插件。插件的生态也可能会被一些能够正确处理两种缩放行为的插件割裂。
我们倾向于选项二,但我们需要您对此的反馈。请告诉我们您在现有操作中看到了多少明显的视觉痕迹,以及您是否发现有任何游戏中断(例如:不能通过以前能通过的关卡)。
常见问题
-
如何统一调整Union规模?: 在使用缩放工具缩放任何对象(包括“Union”)时按住Shift键,可等比例缩放该对象。
-
是否会破坏现有的Union?: 可能会,但这种情况仅在使用宽屏缩放进行非等比例缩放时才会出现。在您启用测试版后,欢迎您告诉我们您看到的显著变化有多少,这样我们可以选择最佳的发布策略。
-
CSGv1下非等比例Union行为异常: 不太赞成使用CSGv1创建(“启用旧有CSG”)内容。 虽然目前我们仍然支持用户使用CSGv1创建的旧内容,但在Studio中启用CSGv1时,新的CSG系统功能(如此功能)可能无法正常工作。
-
我的Union在游戏中不是非等比例缩放的: 该功能是Studio测试版,还未在实时游戏中启用。如果您真的想在实时游戏中使用非等比例缩放的Union,您可以创建一个仅包含该Union的新Union,从以创建一个未缩放的副本,这样这个副本就可以在实时游戏中使用了(不过,如果您未启用测试版的情况下,尝试在Studio会话中进一步分离/合并的话,您得到的结果会比较奇怪)。
-
我得到了是一个未对齐边框的Union!: 有一个罕见的边缘情况,如果您将较多的零件并到一个带有宽屏缩放Union的现有Union,您可能会以一个未对齐的边框终止。分离和重新联合行为不当的Union会帮助您解决这个问题。
总结
我们非常期待看到大家通过这个改进解锁的创造可能性!