MMT前期(?)字幕

        之前记录过的一个做字幕的MMD插件,放置了一段时间,后来才想起来。

        前段时间正好看到有人做出那种文字3D跟随的特效字幕,看上去效果很棒,遂,就去研究了一下,然后找到了这个插件。

        怎么说呢,一开始觉得好像发现了不得了的东西,但是冷静一想,这东西要真的那么不得了,这么多年过来了,岂不是应该人尽皆知?为什么我这么晚才看到?

        看到这里应该读者应该明白,我是在说一个可能并没有多大用处的插件,所以没如果没兴趣的话,到这里就可以点击右上角的“×”号了。

        (其实后来我发现,文字跟随的特效是在AE里完成的orz,至于成果,视频第二个参见。)

        MMT,全称MikuMikuTelop,不过叫它MMTScript可能更合适点。

        用法语法我就不介绍(可能你看完我下面所说就知道为什么了)

        这门脚本语言大致的流程是:

                1 用户根据作者定制的规则书写字幕的txt/mmt版本文件。

                2 将书写好的txt/mmt文件拖入exe程序,程序会将文本处理成MMD可识别的特效格式。

                3 拖入MMD即可使用。

        目录文件:

目录

        示例文件:

        MMT.exe:

        将写好的MMT拖入MikuMikuTelop:

        自动生成一个文件夹:

        内不是字幕特效:

        这种字幕是在制作之前就预先设定好的,姑且我称之为前期字幕。

        看上去是不是感觉很简单,等等,别误会,我只是没放规则说明书什么的,请不要误解,看到说明书以及readme你可能就不这么想了。

        这个字幕制作插件,若是能三维摆放的话,那么我敢肯定,它对于后期字幕绝对有一战之力。

        这样它可以玩出更多的花样,重要的是它是一个文档,是可配布的!对于熟悉MMD流程的人,使用起来相当方便。

        但是可惜,它没有这个功能,而且在我看来是有些麻烦的,但,不代表我不支持,我只是不反对,毕竟不是每台电脑都能流程的进行PRAE作业(如我,那种痛苦的感觉,关键我还只能每天做半个小时……)。

下面是翻译,看完的都是勇士:

 

■基本用法

 

该工具使用简单的字幕描述语言MMTScript描述字幕。

有关MMTScript的详细信息,请参见示例和MMTScript规范。

 

自己书写txt文件。

启动MikuMikuTelop并使用MMTScript导入txt或mmt文件

拖放。

然后,创建一个名为file name_MMT的文件夹,

在其中自动创建纹理,效果和附件。

 

从创建的文件,将MikuMikuTelop.x文件复制到已安装MME的MMD。

通过阅读,将显示字幕。

 

拖放后,文件将注册到列表中,

之后,只要MikuMikuTelop正在运行,它就会受到监控,

文件更新时,效果会自动更新。

此列表不会在退出时保存。

 

在右键菜单上,您可以停止自动更新,手动更新,删除等。

 

最小化后,MikuMikuTelop将进入任务托盘。

随后的消息显示为弹出窗口。

担心时右键单击图标

取消选中“弹出窗口”。

左键单击图标以恢复窗口。

 

 

■关于图纸顺序

 

字幕是根据上下文绘制的。

相反,当在带字幕的位置绘制另一个模型时,

该部分将被覆盖。

 

因此,除非有指导意图,否则绘图顺序会高于其他模型。

请稍后。

 

 

■关于面板模式

 

启用“自阴影”时

(启用MMD的自阴影模式后,

选中附件上的“阴影”复选框),

MikuMikuTelop.fx切换到面板模式。

 

字幕屏幕是哪种模式

视为虚拟平板,高度为20并受相机影响。

在这种状态下,您可以更改Si的大小,以及更改位置和旋转。

 

它还会影响其他模型的上下文。

但是,由于未将其写入Z缓冲区,因此绘制顺序必须最后

没有变化

 

仅在编辑期间,才会显示指示面板尺寸的浅蓝色框。

但是,突出显示的字幕将保持原样显示。

 

 

■关于PostTelop

 

MikuMikuTelop.fx不是后效应,而是常规对象。

受其他后期效果的影响。

如果您想避免这种情况,除了MikuMikuTelop,

在同一文件夹中加载PostTelop。

此效果会禁用MikuMikuTelop.fx的普通图形,

这具有将其转换为后期效果的效果。

 

PostTelop不能单独使用。如果使用它,屏幕将被染成红色,

这样做是为了防止滥用。

另外,在字幕与字幕重叠的地方的半透明处理是

可能会有所不同。

 

因为这是后期效果,所以自然而然,无论绘制顺序如何

它将在其他型号之前显示。

