打开主菜单

Ballance Wiki β

MAplus/zh

Ghomist讨论 | 贡献2020年8月12日 (三) 01:26的版本 B_Mesh

MAplus(全称 Mapping Actions Pack plus),是Ghomist利用Virtools内建的Action开发的一套工具,其运行方式与Virtools原版的Actions相同。这套工具对Virtools内许多繁琐操作进行了简化,以VSL脚本的方式进行半自动化批量操作。

此工具包使用了VSL进行编写,完全开源[1]

此工具包目前涵盖了物件操作,网格操作,归辅助,灯光辅助,命名辅助共5个方面,大多数情况下能为VT内操作节省大量繁琐操作,减少出错率;在使用熟练之后可以使VT内操作效率大幅提高。

不过,VT内使用Action进行的操作是无法撤销的。尽管大部分时候错误操作不会造成过于严重的损失,还是建议制图者养成随手保存的习惯。

目录

安装与使用

MAplus内包含了5个文件夹,名称如下: (括号内为注释而非文件名)

  • B_3DEntity(物件操纵)
  • B_Group(归组辅助)
  • B_Light(vt内灯光辅助)
  • B_Mesh(网格工具)
  • B_Name(命名工具)

安装时,直接将上述5个文件夹复制到Virtools根目录下的Actions文件夹内,随后重启vt即可使用。

使用时,在VT内3D layout或Level Manager界面右键Actions选项内选择需要调用的Action即可。

值得一提的是,VT内可以设置Action的快捷键以实现更高效地调用常用的Action。关于快捷键的介绍详见后文

基本功能

下面列出了MAplus所有功能的简介。

借助这些简介可以更好地了解MAplus的功能细节。

类似于索引,绝大部分时间建议使用检索功能直接查看具体的Action,而非一个个阅读。

B_3DEntity

Align2

对齐。

对VT原版Align(对齐)进行了优化,使得其可以将物件作为一个整体进行对齐。为了防止与原版Align重名遂加上了数字2作为后缀。

选中第一个基准物件,将第二个物件对齐至轴的指定方向使其顶端齐平(最大对最大/最小对最小)。

若选中As Whole则第三个物件及之后所有物件将与第二个物件作为一个整体,保持相对位置不变。不选中则所有物件按第二个物件的方式单独处理。

CenterDistribute

使物件在指定轴居于两物件正中。

选中前两个基准物件,之后所有物件的选定轴调整至初始两物件选定轴的中心坐标。

选择少于三个物件时不运作。

FastSplice

快速贴附。

选中第一个基准物件,第二个物件将贴附至指定轴指定方向的表面(如果指定方向选中Center则会使第二个物件贴附到基准物件的正中心)。

不同于Splice(贴附)功能仅影响选定轴,快速贴附还会影响选定轴外的其它轴方向,将第二个对齐到基准物件的中心。

第三个物件及之后所有物件将与第二个物件作为一个整体,保持相对位置不变。

SetPosition

设置坐标。

选中一个基准物件,并设置其坐标。

第二个物件及之后所有物件将与第一个物件作为一个整体,保持相对位置不变。

SetUnit

重置缩放。

将选中物件的Scale参数重置,使网格与视觉模型对应。效果类似于Set up窗口的Set as Unit功能。

Splice

贴附。

选中第一个基准物件,第二个物件将贴附至指定轴指定方向的表面(如果指定方向选中Center则会使第二个物件贴附到基准物件的正中心)。

若选中As Whole则第三个物件及之后所有物件将与第二个物件作为一个整体,保持相对位置不变。不选中则所有物件按第二个物件的方式单独处理。

Translate

世界坐标平移。

选中一个基准物件,并设置其位移,将进行平移。

第二个物件及之后所有物件将与第一个物件作为一个整体,保持相对位置不变。

此方法可较为有效地解决非整数坐标物件精确移动时的不便。

B_Group

AsFloor

将选中物件按“路面归组。若选中AsWoodenFloor则按“木制路面”归组。

将物件归入路面组,声音1组(包括滚动与撞击,若为木制路面则归入声音2组)。可自选是否归入影子组。

AsModul

将选中物件按“机关”归组。

输入小节代码(1到8的整数)和机关代码即可自动归入。

箱子道具球变球器Dome等不属于此处所说机关,对于这些道具请手动归组。

AsRail

将选中物件按“钢轨”归组。

即将物件归入钢轨组,声音3组(包括滚动与撞击)。

RemoveFromGroup

将选定物件从指定组移出。

若当前物件不存在于指定组内,则不执行。

SCREGrouper

存档点重生点飞船自动归组。

若名称不正确或不存在组,则不执行。具体详见归组#特殊物件组

SectorChanger

改变选中物件所在的小节组。

输入需要转入的小节数(1到8的整数),将会使物件从当前小节组移出并归入新的指定小节组。

若当前物件不存在于任何小节组则不执行移出,但仍会归入指定小节组。若指定小节组不存在(无法获取)则不执行归入,但会从原有小节组移出。

B_Light

LightOff

删除由“LightUp”产生的平行光灯

若不存在则不执行。

LightUp

生成一个位于世界原点处的平行光灯。

生成的灯角度已调整,可快速照亮路面上表面及一部分侧面。效果类似于游戏中的光照效果。

若需删除,可使用“LightOff”快速删除,亦可手动删除。若已存在,则不执行。

B_Mesh

Attach

附加。

AxisReset

重置物件轴。

Exchange

交换网格。

Mirror

镜像。

SetLitMod

重置网格的LitMod为Lit。

一般用于快速修复Max导出到vt后网格变为PreLit模式。PreLit模式下物件变白、变亮,且不受光照影响。

SetShadow

为选中的物件设置影子坐标

使用了影子坐标的再发现中的有关结论,可以稳定地为物件设置影子坐标而无副作用。

StopMeshShared

消除网格共享。

将选中物件的网格复制一份,并去除原网格。利用了vt中复制不重名的特性,且确保了选中物件中没有共用任何一个网格。

原网格会从物件上移出但不会删除。使用vt内自带Unused Objects工具删除即可。

B_Name

Namer

批量重命名工具。

输入指定的名称,可将选中物件名称全部改为输入的字符串。

若选中AutoNumber,则在字符串基础上自动补充尾号,编号规则如下:

  1. 编号从0开始;
  2. 按选中物件的顺序进行编号;
  3. 编号长度不足3位数时以0补全(如第一个被选中的物件的尾号将会编为“000”);
  4. 超过3位数的编号直接接在字符串尾部。

快捷操作

下载

备注

  1. 事实上VSL文件可直接以文本文档的方式打开,并且可以直接看到源代码,故无需另行开放出源码。