旧版中国版特效编辑器¶
这篇说明适合在维护旧版中国版MC Studio特效编辑器项目时阅读。这里整理了模型导入、粒子特效、序列帧特效、模型挂接、预览面板、第一人称模型和属性字段;这些内容只适用于旧版中国版工具链,不表示国际版粒子系统或当前中国版特效系统具有相同格式。
与国际版粒子不同
本页所说的特效文件位于旧版中国版资源包的effects等目录,使用中国版MC Studio特效编辑器生成或维护。它不是国际版资源包中的Molang粒子定义,也不是@minecraft/server脚本API的一部分。
资源目录¶
旧版特效编辑器的资源管理器提供三个常用目录:
| 目录 | 旧版用途 |
|---|---|
effects | 存放中国版自定义粒子特效和序列帧特效JSON文件。 |
models | 存放导入的骨骼、骨骼动作、模型网格、中国版自定义方块模型和模型特效挂接文件。 |
textures | 存放特效贴图、骨骼贴图和动画序列帧贴图。 |
这些常用目录只是快捷入口。展开作品下的资源包,也可以找到对应的实际目录。
模型导入¶
旧版资料说明,特效编辑器主要支持两类模型:FBX通用模型和.bbmodel原版风格模型。FBX模型通常来自通用三维软件,可包含骨骼模型贴图和骨骼动画;.bbmodel则通常来自Blockbench,用于Minecraft风格模型。
导入FBX模型时,旧版工具要求选择模型所在文件夹、主模型文件和贴图文件。主模型是其他骨骼动画共同依赖的基准文件;选择错误可能导致动画导入异常。导入界面还提供“动态加载”选项,用于在游戏中实际使用到模型时再加载资源,避免启动时加载过多模型。
导入.bbmodel时,旧版资料要求设置模型ID,并可选择方块物品贴图和环境光遮蔽。导入后的文件通常进入models/netease_block和textures/blocks等目录。维护旧工程时,不应只按文件扩展名判断模型用途,还应检查生成后的中国版目录和引用路径。
特效类型¶
旧版特效编辑器把可编辑特效分为粒子特效和序列帧特效。
- 粒子特效
- 通过在场景中生成大量粒子图像形成整体视觉效果。每个粒子是效果中的一个元素,粒子发射器控制其数量、速度、方向、生命周期、颜色和渲染方式。
- 序列帧特效
- 通过在场景中绘制单面片贴图,并按配置不断切换贴图帧形成动画效果。序列帧贴图通常需要同名JSON配置文件描述帧排列。
创建特效时,旧版工具会在effects目录生成默认JSON文件。导入已有特效时,特效文件引用的贴图等资源也必须存在,否则导入可能失败。旧版资料建议通过可视化属性面板修改特效,不建议手动编辑特效JSON。
挂接与预览¶
模型挂接用于把特效绑定到模型或动作上。旧版挂接面板包含挂接模型、第一人称模型、挂接动作、挂点列表、位移、旋转和包含特效等参数。挂点列表由挂接分组和挂接点组成;挂接分组用于组织挂接点,挂接点保存具体的特效绑定信息。
挂接点的位置由模型自身的骨骼或挂点决定。选择挂接点后,可通过位移和旋转调整该挂点上所有特效的相对位置和朝向;旧版工具支持直接输入数值,也支持可视化拖动坐标轴。默认Steve不属于旧版骨骼模型,因此部分骨骼动画、位移或第一人称模型功能不可用于默认Steve。
预览面板用于快速观察模型和特效。旧版资料记录了以下预览能力:
- 主角和相机分离:允许相机以360°方式观察模型。
- 主角模型:可跟随当前编辑模型,也可强制指定某个骨骼模型、动作和挂接分组。
- 其他模型:可在场景中同时显示多个模型,并设置动作、挂接分组、位置和旋转。
- 场景特效:可在场景指定位置播放
effects目录中的特效。
第一人称模型只支持骨骼模型。旧版资料提醒,修改第一人称模型动作后可能导致编辑器中的Steve动作被清空;若需要恢复,需要重启游戏。
粒子属性速查¶
下表只用于识别旧版中国版特效JSON字段,不构成当前格式参考。
| 分类 | 字段 | 旧版含义 |
|---|---|---|
| 基本属性 | direction | 粒子方向模式,可为Direction、Inwards或Outwards。 |
| 基本属性 | directionMin、directionMax | Direction模式下粒子初始方向的随机范围。 |
| 基本属性 | velocity | 粒子初始速度范围。 |
| 基本属性 | constantforce | 粒子在三个轴向上的恒定加速度。 |
| 基本属性 | dampingforce | 与速度方向相反的阻尼;旧版资料说明负值可表现为加速度。 |
| 基本属性 | particlesize | 面向摄像机平面上的粒子初始尺寸。 |
| 基本属性 | rotation | 粒子绕屏幕平面法线的初始旋转。 |
| 基本属性 | rotationSpeed | 粒子旋转速度。 |
| 基本属性 | timetolive | 粒子生存时间。 |
| 基本属性 | layer | 粒子渲染层级,数值越大越晚渲染。 |
| 动态属性 | sizedelta | 生命周期内的粒子尺寸变化,可使用相对时间或绝对时间。 |
| 动态属性 | colorfade | 生命周期内的颜色和透明度变化,旧版资料说明点之间线性插值。 |
| 动态属性 | disorder | 粒子在各轴上的随机扰动、扰动间隔和递增量。 |
| 发射器 | numparticles | 同时存在的最大粒子数。 |
| 发射器 | activetime | 发射器连续发射时间。 |
| 发射器 | inactivetime | 发射器发射间隔时间。 |
| 发射器 | emissionrate | 发射器每秒发射粒子数量。 |
| 发射器 | emitterpath | 发射器随时间变化的偏移路径。 |
| 发射器 | emittertype | 发射器形状,可为球形、半球形、圆柱形或方形。 |
| 发射器 | emittersize | 发射器包围盒尺寸。 |
| 发射器 | emitterscale | 发射器尺寸随时间变化的缩放系数。 |
| 发射器 | thickness | 发射器表层厚度比例,0表示仅表面,1表示实心。 |
| 资源 | material | 粒子材质路径。 |
| 资源 | texture | 粒子贴图路径;旧版资料说明粒子贴图只显示整张贴图。 |
| 资源 | ani | 粒子贴图中的序列帧配置。 |
| 资源 | fps | 粒子序列帧播放帧率。 |
| 资源 | shuffle | 粒子携带序列帧是否随机播放。 |
| 渲染 | enableloop | 粒子生命周期长于序列帧时是否循环播放序列帧。 |
| 渲染 | relative | 粒子轨迹是否相对挂点运动。 |
| 渲染 | blend | 粒子混合模式,可为透明度混合、加色或不透明。 |
| 渲染 | faceCameraMode | 粒子朝向模式,可面向相机、面向地面、水平朝向或速度方向。 |
旧版emittertype的示例默认值曾写作Spere,而参数范围写作Sphere。维护旧文件时应把这类拼写视为旧版资料或工具输出的历史细节,不能直接推广为当前字段拼写规则。
序列帧属性速查¶
| 分类 | 字段 | 旧版含义 |
|---|---|---|
| 播放 | loop | 序列帧特效是否循环播放。 |
| 播放 | shuffle | 是否随机播放各帧。 |
| 播放 | fps | 每秒播放帧数;旧版资料建议不要超过30。 |
| 播放 | face_camera | 序列帧是否始终正向屏幕。 |
| 播放 | depth_test | 是否开启深度检测。关闭时,序列帧会更容易遮盖所在屏幕平面上的内容。 |
| 贴图 | texture | 序列帧贴图路径,使用时忽略.png后缀。 |
| 贴图 | scale | 序列帧贴图总缩放系数。 |
| 贴图 | tex_repeat_num | 贴图在横纵方向上的重复次数。 |
| 贴图 | rot_speed | 贴图绕各轴的旋转速度。 |
| 每帧 | 每帧缩放配置 | 位于序列帧贴图配置文件对应帧中,修改后会影响所有引用该序列帧贴图的特效。 |
| 环状序列帧 | cylinder_enable | 是否启用环状序列帧。 |
| 环状序列帧 | cylinder_radius_up | 环状序列帧顶部半径。 |
| 环状序列帧 | cylinder_radius_down | 环状序列帧底部半径。 |
| 环状序列帧 | cylinder_frac_num | 环状序列帧近似多边形数量。 |
| 环状序列帧 | cylinder_height | 环状序列帧高度。 |
序列帧.png贴图在同一目录下通常需要同名JSON配置文件。若缺少同名配置,旧版资料说明它可能只能作为单帧图片显示。
维护建议¶
维护旧版中国版特效时,建议按以下顺序排查:
- 先确认项目确实面向中国版旧版工具链,而不是国际版资源包。
- 备份资源包和生成目录。
- 检查
effects、models、textures及挂接文件是否同时存在。 - 检查贴图路径是否省略扩展名、序列帧贴图是否存在同名JSON配置。
- 对骨骼模型,确认主模型、动画、贴图和挂点名称是否匹配。
- 若特效只在编辑器预览中异常,先排除预览面板的主角模型锁定、挂接分组选择和时间轴显示开关。
- 若要迁移到当前国际版粒子系统,应重新按国际版粒子格式建模,不应直接改名复用这些中国版字段。