跳轉到內容

Trainz/AM&C/紋理檔案

來自華夏公益教科書,開放世界的開放書籍
(從 Trainz/texture file 重定向)
logo
Trainz 資產維護與建立

Trainz 註釋參考頁
TOC | 開始樂趣 | AM&C | 建立 | 書內參考 ORP 參考:  • 索引 • 容器 • 種類 • 標籤 | 附錄  • 版本
 詞彙表
 HKeys-CM
 HKeys-DVR
 HKeys-SUR
 HKeys-WIN
 滑鼠使用
 符號

主要文章:Trainz/references/texture.txt file (如果更詳細,此頁面應合併到該頁面;否則,應將其改寫為入門和介紹,都(並且首先)用於錯誤修復,然後用於更簡單的內容建立形式。


範圍:本指南適用於以下每個 Trainz 型別規範

KIND Texture, KIND Groundtexture, , , 和 縮圖容器.
相關資料型別:"Texture-variants"_container "Texture-variants" 容器 (資產提供紋理的替代材質配置,以季節性變體顯示。)

 

Trainz 紋理檔案 是 ASCII 文字格式規範檔案,描述單個紋理(根據 N3V 的文章名稱[註釋 1]) 在通用用法中,Trainzer 可能指的是 texture.txt 檔案 控制的圖形格式檔案。這些 texture.txt 檔案不是下面所述的二進位制生成的壓縮 .texture 檔案,但與圖形紋理影像一樣,成為一對檔案強制合併和壓縮成 Auran 格式的一部分,生成的 '.texture 檔案',由 CM 在資產提交時構建。這些檔案有時在開啟資產時可見,尤其是在它是新克隆時。

紋理檔案具有 ".texture.txt" 檔名副檔名,但是,當在 config.txt 檔案 中指定紋理檔案時,必須省略 ".txt",在標籤資料值欄位中只保留 ".texture" 副檔名。(這看起來很奇怪,似乎違反直覺,但對 Trainz 來說,'.texture' 表示 '.texture.txt',而當 CM 操作資料時,後一種形式(即作業系統格式)是可以理解的,但在 TrainzUtil、驅動程式、調車場或測量員使用已提交和處理過的準備使用資料時,它是不可以理解的。(TrainzUtil 是一個後臺程序,它執行由其他 Trainz 模組命令的許多資料庫操作。)


  具有 *.texture.txt 字尾和副檔名的檔案用於配置 Trainz 中的紋理行為。這些檔案還可以控制 內容管理器 如何處理紋理。這些檔案位於與源紋理檔案相同的資料夾中,通常是 .bmp、.tga 或 .jpg 檔案(以及 TANE 中的 .png 檔案),並進行'路徑規範連線'引用。修復這些路徑規範通常是修復有缺陷資產所需的唯一調整,因為在 TS09 之後,軟體要求更嚴格的檔案引用。這些 texture.txt 檔案由 CC 的資產原始檔夾中各自的 3D 圖形軟體匯出器或匯入器實用程式自動生成,但可以在需要控制它們控制的效果的專業化時手動編輯,這在修復有缺陷內容時偶爾需要。

檔案格式

[編輯 | 編輯原始碼]

使用者可編輯的 *.texture.txt 檔案 是 ASCII 文字格式的鍵值對,具有以下選項。請注意,此格式與 Trainz 使用的其他基於文字的格式不同(儘管有一些相似之處)。請注意 檔名字元限制,在命名紋理和影像檔案時。

語法

每個標記都指定在新的一行。在 '=' 號兩側沒有空格。空值有時有效。語法是

<token>=<value>
示例
Primary=WayCoolTexture.tga
Alpha=WayCoolTexture.tga
Tile=st
AlphaHint=masked
Anisotropy=16
MagFilter=linear
MinFilter=linear
MipFilter=linear

(僅供示例,不推薦設定)


標記和值

[編輯 | 編輯原始碼]
Primary=diffusemap.bmp

此標記指定表示紋理顏色(R、G、B)通道的影像檔案的名稱。影像檔案中的任何 alpha 通道將被忽略。生成的紋理將具有純白色 (100%) alpha 通道。

主紋理,不同 Alpha

[編輯 | 編輯原始碼]
Primary=diffusemap.jpg
Alpha=diffusemap.bmp

此標記組合指定表示紋理顏色(R、G、B)通道的影像檔案的名稱,以及表示紋理 alpha (A) 通道的影像檔案的名稱。alpha 通道影像應該是灰度影像。兩個檔案都不應該包含 alpha 通道。

主紋理,相同 Alpha

[編輯 | 編輯原始碼]
Primary=diffusemap.tga
Alpha=diffusemap.tga

此標籤組合指定單個影像檔案的名稱,該檔案表示紋理的顏色和 Alpha(R、G、B、A)通道。在這種情況下,兩個標籤必須引用相同的檔名。影像檔案必須包含 Alpha 通道。

Compression=dxt1

此標籤強制使用特定的紋理壓縮方案。如果省略,Trainz 將根據提供的影像檔案的內容選擇適當的紋理壓縮方案。如果您沒有特定的效果,請不要包含此標籤。有效選項為“none”、“dxt1”、“dxt3”、“dxt5”。參考 DXT 壓縮

NormalMapHint

[編輯 | 編輯原始碼]
NormalMapHint=normalmap

'NormalMapHint' 標籤允許將紋理指定為 法線貼圖。預設情況下,Trainz 會假設您的紋理是 漫反射貼圖,並將應用一些不適合法線貼圖的處理選項。您必須為法線貼圖指定此選項。有效選項為“none”和“normalmap”。

ModifyMap

[編輯 | 編輯原始碼]
ModifyMap=flipgreen

'ModifyMap' 選項允許翻轉紋理的綠色通道。某些程式(例如 3ds Max)建立的 法線貼圖 的 Y 軸方向與 Trainz 著色器預期的方向相反。此選項可用於使凹凸效果在 Trainz 中看起來正確。此選項由 內容管理器 在提交時應用。有效選項為“none”和“flipgreen”。

AlphaHint

[編輯 | 編輯原始碼]
AlphaHint=opaque

'AlphaHint' 標籤允許您強制對紋理使用特定的 Alpha 模式。有效選項為“opaque”(表示 Alpha 通道未使用,實際上是純白色)、“semitransparent”(表示 Alpha 通道是灰度混合)和“masked”(表示 Alpha 通道是純黑白色點陣圖)。如果省略,Trainz 會根據 Alpha 通道為該標籤提供適當的值。指定此選項可以防止掩碼紋理中的輕微變色觸發混合 Alpha 路徑。

Anisotropy

[編輯 | 編輯原始碼]
Anisotropy=1

各向異性取樣質量。數字越大,視覺質量越好,但效能成本會顯著提高。在需要紋理質量的地方,指定更高的值。Trainz 當前預設使用極高各向異性過濾,然後由遊戲中的各向異性滑塊進一步限制。有效值為整數“1”(預設值) - 無各向異性過濾,“2” - 低,“4” - 中,“8” - 高,以及“16” - 極高

MagFilter

[編輯 | 編輯原始碼]
MagFilter=linear

控制紋理放大時的過濾樣式。當紋理以大於實際大小顯示時(例如,單個紋理使用多個畫素表示)使用此選項。放大濾鏡的有效設定包括“nearest”、“linear”和“default”。Trainz 當前預設使用線性插值。選擇“nearest”將使用最近鄰過濾模式,這將導致“畫素化”輸出。

MinFilter

[編輯 | 編輯原始碼]
MinFilter=linear

控制紋理縮小時的過濾樣式。當紋理以小於實際大小顯示時(例如,單個畫素使用多個紋理表示)使用此選項。縮小濾鏡的有效設定包括“nearest”、“linear”和“default”。Trainz 當前預設使用線性插值。選擇“nearest”將使用量化過濾模式,這將導致“噪聲”輸出。

MipFilter

[編輯 | 編輯原始碼]
MipFilter=linear

控制紋理mipmap 選擇的過濾樣式。mipmap 在縮小時使用,有助於防止摩爾紋。使用mipmap 的代價是生成的影像會稍微模糊。使用mipmap 的好處是減少量化噪聲並減少記憶體佔用(因為當未使用時,可以解除安裝更詳細的 mip 層)。mipmap 濾鏡的有效設定包括“nearest”、“linear”、“default”和“none”。Trainz 當前預設使用三線性插值。選擇“nearest”將導致硬體為每個畫素選擇單個 mipmap,這將在 mipmap 邊界處導致可見的條帶。選擇“none”將停用 mipmap,導致效能降低、記憶體使用量增加以及“噪聲”輸出。


Tile=st

平鋪是指紋理座標在 (0.0 .. 1.0) 範圍之外時,可以被視為無限平鋪紋理上的有效座標。平鋪處於活動狀態時,超過紋理右側/底部的座標將有效地迴繞到左側/頂部,依此類推。有效選項包括“s”(水平平鋪)、“t”(垂直平鋪)、“st”(水平和垂直平鋪)以及“none”(不平鋪影像)。


評論和建議

[編輯 | 編輯原始碼]

標記 Hint 僅供內部使用,但自其發現以來,已被好心人使用和濫用。Anisotropy 應用於提高紋理質量,而 MipFilter=none 應僅用於 介面紋理 來停用 mip 對映。


影像格式

[編輯 | 編輯原始碼]

以下影像格式可以作為紋理檔案的源資料。

  • Targa (.tga) 檔案。Targa 是一種無損影像格式,具有可選壓縮和可選 Alpha 通道。
  • JPEG (.jpg) 檔案。JPEG 是一種有損影像壓縮格式,不支援 Alpha 通道。
  • Windows 點陣圖 (.bmp) 檔案。BMP 是一種無損影像格式,不壓縮,具有可選 Alpha 通道。

這些影像與相應的 *.texture.txt 檔案一起由 內容管理器 用於建立 Auran/N3V 二進位制紋理 (*.texture 檔案,無其他副檔名!),這些紋理用於 Trainz 模擬器中。N3V 二進位制紋理使用並 包含影像 LOD 資訊

  • 所有內建內容僅包含 N3V 二進位制紋理,無法使用普通的影像軟體開啟。可以在頁面上找到檢視這些紋理的適當工具。

任何大於 2048x2048 的影像都將調整大小為該最大尺寸,因此在資源中使用大於該尺寸的影像沒有意義。最好使用您喜歡的影像編輯程式中您首選的重取樣選項調整影像大小,而不是讓 內容管理器 調整影像大小。實際上,影像的大小應不超過在最典型的觀看距離下提供適當細節水平所需的尺寸。統一顏色影像應儘可能小 - 當然不應大於 16x16。

有關影像編輯器的說明

[編輯 | 編輯原始碼]
  • 與某些舊版 Adobe Photoshop 一起提供的 Targa Exporter 外掛已損壞,會靜默破壞或丟棄 Alpha 通道;可獲得免費更新以解決此問題。
  • 某些影像編輯器不支援 BMP 檔案的 Alpha 通道。


.txt 副檔名

[編輯 | 編輯原始碼]

紋理檔案具有“.texture.txt”名稱副檔名,但是當在 config.txt 檔案 或類似檔案中指定紋理檔案時,必須省略“.txt”,保留“.texture”副檔名。例如,在 kind groundtexture 配置檔案中,使用語法 texture "grass.texture" 指定名為 grass.texture.txt 的紋理檔案。

使用影像檔案代替紋理檔案

[編輯 | 編輯原始碼]

Trainz 從歷史上支援使用任何支援的影像檔案型別來代替 紋理檔案。這種技術有明顯的侷限性,並且不再推薦使用。


  1. TrainzOnline Wiki 同時使用“Texture File”和“texure.txt 檔案”作為主題標題,首席程式設計師 Chris Bergman 進行的一項編輯表明他希望將這兩個頁面合併。事實上,這兩個頁面中的資訊幾乎完全相同,因此我們在texture.txt 檔案頁面上覆制了它們,並指出源“權威”的雙重位置已經存在很長時間了。
華夏公益教科書