前言
本篇文章正文中提到的快捷键和 Q&A 会整理到附录。如果有问题欢迎讨论!
使用版本:Minecraft 1.20.2;Isometric Renders 0.4.6。正文以原 Mod 内显示文本为准。
正文
命令
父命令:
/isorender
这个命令只能被玩家在聊天框执行,在命令方块中执行不会出现界面。
以下所有子命令都需要紧跟在此命令后:
子命令 | 作用对象 |
---|---|
area | 一块区域 |
block | 方块 |
creative_tab | 创造模式标签页 |
entity | 实体 |
item | 物品 |
namespace | 命名空间 |
player | 玩家 |
tag | 标签 |
tooltip | 悬浮提示框 |
unsafe | unsafe 模式 |
area
area 子命令可以渲染一块选定的区域。
命令:
/isorender area [<start>] <end>
想要进入 area 渲染界面,首先需要选定一块区域。
选取区域的方法很多,可以直接输入起止坐标(自行获取),也可以使用快捷键——作者增加了一个按键绑定,放在“杂项”里,名称为 [ISO] Select Area,默认绑定 C 键(与保存快捷栏冲突)。选取过程中需要按两次快捷键,第一次选起始点,第二次选终止点。潜行状态下按快捷键取消选区。如果在按下两次 C 后继续按 C,会将所指向的位置替换为新的终止点。
选取的位置会优先吸附在方块上,如果附近没有方块将会选取准心所对的空气。
如果已知坐标,可以将上文命令中的 [<start>]、<end> 分别替换为起始、终止坐标。
如果是选取区域,就可以不输入 [<start>]、<end>。
成功进入到 area 渲染界面。功能较多,先看左边的:
变换设置
下图分别对比例、旋转角、Slant 进行调整:
Light Angle 是光照角度,在有光照时可以调整光线照射生物的方向。使用光影包时会影响渲染效果。
Rotation Speed 是自动旋转速度,可以使渲染图自动旋转,但不会修改“变换设置”里的旋转角。从非 0 值切换到 0 时会使渲染图恢复到“变换设置”里旋转角对应的角度。
预设
等轴测:旋转角 135,Slant 30。Minecraft Wiki 很多图片都是这个参数(当然,Wiki 编辑者不是用的这个 Mod)。
正二轴测:旋转角 135,Slant 36。
Mesh Controls(area 独有)
Mesh 有网格的意思,这里可以粗略理解为选区。
模型网格状态显示目前的渲染状态,显示为绿色的“已就位”表示可以进行导出等操作。
Freeze Entities 复选框表示是否冻结渲染图内的实体,默认为勾选状态。勾选时渲染图内所有实体都是静止的,但在此界面中不会暂停游戏,因此实体会自由移动。取消勾选后点击下方“Rebuild Mesh”进行重新渲染,此时的渲染图为实时渲染场景,实体可以在渲染图内移动。再次勾选后点击下方“Rebuild Mesh”会再次静止渲染图,并使实体恢复上一次的朝向(除掉落物)。
再看右侧的:
渲染设置
背景颜色指按下“F10”进入工作室模式后的背景颜色,不会为导出图片增加底色,导出的始终是透明背景 .png 格式的图片。在工作室模式时,所有界面将会消失,只保留渲染图。按照作者所说,工作室模式是为某些不在意图片清晰度或渲染图分辨率的玩家准备的,玩家可以在此模式使用其他程序进行屏幕录制等操作。
动画效果控制某些实体(或方块)的动画播放。未开启时动画会固定为某一 Tick ,开启时动画 Tick 会随游戏 Tick 而变化。例如“幽匿感测体”在未勾选时反复点击“Rebuild Mesh”也不会有变化,勾选后每次点击“Rebuild Mesh”都会变为最新的 Tick。
粒子效果,就是将实体产生的粒子渲染在图内。需要开启动画效果才生效。
导出设置
直接导出到根目录,即导出到“游戏目录/renders”文件夹下。不勾选时则会导出到更深一层的文件夹“游戏目录/renders/area_renders”。
Overwrite latest file,即覆盖最新导出的图片文件。如果只想导出一张最满意的图片,而又不愿再手动删除不满意的图片,可以尝试勾选这个。
导出,即导出渲染图。点击后将会加入导出队列中。同时玩家也可以按“F12”快捷导出。
打开文件夹,即打开导出图所在文件夹。未勾选“Overwrite latest file”时会打开 /renders 文件夹,勾选时会打开 /renders/area_renders 文件夹。此外,导出后右下角弹出的小窗口可以点击,会直接打开图片文件。
Clipboard,即将导出图复制到剪贴板。复制后可以在其他程序中进行粘贴。
渲染器分辨率,即导出图的分辨率。所有导出图的形状都是以这个值为边长的正方形。分辨率越高,导出时间越长,文件也就越大。
Animation Options
Animation Frames,即导出动画的总帧数。这个值越大,导出所占运行内存、显卡内存越多。
Animation Framerate,即导出动画的帧率。这个值越大,导出的动画每秒帧率越高。
Export Animation,即导出动画文件。鼠标放在此按钮上时会悬浮显示预估占用内存。当预计占用内存超过实际可用内存时,数值会显示红色。此时无法导出,需要按住 shift 并点击左键进行导出。玩家可以点击右侧的按钮切换导出文件格式,默认显示为 APNG,点击可以在 APNG、GIF、MP4 中进行切换。
好!在已经了解 area 的具体用法后,现在可以进行导出了。
Q1:渲染图看起来太小,调大又会到屏幕外面,如何移动图片?
A1:作者添加了快捷键“W、A、S、D”,可以上下左右平移渲染图。
Q2:导出的图片缺角,怎么办?
A2:Mod 只会导出渲染区内的图片,超出这个区域的图片会被裁剪。渲染区为界面内非深色区域。请在找到适宜参数后将渲染图比例缩小,然后调整右边的“渲染器分辨率”。
Q3:分辨率 >16384 不让导出,怎么办?
A3:需要开启 unsafe 模式。在聊天框内输入 /isorender unsafe enable 启用。此外 <16 的分辨率也需要开启这个模式。
成功导出的图片,应该是这个样子的:
block
block 子命令可以以方块形态渲染一个方块。
命令:
/isorender block [<block>]
想要进入 block 渲染界面,可以将 [<block>] 替换为想要渲染的方块的 ID(自行获取),也可以将准心对准想要渲染的方块,此时不需输入 [<block>]。
所有功能均与 area 相同,请参阅 2.1.1.1—2.1.1.6。
尝试渲染一层雪:
creative_tab
creative_tab 子命令可以渲染创造模式标签页。
命令:
/isorender creative_tab <itemgroup> <task>
想要进入 creative_tab 渲染界面,需要将 <itemgroup> 替换为想要渲染的创造模式标签页名称(自行获取),然后将 <task> 替换为 atlas 或者 batch。
当 <task> 为 atlas 时,物品会被渲染在一张图片内。可以调整列数。
当 <task> 为 batch 时,每个物品会被单独渲染成图。需要在后面继续附加物品形态:
物品形式 | 说明 |
---|---|
blocks | 以方块形态渲染物品,也就是说,不能放置的物品(例如苹果)不能被渲染。 |
items | 以物品形态渲染物品,可以渲染所有物品。 |
所有功能均与 area 相同,请参阅 2.1.1.1—2.1.1.6。
尝试渲染“建筑方块”标签页:
此外,作者增加了一个快捷键——Ctrl+F12。这个快捷键只在创造模式标签页里生效,作用是渲染目前显示的一页。
所有后续操作与上文相同。
entity
entity 子命令可以渲染一个实体。
命令:
/isorender entity [<entity>] [<nbt>]
想要进入 entity 渲染界面,可以将 [<entity>] 替换为想要渲染的实体的 ID(自行获取),此时实体后可以添加自定义 NBT(需要为 SNBT 形式);也可以将准心对准想要渲染的实体,此时不需输入 [<entity>]。
Entity Pose
Yaw,指实体头部的水平旋转角度,开启动画效果后身体会自动转正。
Pitch,指实体头部的竖直旋转角度。
其他功能均与 area 相同,请参阅 2.1.1.1—2.1.1.6。
了解了各项参数的功能后,现在来尝试导出一个实体。
成功导出了一只美西螈!右下角会提示导出的文件名称,点击可以直接打开。
如果这条命令过长呢?
很明显,游戏中绝对不让执行。命令太长了。
Q4:NBT 太长,聊天框无法执行,命令方块执行没有界面,怎么办?
A4:个人认为有两种方法,一种是用命令方块生成后使用准心渲染,另一种是使用其他 Mod 移除这个限制。
使用命令方块生成后渲染
先将命令改写成生成实体的形式(/summon),然后输入命令方块执行,使用准心对准后渲染。
到这里又遇到问题了,大部分实体有 AI,会移动。对此也有两种方法:
(<1.20.3)可以使用 Carpet 等可以暂停游戏的模组。以 Carpet 为例,输入 /tick freeze on 后生成,实体不会移动,此时可以进行渲染;
(≥1.20.3)因为 /tick 命令已经加入原版,所以无需安装 Carpet,直接输入 /tick freeze 即可。
在实体的 SNBT 中加入 NoAI:1b 禁用此实体的 AI。
使用 Mod 移除限制
不幸的是,这条命令达到了命令方块字数的上限,无法执行。
例如使用 NBT Editor,在模组配置内将 Chat Limit 从 Normal 切换为 Extended,随后可以正常执行。
尝试导出渲染图:
item
item 子命令可以渲染物品。
命令:
/isorender item [<item>]
想要进入 item 渲染界面,可以将 [<item>] 替换为想要渲染的物品的 ID(自行获取),也可以不输入后面的部分,此时渲染的是玩家主手所持的物品。
所有功能均与 area 相同,请参阅 2.1.1.1—2.1.1.6。
渲染一个烟花火箭:
这里的物品是有厚度的,需要渲染平面的可以将 Slant 改为 0。
这里再来试试导出动图:
namespace
namespace 子命令可以渲染一个命名空间内的所有物品。
命令:
/isorender namespace <namespace> <task>
namespace,即命名空间。每个物品ID都由“命名空间:名称”构成,例如“minecraft:arrow”中,minecraft 就是命名空间。
想要进入 namespace 渲染界面,需要将 <namespace> 替换为想要渲染的命名空间名称(自行获取),然后将 <task> 替换为 atlas 或者 batch。
当 <task> 为 atlas 时,物品会被渲染在一张图片内。可以调整列数。
当 <task> 为 batch 时,每个物品会被单独渲染成图。需要在后面继续附加物品形态:
物品形式 | 说明 |
---|---|
blocks | 以方块形态渲染物品,也就是说,不能放置的物品(例如苹果)不能被渲染。 |
items | 以物品形态渲染物品,可以渲染所有物品。 |
所有功能均与 area 相同,请参阅 2.1.1.1—2.1.1.6。
尝试渲染 minecraft 命名空间:
player
player 子命令可以渲染玩家模型。
命令:
/isorender player [<player>] [<nbt>]
想要进入 player 渲染界面,可以将 [<player>] 替换为想要渲染的玩家名称,此时实体后可以添加自定义 NBT(需要为 SNBT 形式);也可以不输入后面的部分,此时渲染的是玩家自身。
player 可以渲染加入过存档的所有玩家皮肤,只要在存档文件夹有玩家数据就可以正常渲染。如果没有数据,则会从默认皮肤库内随机选取一个皮肤渲染。
其他功能均与 area 相同,请参阅 2.1.1.1—2.1.1.6。
尝试渲染一个 Steve:
tag
tag 子命令可以渲染一个标签下的所有物品。
命令:
/isorender tag <tag> <task>
想要进入 tag 渲染界面,需要将 <tag> 替换为想要渲染的标签名称(自行获取),然后将 <task> 替换为 atlas 或者 batch。
当 <task> 为 atlas 时,物品会被渲染在一张图片内。可以调整列数。
当 <task> 为 batch 时,每个物品会被单独渲染成图。需要在后面继续附加物品形态:
物品形式 | 说明 |
---|---|
blocks | 以方块形态渲染物品,也就是说,不能放置的物品(例如苹果)不能被渲染。 |
items | 以物品形态渲染物品,可以渲染所有物品。 |
其他功能均与 area 相同,请参阅 2.1.1.1—2.1.1.6。
尝试渲染工具标签:
默认设置为 1 列,可以根据需要调节列数。此外,按键盘上的“]”(右中括号)键可以把比例值增加 10,按“/”(斜杠)键可以把比例值减少 10。
tooltip
tooltip 子命令可以渲染悬浮物品提示框。
命令:
/isorender tooltip [<item>]
想要进入 tooltip 渲染界面,可以将 [<item>] 替换为想要渲染物品提示框的 ID,也可以不输入后面的部分,此时渲染的是玩家主手所持的物品。
所有功能均与 area 相同,请参阅 2.1.1.1—2.1.1.6。
尝试渲染一把钻石剑的提示框:
unsafe
unsafe 子命令可以开启或关闭 unsafe 模式。
命令:
/isorender unsafe (disable|enable)
unsafe 模式解除了渲染器分辨率的限制。默认为关闭。未开启时只能渲染 16~16384 内的分辨率,开启后可以渲染其他分辨率。此功能可能会因性能问题导致游戏卡顿,甚至崩溃,因此默认关闭。需要手动开启。
附录
附录1—快捷键总结
快捷键 | 效果 |
---|---|
W | 上移渲染图 |
A | 左移渲染图 |
S | 下移渲染图 |
D | 右移渲染图 |
](右中括号) | 增加 10 比例值 |
/(斜杠) | 减少 10 比例值 |
F10 | 工作室模式 |
F12 | 导出 |
Ctrl+F12 | 导出 1 页标签页 |
附录2—Q&A
Q1:渲染图看起来小,调大会出屏幕
A1:作者添加了快捷键“W、A、S、D”,可以上下左右平移渲染图。
Q2:导出的图片不全
A2:Mod 只会导出渲染区内的图片,超出这个区域的图片会被裁剪。渲染区为界面内非深色区域。不要主观认为放大后更清晰,对导出图清晰程度起关键作用的是右侧的“渲染器分辨率”。请在找到适宜参数后将渲染图比例缩小,然后调整右边的“渲染器分辨率”。
Q3:分辨率>16384不能导出
A3:需要开启 unsafe 模式。在聊天框内输入 /isorender unsafe enable 启用。此外 <16 的分辨率也需要开启这个模式。
Q4:NBT 太长,聊天框无法执行,命令方块执行没有界面
A4:个人认为有两种方法,一种是用命令方块生成后使用准心渲染,另一种是使用其他 Mod 移除这个限制。
使用命令方块生成后渲染
先将命令改写成生成实体(/summon),然后输入命令方块执行,使用准心对准后渲染。
到这里又遇到问题了,大部分实体有 AI,会移动。对此也有两种方法:
(<1.20.3)可以使用 Carpet 等可以暂停游戏的模组。以 Carpet 为例,输入 /tick freeze 后生成,实体不会移动,此时可以进行渲染;
(≥1.20.3)因为 /tick 命令已经加入原版,所以无需安装 Carpet,直接输入 /tick freeze 即可。
在实体的 SNBT 中加入 NoAI:1b 禁用此实体的 AI。
使用 Mod 移除限制
例如使用 NBT Editor,在模组配置内将 Chat Limit 从 Normal 切换为 Extended,随后可以正常执行。
Q5:导出 NBT 格式的结构
A5:目前还不能直接导出,但可以先生成结构后再使用 area 子命令渲染。生成结构的方法很多,例如 /place 命令、结构方块等。
附录3—参考文档
[1]“/Isorender.”MC百科, www.mcmod.cn/item/739157.html.
[2]glisco.“Isometric Renders.”Wisp Forest Docs, docs.wispforest.io/isometric-renders/home.