绘制与材质
本文介绍三项内容。
- 绘制:直接在 3D 上绘制自定义方块 · 道具模型的纹理。支持图层 · 选择 · 对称。
- 用纹理创建自定义方块:用纹理或自己的 PNG 创建新方块
np:<id>,并同时创建台阶 · 楼梯等变体方块。 - 材质(LabPBR):为自定义方块纹理添加光滑度 · 金属 · 自发光 · 法线等材质值。面向使用着色器的用户。
| 想做的事 | 打开位置 |
|---|---|
| 绘制模型 | 在内容浏览器中右键单击自定义方块 · 道具 › 「绘制」 |
| 绘制标签页 ↔ 世界标签页 | Ctrl+Tab(工具 › 切换绘制标签页 / 世界标签页) |
| 绘制模式 | 主工具栏模式行中的「绘制」 |
| 纹理列表 | 窗口 › 纹理(下方区域面板) |
| 用纹理创建自定义方块 | 在「纹理」面板中选择纹理,然后点击「创建自定义方块」 |
| 材质(LabPBR) | 自定义方块窗口中的「材质…」,或控制台 texblock material <id> |
在资产编辑器的「绘制」标签页中点击「在主窗口的绘制标签页中打开」,也会打开同一个绘制标签页。
- 在内容浏览器中右键单击自定义方块或道具,选择「绘制」。
- 中间区域切换为「绘制」标签页。左侧为 3D 模型,中间为 2D 纹理,右侧为工具面板。
- 按 B(笔刷)并选择颜色。
- 在 3D 视图中于模型上拖动。2D 窗口中也会同步绘制。
- 用 Ctrl+S 保存图层。世界也会一同保存。
- 用 Ctrl+Tab 回到世界标签页。
绘制结果每 0.25 秒(以及回到世界标签页时)反映到世界中已放置的方块 · 道具和已打开的 UV 窗口。不会修改原始模型文件。
用纹理创建自定义方块
Section titled “用纹理创建自定义方块”- 通过 窗口 › 纹理 打开「纹理」面板。
- 选择纹理并点击「创建自定义方块」。会弹出「用纹理创建自定义方块」窗口。
- 将面方式选为「顶·侧·底」或「6 面分别」。
- 为每个面用「所选」(在纹理面板中选择的纹理)或「PNG…」放入图像。「应用到所有面」会把所选纹理放到全部 6 个面。
- 设置「名称」 · 「id」 · 「光源」 · 「碰撞」。
- 需要变体时,开启「同时创建变体」并选择形状。
- 点击「创建」。方块会进入项目注册表。
之后同一窗口会变为「修改 (np:
| 工具 | 键 | 作用 |
|---|---|---|
| 铅笔 | P | 以像素为单位绘制。 |
| 笔刷 | B | 带硬度 · 不透明度的圆形笔刷。 |
| 橡皮擦 | E | 擦除当前图层。 |
| 填充 | G | 按「方式」一次性填充。 |
| 吸管 | I | 拾取已绘制的颜色(在 3D 视图中 Alt+左键单击效果相同)。 |
| 矩形选择 · 套索 | M · L | 在 2D 窗口中选择要绘制的区域。在 3D 视图中单击会选中该面的 UV 岛。 |
| 移动 | V | 移动所选区域。方向键 1 格,Shift 8 格,按住 Alt 则复制。 |
选择时 Shift = 添加,Alt = 减去,Shift+Alt = 仅交集。
「填充」方式有三种。
| 方式 | 填充范围 |
|---|---|
| 整个 UV 岛 | 被点击的整个 UV 岛 |
| 相连同色 (岛内) | 岛内相连的同色区域 |
| 整张纹理同色 | 整张纹理中的同色区域 |
图层 · 纹理
Section titled “图层 · 纹理”- 在「图层」栏中进行添加 · 复制 · 删除 · 上移 · 下移 · 向下合并 · 拼合全部,并设置每个图层的显示与不透明度。
- 在「纹理」栏中选择要绘制的纹理并更改大小。「拉伸」会放大或缩小图像,保持 3D 外形。「仅画布」以左上为基准扩展或裁剪。
- 「保存图层」会以新版本保存到
assets/<id>/layers/。「导出 PNG」将合并后的图像写入新文件_vN。
纹理在多处被修改时,优先级为 绘制图层 > 注册表纹理替换 > 原件。
自定义方块 · 变体方块
Section titled “自定义方块 · 变体方块”PNG 宽度为 16 · 32 · 64px。正方形为单张图像,纵向长条为动画。
- 原版纹理面不保存图像,只用 id 引用。
- 自定义纹理和自己的 PNG 保存在项目中。
放入纵向长条 PNG 后会出现动画行。PNG 旁有 .png.mcmeta 时,数值会自动填入。
| 栏 | 说明 |
|---|---|
| 每帧刻数 | 一帧的时间。20 刻 = 1 秒。 |
| 插值 | 在帧之间平滑混合。 |
| 顺序 | 播放顺序。留空则按顺序播放。例:0 1 2:5 3 — 编号:刻 表示仅该格使用不同时间。 |
| 逐格时间 | 在顺序下方的格中直接修改每帧时间。 |
如果在顺序中填入超过帧数的编号,「创建」会被禁用,状态栏中会显示原因。
开启「同时创建变体」后,会用相同纹理一同注册所选形状。
| 形状 | id | 默认 |
|---|---|---|
| 台阶 | <id>_slab | 开 |
| 楼梯 | <id>_stairs | 开 |
| 墙 | <id>_wall | 开 |
| 栅栏 | <id>_fence | 关 |
| 栅栏门 | <id>_fence_gate | 关 |
| 门 | <id>_door | 关 |
可以用预览下方的形状列表先查看变体的外观。不会影响注册表。点击变体形状栏,预览也会切换为该形状。
材质(LabPBR)
Section titled “材质(LabPBR)”材质是为使用着色器(Iris · OptiFine)的用户准备的附加值。基础资源包图像保持不变,材质另存为纹理旁的 _n · _s 图像。不使用着色器玩游戏也没有影响。
- 在自定义方块窗口中点击「材质…」。会弹出「纹理方块材质 (LabPBR)」窗口。
- 在「纹理槽」中选择要应用材质的面图像。
- 选择「预设」(石头 · 木材 · 金属 (铁) · 金属 (金) · 金属 (铜) · 玻璃 · 布料 · 荧石 · 树叶 · 基础 (无材质))。
- 用「数值」滑条调整。
- 点击「自动生成」,会根据亮度估算高度 · 法线 · 发光候选 · 光滑度 · 缝隙 AO。
- 只在需要的地方用「通道绘制」修整。
- 在右侧球体预览中改变「太阳方向」 · 「太阳高度」进行确认。
- 点击「保存材质」。会保存为新版本,不会覆盖。
开启「变体使用相同材质」后(默认开启),也会保存到台阶 · 楼梯 · 墙变体的相同槽中。
| 值 | 说明 |
|---|---|
| 光滑度 | 表面有多光亮。 |
| F0 (非金属反射) | 非金属的基础反射率。 |
| 金属 · 金属类型 | 金属程度与种类(铁 · 金 · 铝 · 铬 · 铜 · 铅 · 铂 · 银 · 基础色金属)。 |
| 自发光 | 自身发光的程度。 |
| 孔隙度 | 被雨淋湿的程度。 |
| SSS (次表面散射) | 像树叶 · 布料那样光渗入内部的程度。 |
| AO | 缝隙中的阴影。 |
| 高度 (均匀) · POM 深度 | 表面凹凸高度与视差深度。 |
| 法线强度 · 法线模糊 · 翻转法线 Y | 法线图的强度和形态。 |
| 边缘衔接 | 像方块一样将边缘连续计算。 |
| 暗处为高 · 发光阈值 | 「自动生成」的高度方向,以及视为发光的亮度阈值。 |
| 无着色器 | 以无材质状态绘制预览进行对比。 |
在通道绘制中,只将颜色的亮度(灰度)用作数值。越亮数值越大。橡皮擦会恢复为均匀值。
以下为绘制面板的选项。
| 选项 | 范围 | 说明 |
|---|---|---|
| 大小 | 1 ~ 32px | 笔刷大小。 |
| 硬度 | 0 ~ 100% | 笔刷边缘的硬度。 |
| 不透明度 | 1 ~ 100% | 每次绘制的覆盖程度。 |
| 对称 › 轴 | — | 以模型为基准对称绘制。 |
| 防止溢出面外 | 开/关 | 防止颜料溢出到面外。 |
| 球形笔刷 (O) | 开/关 | 在 3D 中绘制命中点周围 3D 距离内的区域。跨越 UV 边界 · 面边缘连续。 |
| 容差 | — | 填充时视为同色的差值。 |
| 基于合并图像 | 开/关 | 填充 · 吸管基于合并后的图像。关闭则只看当前图层。 |
| 像素画 | 开/关 | 不经过滤绘制并显示网格。 |
以下为自定义方块窗口的属性。
| 选项 | 范围 | 说明 |
|---|---|---|
| 名称 | 文本 | 在内容浏览器中显示的名称。 |
| id | 小写字母 · 数字 · _ | 接在 np: 后的 id。 |
| 光源 | 0 ~ 15 | 方块发出的光。0 = 无光。 |
| 碰撞 | 开/关 | 开启后整格阻挡(门只有下格)。 |
绘制标签页可见时,世界工具的按键被屏蔽,以下按键生效。
| 键 | 效果 |
|---|---|
| Ctrl+Tab | 绘制标签页 ↔ 世界标签页 |
| P · B · E · G · I | 铅笔 · 笔刷 · 橡皮擦 · 填充 · 吸管 |
| M · L · V | 矩形选择 · 套索 · 移动 |
| O | 开启/关闭球形笔刷 |
| [ · ] | 笔刷大小 −1 · +1 |
| Ctrl+A · Ctrl+D · Ctrl+Shift+I | 全选 · 取消选择 · 反选 |
| Delete | 删除选区内容 |
| Esc | 取消选择 |
| Ctrl+Z · Ctrl+Y | 绘制的撤销 · 重做(与世界历史分开) |
| Ctrl+S | 保存图层(及材质)+ 保存世界 |
| F · 数字小键盘 1 · 3 · 7 | 适配模型 · 正面 · 侧面 · 顶面 |
| 3D 视图:左键 · Alt+左键 · 右键拖动 · 中键拖动 · 滚轮 | 绘制 · 吸管 · 旋转 · 平移 · 缩放 |
以下为控制台命令。
| 命令 | 作用 |
|---|---|
texblock list | 用纹理创建的方块列表 |
texblock new [纹理 id] | 新打开自定义方块窗口 |
texblock edit <id> | 打开修改该方块的窗口 |
texblock material <id> | 打开该方块的材质窗口 |
texblock preview <形状> | 更改预览形状(cube · slab · stairs · wall · fence · fence_gate · door) |
texfind <搜索词> | 查找纹理(名称 · 使用的方块) |
texuse <纹理 id> [pick] | 使用该纹理的方块列表。pick = 将代表方块设为笔刷 |
提示 / 注意
Section titled “提示 / 注意”- 绘制 · 材质 · 生物群系绘制与世界各有独立的撤销历史。
- 在 UV 编辑器中修改 UV 后,已绘制的图像会随面移动。
- 原版纹理只在画面上读取。不会复制到项目文件夹,也不会为原版面创建材质。
- 只要有一个变体 id 已存在,就不会创建任何东西,并在错误中显示名称。
- 变体形状只有一种(物品栏形状)。没有楼梯拐角 · 墙和栅栏的相邻连接 · 门的开关。
- 门是两格高的模型。放置时请空出上方一格。
- 自定义方块文件保存在
<项目>/assets/blocks/<id>/中。 - 在「纹理」面板中双击纹理,会将使用该纹理的方块选为笔刷。