抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

Func_Godot安装和配置

Intro

我发现godot自带的csg用来做地图实在是太不方便了,四处寻找了一番发现在godot内做地图的插件都很狗屎,迫于无奈只好选择了Func_Godot配套外置的地图编辑器。虽然因为没有资料和英语苦手导致折腾了好几天,但是我总算还是让他跑起来了。虽然特别折腾,但是折腾完后特别有意义,做地图方便太多了

csg作图不方便,插件csg太buggy,所以使用了func_godot

Func_Godot是什么?

image.png

在安装前,我先来简单介绍一下Func_Godot是什么。

Func_Godot的前身是Qodot,他是对于Qodot的一次大幅重写版本

这个插件的主要作用是允许你使用Quake的dot map文件去生成godot的地图场景。

请注意,严谨点说,Func_Godot不是地图编译器,他只是一个地图解释器,他没有Quake引擎的vis、lit的概念,更没有bsp的概念,他只是作为一个quake地图编辑器的桥接插件:把quake dot map的文件内容翻译成了Godot的节点,仅此而已

本教程使用是 Godot4.3 以及func_godot官方推荐的quake地图编辑器 Trenchbroom

当然你也可以选择其他的地图编辑器,如我们Goldsrc 之光 J.A.C.K 和 老牌Quake地图编辑器 NetRadiant,只不过这些地图编辑器的配置不在本文讨论范围内(因为我也不会(/ω\))

下载&安装

下载

插件:

GitHub - func-godot/func_godot_plugin: Quake .map support for Godot 4.2

请注意:目前该插件仅适用于Godot4.2+版本,Godot4.3据我所了解的情况下使用没有问题,不过请自行承担风险

该插件也有Godot3.x版本,只不过已停止维护,并且也不再本文讨论范围内,如有需要请自行查阅


地图编辑器 TrenchBroom

https://github.com/TrenchBroom/TrenchBroom

截止到写稿的时间,tb的2024.2 pre-release已经出来了,但是在正式release出来前个人建议下载2024.1 latest

tb下载完后选择一个喜欢的地方解压即可


安装

image.png

Func_godot下载完后压缩包内有两个文件夹

其中一个是插件本体(addons)

另外一个是离线版的 Documentation(FuncGodot Manual)

安装只需要将addons文件拖入 项目 根目录即可(即res://)


然后我们在godot内,左上角选择 项目 → 项目设置 → 插件,勾选 FuncGodot插件即可

配置插件

func_godot_local_config

我们在左下角文件系统内,进入 res://addons/func_godot,找到 func_godot_local_config.tres ,打开它,就会见到如下设置

image.png

在这里,我们只需要关注其中四个参数:

  • 分别是

    Fgd output Foloder :

    你的fgd导出位置,一般情况下和tb的游戏配置文件目录相同即可

    Trenchbroom Game Config Folder :

    tb的游戏配置文件目录,也就是tb目录下games文件夹,这里填写成:”trenchbroom位置/games/你的项目名字(or接下来设置的名字)”即可

    Map Editor Game Path :

    你的项目位置

    Game Path Models Folder :

    你的entity model在你项目的位置,在有model point fgd导出的时候,会自动生成一个glb的模型文件供你在tb内快速预览;而这个条目的意思就是,要在你项目位置的哪个文件夹里面创建,如留空为默认放置在项目根目录

    例如:你填写models,那么他就会在res://models里面放置glb文件,关于godot会自动读取的问题,在设置model point fgd的时候有创建 dot gd ignore 文件的选项,这些东西以后会详细说明,不在本文的讨论范围内

好了,按照以上信息填好之后记得点一下最上面的Export Func Godot Settings,否则到时候可能会导致导出游戏配置文件失败

func_godot_default_map_settings

在同样的位置(res://addons/func_godot),打开 func_godot_default_map_settings.tres

image.png

如画面中所示,目前我们只是调试安装插件,我们只需要注意一个地方:

Base Texture Dir

点击后面的文件夹选择你放置贴图与材质的地方,个人建议贴图和材质放在同一个目录下,且最好贴图和材质的名字相对应,因为这样会大大节省我们作图的时间,而不用去折腾材质之类的事情

然后记得在下面的 Texture File Extensions 里面添加一个元素:里面写上tres即可

(如果你使用的材质的后缀为material或者res,也可以添加上去,Func_Godot支持这种格式)

然后ctrl+s或点一下上面的保存键即可

TrenchbroomGameConfig

接下来我们在你喜欢的地方创建一个 resource / 资源 文件,搜索TrenchbroomGameConfig,命名成你喜欢的名字,点击创建,然后会看到这么多选项:

image0.png

如上,具体设置下一章节会提及。

在这里我们只需要注意两个选项:

  1. Game Name

    建议设置成别的名字,特别是你有多个项目的情况下,不然很容易混淆

  2. Export File

    在设置完游戏名字后,并检查前面在func_godot_local_config.tres内填写的信息是否正确,检查完毕后点击一下并看到输出栏没有红字error即成功导出

使用 TrenchBroom

配置 TrenchBroom

在你导出完成后,打开trenchbroom

image.png

点击New map…

image.png

然后点击Open Preferences

image.png

在这里,选择你刚刚导出的项目名字,在右边的Game Path里面填入你的项目地址

完成后Apply 并保存后,在Select Game中选择你的项目,你便如字面意思上新建了一张地图


使用 TrenchBroom

本文只会讲述一些简单的使用方法(如搓box),详细请看dumptruck_ds大佬制作的系列视频

Quake Mapping: TrenchBroom 2 Quickstart

Quake Mapping: TrenchBroom 2 Quickstart(Youtube)

墙内翻译链接:

Mapping雷神之锤:TrenchBroom 2快速入门_哔哩哔哩_bilibili

【Quake地图绘制 TrenchBroom 2 快速入门】

省流:在无模式选择下直接拉鼠标就能出Box,按住alt能调整box的高度;v顶点模式 ,e边模式, f面模式,esc退出模式,别的操作和3d建模软件差不多


设置纹理

在界面右边,点击右上角Face。在Texture Browser的右边打开Settings,如果设置无误你会看到你设置的材质目录与目录内的文件夹,双击他们或者选择后点击右下角的+号。完成后点击Browser即可看到你的材质。

还有一个小贴士, Clip贴图是给碰撞类型为 凸面 的物体,设置有碰撞体积、但没有视觉显示贴图的地方使用的;在func_godot的编译地图后,在tb内使用Clip贴图的面会没有贴图但保留碰撞体积。

Skip贴图是给 凹面 的物体,用来设置那些不需要的面上使用的;在func_godot的编译地图后,在tb内使用skip贴图的面会直接消失。


编译地图

在你做完、测试瞎弄完后,在tb内ctrl+s保存地图后,返回godot内新建一个新的场景(命名随意)后,添加一个叫做 FuncGodotMap 的Node

image.png

然后在 文件系统 内找到你刚刚保存的地图,拖入到 FuncGodotMap检查器 内的 Local Map File项中

image.png

随后在3D面板中,在已选择FuncGodotMap Node的情况下,点击中间视图上方的Build按钮,即可编译你刚刚做的完美地图,随后你便可以开始测试了


好了,恭喜你完成你的func_godot的基础设置与你的首个地图编译,现在你可以为你的游戏随意搓box了,congratulations!

如果你不满于tb只能用来搓搓box,你想让tb去放置实体和划几个trigger box的话,请看下一篇文章~~

Fin.

评论