您可以通过隐藏PostTelop.x暂时禁用后期效果。

 

 

■注意事项

 

字幕会写入纹理,因此如果您尝试显示许多字幕

您将需要很多纹理。

根据MME的规范,无法仅读取必要的纹理,

预计会消耗大量的视频内存。

如果图形板的性能不足,请减小screen_height。

采取诸如减小纹理大小的措施。

说明书:

 

■基本格式

 

MMTScript大致由以下元素组成。

 

・文字指令

・系统指令

・评论

 

每个的细节将在后面描述。

 

使用txt或mmt作为文件格式(扩展名)。

mmt文件用于指定它是MMTScript文件,内容与普通文本文件相同。

您可以在记事本中打开它并进行编辑。

 

字符代码可以是带有BOM的Shift-JIS或UTF-8。

换行代码使用CR + LF(Windows标准)。

 

命令之间的空白行将被忽略。

 

 

-------------------------------------------------- ----------

 

■文字指令

 

●语法

 

此命令指定要显示为字幕的文本。

“ @”(符号处)+显示时间+“,”(逗号)+显示长度

指定如下。

 

下一行的内容是要显示为字幕的内容。

书面内容按原样显示,包括换行符。

但是,句子开头和结尾的空白行将被忽略。如果您有意保留它

请输入一个空格。

 

文本命令的结尾可以是以下之一:

・下一个文字指令

・下一个系统命令

・文件结束

 

在显示时间和显示长度之前和之后可以包含空格或制表符。

如果要在文本中使用“ @”(符号),请将其加倍为“ @@”。

 

MMTScript必须包含至少一个文本命令。

 

●单位

 

显示时间和显示长度的单位是秒。用半角数字指定。

可以添加小数点。

您可以通过在数字末尾添加“ F”来以帧为单位指定时间。

在这种情况下,不能使用小数点。

不能按分钟指定。

 

●时间指定模式

 

可以相对于先前的文本命令设置显示时间。

如果您在显示时间之前添加“ +”(加号),

它是从上一个文本命令的结束时间开始的相对时间。

如果您在显示时间之前加上“ *”(星号),

这是从上一个文本命令的开始时间开始的相对时间。

 

显示长度可以省略。在这种情况下,长度是自动确定的。

每个字符的时间长度可以使用系统命令来更改。

在特殊情况下,如果指定* 0,则省略显示长度

使用前一个字幕的显示长度。

 

如果您使用“〜”(代号)而不是逗号来分隔两个数字,

您可以指定结束时间而不是显示长度。

但是,如果结束时间早于显示时间,则会发生错误。

同样,相对时间不能用作结束时间。

 

 

●范例

 

@3,5

显示此字幕3至5秒钟

 

@100F,10

・100帧显示10秒也可以显示多行字幕

 

@10

显示长度可以省略

 

@+2、5

在上一个字幕结束后2秒显示

 

@32〜36

显示从32秒到36秒

 

-------------------------------------------------- ----------

 

■系统命令

 

该命令用于设置格式参数。

“:”冒号+命令名称+“ ”(单字节空格)+参数1 +“,”(逗号)+参数2

指定如下。

 

冒号和命令名称之间不允许有空格。

命令名称后必须至少有一个空格。

您可以在参数前后放置任何空格。

所有制表符都替换为空格。

 

命令名称不区分大小写。

双字节字符不能在命令名称中使用。

 

每行只有一个系统命令。

您不能在一行上写多个系统命令,也不能在多行上写一个系统命令。

 

MMTScript不需要包含系统命令。

 

有关每个系统命令的详细信息,请参阅下面的系统命令参考。

 

 

范例:

 

//指定字体

:font DFP中太丸ゴシック体

 

//指定字体颜色

:fontcolor 255,255,255

 

//设为粗体

:bold

 

//指定边框的粗细

:edge 7

 

 

-------------------------------------------------- ----------

 

■评论

 

以“ //”开头的行被完全忽略为注释行。

与C语言注释不同,注释不能在一行的中间进行。

 

 

-------------------------------------------------- ----------

 

■系统命令参考

 

 

:font 字体名称

 

指定字体名称。

默认值为“MS ゴシック"です”。

 

 

:size 字体大小

 

指定字体大小。

单位是屏幕高度一半的百分比。

预设值为12。

 

 

:fontcolor R,G,B

 

指定字体颜色。 RGB是0到255之间的整数。

默认值为255,255,255。

 

 

:bold

:bold_off

 

指定打开/关闭的粗体。没有参数。

默认为关闭。

 

 

:italic

:italic_off

 

指定斜体开/关。没有参数。

默认为关闭。

 

 

:underline

:underline_off

 

