中国指股网 > 宏观 > 内容页

【半条命HalfLife】金源地图如何RTX ON

2023-09-08 21:11:42 来源:哔哩哔哩

实在是找不到封面图

(这段看不看无所谓)


(相关资料图)

标题整活哪来的懂的都懂,不过我只是开玩笑而已

翻译的时候有点摆烂,有一段直接上DeepL了,甚至保留了原文,不过不至于理解不了教程

刚好我Blender还没删,自己去截了三张图替换了原来的(内容一致)

注意!由于配置原因我无法上手实操,不知道纹理系统工作原理mat_junction文件夹我也没找到哪有,如有纹理丢失请至Hub求助

光追下载

/sultim-t/xash-rt/releases

打不开、下载慢找靠搜索引擎自己解决,这不是Hub访问教程

下面正片开始

工作流程:

1. 将地图导出为glTF

2. 修改glTF文件(比如用Blender,Steam上就有)

3. 当游戏渲染地图的时候,对应的glTF2将被加载并渲染(不会加载原版地图)

4. 每个地图的属性都可在中修改(目录Half-Life/rt/data)

详情

以dm_dust2_hl1这个地图为例:

将地图文件解压到valve文件夹(bsp在maps文件夹里面),然后打开游戏()并载入地图

导出

确认已经勾选No server cull(不然得到的不是完全体)

devmode窗口中点击Export frame geometry

打开

在Blender里面打开glTF

提示:点它就能看到光影跟纹理了,然后把采样设置为1

现在可以看到地图了

修改

所有对象必须在rtgl1_main_root里面

咱来把太阳绿了吧

导出 II

什么冷加载热加载的咱也不懂,总之就是说这玩意很睾级(摆烂迫真翻译),游戏可以后台运行,然后一导出glTF你接着就能看到变化

点击文件→导出→(建议设个快捷键)

找到现存文件,选中它

glTF导出设置必须是这样的:

格式=glTF分离

勾选“保留原有”

勾选“自定义属性”(这俩在“包括”里面)

勾选“精确灯光”

勾选“切向”(这个在“数据”→“网格”里面)

提示:建议保存你的导出设置

名称栏变红了,因为我们是要替换它(点击导出)

控制台会出现如下信息

绿了,绿了!

清理

glTF不支持多边形光,只能以聚光来模拟,然后HL1RT导出程序通常会在多边形周围生成很多用不着的光源,应该都remove了(更少的光源=更少的噪点)

举个栗子:删除这3个用不着的聚光,只留一个点光源

Just works

场景属性

(位于Half-Life/rt/data)里面加入你的地图(此处非原文,我也不知道是不是必须)

注意,HL1地图格式都是这种,但sceneName这里写c0a0就行

警告:JSON-parser有一个跟空格相关的bug,就是说在:符号前后的空格会被认为是错误,把空格都删了,看看控制台里有没有错误提示。

对象属性

glTF支持添加额外的属性,比如说可以把光源设为体积光(达利…呃…丁达尔效应),把mesh标记为镜子

光源:

lightstyle- (这里又一次没说咋用,自己试试吧)

isVolumetric - 只有一个光源能用它,如果没有设置,有这个效果的就会是太阳

todo(原文如此,哪天有更新我可能会同步)

Mesh:

isGlass

isMirror

isWater

todo

加入自定义内容(没错,可能有人想象过“不反编译改地图结构”,在这真能做到)

创建固体(原文mesh跟金源的固体两码事,此处为了通俗易懂)Blender里操作就是,放到rtgl1_main_root下面

自定义纹理(TGA/PNG)应该跟.gltf文件在一个位置

不要给新创建的物体用mat_junction文件夹里的纹理

光线泄漏

在使用体积光的时候,光线可能会穿过比较薄的墙

想要避免这个,墙应该做的厚一点 (或者把rt_volume_far参数调小点),或者是搞个东西挡住光源

发布

发布的东西里面有、.gltf、.bin三个文件跟你的纹理就行

不用带mat_junction文件夹,因为里面有原版HL纹理,那个只是为了让你在Blender里看到正常纹理。

截图欣赏(编辑过程和最终效果)

关键词: