【半條命HalfLife】金源地圖如何RTX ON
實在是找不到封面圖
(這段看不看無所謂)
標(biāo)題整活哪來的懂的都懂,不過我只是開玩笑而已
翻譯的時候有點擺爛,有一段直接上DeepL了,甚至保留了原文,不過不至于理解不了教程
剛好我Blender還沒刪,自己去截了三張圖替換了原來的(內(nèi)容一致)
注意!由于配置原因我無法上手實操,不知道紋理系統(tǒng)工作原理mat_junction文件夾我也沒找到哪有,如有紋理丟失請至Hub求助

光追下載
https://github.com/sultim-t/xash-rt/releases
打不開、下載慢找靠搜索引擎自己解決,這不是Hub訪問教程
下面正片開始

工作流程:
1. 將地圖導(dǎo)出為glTF
2. 修改glTF文件(比如用Blender,Steam上就有)
3. 當(dāng)游戲渲染地圖的時候,對應(yīng)的glTF2將被加載并渲染(不會加載原版地圖)
4. 每個地圖的屬性都可在scenes.json中修改(目錄Half-Life/rt/data)
詳情
以dm_dust2_hl1這個地圖為例:

將地圖文件解壓到valve文件夾(bsp在maps文件夾里面),然后打開游戲(指xash3d.exe)并載入地圖
導(dǎo)出
確認(rèn)已經(jīng)勾選No server cull(不然得到的不是完全體)

在devmode窗口中點擊Export frame geometry

打開
在Blender里面打開glTF


提示:點它就能看到光影跟紋理了,然后把采樣設(shè)置為1

現(xiàn)在可以看到地圖了

修改
所有對象必須在rtgl1_main_root里面

咱來把太陽綠了吧

導(dǎo)出 II
什么冷加載熱加載的咱也不懂,總之就是說這玩意很睪級(擺爛迫真翻譯),游戲可以后臺運行,然后一導(dǎo)出glTF你接著就能看到變化
點擊文件→導(dǎo)出→glTF2.0(建議設(shè)個快捷鍵)

找到現(xiàn)存文件,選中它

glTF導(dǎo)出設(shè)置必須是這樣的:
格式=glTF分離
勾選“保留原有”
勾選“自定義屬性”(這倆在“包括”里面)
勾選“精確燈光”
勾選“切向”(這個在“數(shù)據(jù)”→“網(wǎng)格”里面)

提示:建議保存你的導(dǎo)出設(shè)置

名稱欄變紅了,因為我們是要替換它(點擊導(dǎo)出)

控制臺會出現(xiàn)如下信息

綠了,綠了!

清理
glTF不支持多邊形光,只能以聚光來模擬,然后HL1RT導(dǎo)出程序通常會在多邊形周圍生成很多用不著的光源,應(yīng)該都remove了(更少的光源=更少的噪點)
舉個栗子:刪除這3個用不著的聚光,只留一個點光源

Just works

場景屬性
在scenes.json(位于Half-Life/rt/data)里面加入你的地圖(此處非原文,我也不知道是不是必須)

注意,HL1地圖格式都是c0a0.bsp這種,但sceneName這里寫c0a0就行
警告:JSON-parser有一個跟空格相關(guān)的bug,就是說在:符號前后的空格會被認(rèn)為是錯誤,把空格都刪了,看看控制臺里有沒有錯誤提示。
對象屬性
glTF支持添加額外的屬性,比如說可以把光源設(shè)為體積光(達(dá)利…呃…丁達(dá)爾效應(yīng)),把mesh標(biāo)記為鏡子

光源:
lightstyle - (這里又一次沒說咋用,自己試試吧)
isVolumetric - 只有一個光源能用它,如果沒有設(shè)置,有這個效果的就會是太陽
todo(原文如此,哪天有更新我可能會同步)
Mesh:
isGlass
isMirror
isWater
todo
加入自定義內(nèi)容(沒錯,可能有人想象過“不反編譯改地圖結(jié)構(gòu)”,在這真能做到)
要創(chuàng)建固體(原文mesh跟金源的固體兩碼事,此處為了通俗易懂)在Blender里操作就是,放到rtgl1_main_root下面
自定義紋理(TGA/PNG)應(yīng)該跟.gltf文件在一個位置
不要給新創(chuàng)建的物體用mat_junction文件夾里的紋理
光線泄漏
在使用體積光的時候,光線可能會穿過比較薄的墻
想要避免這個,墻應(yīng)該做的厚一點 (或者把rt_volume_far參數(shù)調(diào)小點),或者是搞個東西擋住光源
發(fā)布
發(fā)布的東西里面有scenes.json、.gltf、.bin三個文件跟你的紋理就行
不用帶mat_junction文件夾,因為里面有原版HL紋理,那個只是為了讓你在Blender里看到正常紋理。
截圖欣賞(編輯過程和最終效果)