指定打开/关闭下划线。没有参数。

默认为关闭。

 

 

:strikeout

:strikeout_off

 

指定打开/关闭删除线。没有参数。

默认为关闭。

 

 

:pos 水平位置,垂直位置

 

指定显示字幕的位置。

单位是屏幕尺寸一半的百分比。

水平位置在左端为-100,在中心为0,在右端为100

垂直位置在底部为-100,在中央为0,在顶部为100。

 

 

:pos_x 水平位置

 

仅指定水平位置。

如果您在数字前添加“ +”(加号),则

您可以指定相对位置。

 

:pos_y 垂直位置

 

仅指定垂直位置。

如果您在数字前添加“ +”(加号),则

您可以指定相对位置。

 

 

:pos_nextline

 

移至上一个文本命令之后的下一行。

除非顶部对齐,否则不能使用它。

如果从未使用过text命令,则无法使用它。

 

 

:pos_next

 

移至上一个文本命令之后的位置。

除非左对齐,否则无法使用。

使用screen命令的屏幕尺寸(至少长宽比)

必须正确设置。

如果从未使用过text命令,则无法使用它。

请勿用于多行字幕。

 

 

:align_left

:align_center

:align_right

 

分别设置左,中和右对齐。没有参数。

默认值为左对齐。

 

 

:valign_top

:valign_center

:valign_bottom

 

分别设置顶部,中心和底部对齐。没有参数。

默认值为底部对齐。

 

 

:margin 水平边距,垂直边距

 

设置边距。单位是字符大小的百分比。

默认值为5,5。

 

 

:screen 屏幕宽度,屏幕高度

 

指定屏幕尺寸。

默认值为1280,720。

 

 

:screen_height 屏幕高度

 

指定屏幕的高度。

用于确定字幕纹理的大小。

屏幕越大,纹理的分辨率越高。

默认值为720。

 

 

:edge 边缘厚度

 

指定边框的边缘粗细。单位是字符大小的百分比。

设置为0表示无边框。

预设值为6。

 

 

:edgecolor R,G,B

 

指定边框的颜色。 RGB是0到255之间的整数。

默认值为0,0,0。

 

 

:edge_round

:edge_round_off

 

圆角的角。

默认为关闭。

 

 

:shadow 阴影距离

 

指定阴影距角色的距离。单位是字符大小的百分比。

设置为0表示没有阴影。

默认值为0。

 

 

:shadowcolor R,G,B

 

指定阴影颜色。 RGB是0到255之间的整数。

默认值为0,0,100。

 

 

:shadowblur 模糊半径

 

指定模糊阴影和边框的强度。 0无效。

模糊半径的单位是文本大小的百分比。

请注意,该过程需要时间。

我们建议最多保留10个或更少。

默认值为0。

 

 

:alpha 不透明度

 

设置字幕的Alpha值。介于0和1.0之间的实数。

此参数在效果端处理。

预设值为1。

 

 

:backcolor R,G,B,A

 

设置背景色。 RGBA是0到255之间的整数。

默认值为255,255,255,0。

 

 

:fade 淡入淡出时间

 

指定字幕消失所需的时间。单位是秒。

设置为0表示不褪色。

默认值为0.5。

 

 

:autotime 单字符时间

 

这是当省略字幕的显示长度时使用的每个字符的时间长度。

单位是秒。

默认值为0.3。

 

 

:timebase 基准时间

 

设置时基。

设置时基后,所有后续文本命令显示时间均相对于时基。

例如,如果您在时基5状态下使用@ 5文本命令,则字幕将在视频开始播放10秒后显示。

如果在切换场景时使用它,则可以将后续字幕视为从场景开始的时间。

 

 

:tate

:tate_off

 

垂直书写。由于它是附加功能,因此存在许多问题。

当然,默认值为关闭。

 

 

:billboard

:billboard_off

 

将广告牌显示设置为面板模式。

默认为关闭。

 

 

:set 设置名称

 

记录当前格式信息。可以使用get命令调用记录的格式。

这可用于更改每个字符的格式。

请注意,集合名称区分大小写,并且为双字节和单字节。

如果此命令以相同的名称重复使用两次,它将被覆盖。

 

 

:get 设置名称

 

调用set命令记录的格式。

使用未注册的设置名称将导致错误。

但是,将默认名称用作设置名称将重置所有格式。

 

 

:skip

 

跳过下一个文本命令。

但是,它可用作相对时间的标准。

这可用于暂时隐藏字幕。

 

 

:end

 

指示MMTScript的结尾。不需要。

此命令之后的所有内容都将被忽略。

posted @ 2020-04-18 18:24  妖星儿  阅读(477)  评论(0)    收藏  举报