0x00 前言
BrowEdit3 是一款强大的地图编辑工具,专为 Ragnarok Online 地图设计而开发,它可以配合 GRF Editor 使用,对象、障碍、纹理、光影等元素皆可编辑。
这款工具目前在 Github 上开源: https://github.com/Borf/BrowEdit3
最新的版本是 3.x,相对于旧版的 1.x 和 2.x 在性能和使用等各个方面都做了不少优化。
本系列教程将帮助大家认识 BrowEdit3 最基础的使用方法。
0x10 下载和安装
0x11 依赖安装
BrowEdit3 依赖 FFmpeg 做视频渲染。
FFmpeg 是一款轻量级的视频编解码工具,可以在官网找到 ffmpeg-git-full.7z
:
下载后解压到电脑任意位置,例如 S:\03_tool\ffmpeg
,然后把其中的 bin
目录加到系统环境变量就可以了:
在 PowerShell 的命令行中执行 ffmpeg -version
能正常打印信息则安装成功:
0x12 本体安装 - 方式一:下载
在作者的 Github 中可找到最新发布版本: https://github.com/Borf/BrowEdit3/releases
截止到 2024-03,最新版本为 BrowEdit3_545
解压到任意英文目录即可安装成功:
0x13 本体安装 - 方式二:编译
另一种安装方式是源码编译安装。
使用 Git 下载源码工程 https://github.com/Borf/BrowEdit3/ 到任意英文目录,如 D:/BrowEdit3
然后使用 VS2022 打开 BrowEdit3.sln
工程文件,右键 BrowEdit3 工程、并选择“重新生成”:
在“输出”控制台会打印编译后生成的 BrowEdit3.exe
的位置,默认就是在工程的 x64\Debug
目录下。
但此时还无法运行,会报错找不到 data
目录:
data
目录就放在工程的根目录,复制到 x64\Debug
目录下即可:
0x20 认识目录
目录结构比较简单,主要是以下文件:
BrowEdit3.exe
就是编辑器本体data
目录主要是编辑器界面的一些相关资源和配置Patcher.exe
是在线升级,但是国内没有代理的情况下用不了,所以无需关注,需要新版重新下载即可zips
目录就是下载升级补丁的存储位置,也是一样无需关注
0x30 配置
首先需要运行 BrowEdit3.exe
才会看到这个配置界面:
0x31 编码说明
因为我看源码的时候,BrowEdit3 简单粗暴的把用户所有输入都当作 UTF-8 编码、然后 BrowEdit3 再转换成 ISO-8859-1 处理、最后输出给用户时再转换成 UTF-8,而中文系统的 Windows 默认编码是 GBK,必然会乱码。
所以,以后的所有配置,都必须是英文字符,包括路径。
0x32 软件配置
主要配置如下:
RO Path
: 配置 RO 客户端的根目录,即 Ragexe.exe 所在的目录GRF Files
: 添加含有地图文件资源相关的 GRF 即可,支持添加多个Skin
: 界面皮肤主题配置,按照个人喜好修改即可
注意:
- 当不同 GRF 存在同名地图时,先加载的有效(与 data.ini 一样的原理)
- GRF 位置不做要求,允许不在 RO 客户端的根目录下
- 当前版本只支持加载 GRF 内的地图,解压出来的不支持加载
然后把配置框拉到底部:
GRF Editor path
: 配置GRF Editor.exe
所在的目录,建议配置英文版的 GRF Editorffmpeg path
: 配置 ffmpeg.exe 的文件路径,如前面安装在S:\03_tool\ffmpeg\bin\ffmpeg.exe
此时基本配置完成,其他配置保持默认即可。
点击 Save
按钮后,配置会保存到 BrowEdit3 根目录下的 config.json
文件中:
此后再运行 BrowEdit3.exe
就不会出现配置窗口了。
如果后面需要修改配置,可以直接修改或删除 config.json
,然后重启 BrowEdit3.exe
即可。
0x40 打开地图
点击左上角的 File ->
Open , 即可选择已配置的 GRFs 内的任意地图编辑:
如果看不到缩略图,可参考《添加自定义地图》中的方法处理
0x50 界面菜单介绍
顶部的界面菜单提供了多种编辑能力的按钮,后续教程会详细展开。
0x51 Height Edit(高度编辑)
Height Edit(高度编辑)提供了修改或调整地图上各个点或区域的高度或海拔的能力。
你可以在这里创建或改变地表的高低起伏,精细控制地图每个部分的地形,例如制作山丘、洼地、斜坡等。
0x52 Texture Edit(纹理编辑)
Texture Edit(纹理编辑)提供了更改地图表面的纹理的能力。
你可以在这里给地图的不同部分应用各种纹理图案,如草地、土壤、石头、沙子等,模拟不同的地面类型和环境效果,以增强地图的视觉效果和真实感。
通过调整纹理的大小、方向和重叠方式,你可以创造出更加丰富和细腻的地面效果,从而提高地图在视觉上的吸引力和沉浸感。
0x53 Object Edit(对象编辑)
Object Edit(对象编辑)提供了在地图上放置、移动、旋转或删除各种对象和元素的能力。
你可以在这里创造出功能丰富的游戏环境,如建筑物、树木、道具和其他景观特征,增强玩家的互动体验。
0x54 Gat Edit(地面属性编辑)
Gat Edit(地面属性编辑)提供了定义和修改地图上各个区域的地面属性的能力。
GAT(Ground Attribute Table)是 RO 地图中使用的一种格式,用于存储地面的类型和属性,如可行走区域、不可行走区域、水面、草地、不同高度的台阶等。
一个最常见的例子就是: 圣水、水球术等技能、玩家必须站在有水的地方才能施放,实际上依赖于地面属性设置。
0x55 Wall Edit(墙面编辑)
Wall Edit(墙面编辑)提供了创建、编辑和删除地图上的墙面或障碍物的能力。
这些墙面可以用来定义空间、创建封闭或半封闭的区域,增加障碍和掩体,以及添加地图的视觉和战术复杂性。
0x56 Color Edit(颜色编辑)
Color Edit(颜色编辑)提供了更改和调整地图元素的颜色的能力。
你可以在这里为地图和场景设置特定的色调、氛围和视觉风格,包括地面、建筑、物体等。
0x57 Shadow Edit(阴影编辑)
阴影对于增强地图的视觉深度和真实感非常重要,可以帮助创建更加立体和动态的场景。
Shadow Edit(阴影编辑)提供了编辑地图元素阴影效果的能力,但是只能人工逐格添加,并非通过光源实时计算,有点鸡肋。
0x58 Sprite Edit(精灵编辑)
Sprite Edit(精灵编辑)提供了添加、修改和管理地图上的二维图像或动画元素的能力。
Sprite(精灵)可以是角色、怪物、动态效果、装饰物或其他视觉元素等。
此功能尚未实现,可以关注作者的 Discord 留意更新
0x59 Lightmap(光照贴图)
Lightmap(光照贴图)提供了处理和优化场景光照的能力,可以认为的软件层面的光线追踪器。
它可以计算 RO 中地面上的光强度,原理是:
- 每个图块(包括墙壁)都有一个微小的 8x8 光照贴图,该光照图的边缘与其周围的图块共享,这意味着实际的光照贴图信息仅为 6x6,这些 6v6 光照贴图像素称为 luxels
- BrowEdit 计算每个 luxel 到其周围灯光的距离,如果灯光和该 luxel 之间存在 3D 模型,则不会使用该灯光
- 这种计算方式与原始光照贴图计算不同
此功能需要搭配 Object Edit 使用: 至少有一个光源对象才能计算光照
BrowEdit3 有两个版本:
- Speedrun 维护的私有版本,它只能通过 BrowEdit_3_Patcher.exe 在线下载(需要科学上网)
- Borf 维护的 Github 版本(本系列所用的版本)
这两个版本功能都是一样的,维度操作界面有点区别,譬如计算光影的 Lightmap 的按钮入口。
Speedrun 版本是在横条的 icon 按钮中:
Borf 版本是在顶部 data/*rsw -> Calculate Lightmap
:
0x5A Cinematic(电影化)
Cinematic(电影化)提供了在游戏开发环境中创建和编辑游戏内的电影式序列或动画的能力。
它涉及到多个元素的协调,包括摄像机动作、角色动画、光照效果、音乐和声音效果,以及其他视觉特效等等,你可以使用它叙述故事、展示场景、引导玩家或增强游戏的情感体验。
0x5B MiniMap(小地图)
关于 MiniMap(小地图)其实早在《添加自定义地图》中说过了,亦可移步到《「BrowEdit3 入门教程 12」 小地图编辑教程》学习。
0xF0 参考资料
原版视频:
- 《The complete Browedit 3 & 586 tutorial》
- 《Browedit 3 INTRO Full Course Tutorial》
- 《Browedit 3 SETUP Full Course Tutorial》
为原版添加了野生双语字幕: