跳轉到內容

Q3Map2/BSP

來自華夏公益教科書

BSP 階段次要開關

[編輯 | 編輯原始碼]

-custinfoparms

[編輯 | 編輯原始碼]
  • 允許遊戲模組使用自定義表面引數,無需重新編譯 Q3Map2 本身。自定義表面引數儲存在 "scripts" 目錄下的 custinfoparms.txt 中。自定義表面引數遵循以下格式

// Contentflags

{
surfaceparmName 0x0000 //whatever bitflag is used by your mod for said surfaceparm
}

// Surfaceflags

{
surfaceparmName 0x0000 //whatever bitflag is used by your mod for said surfaceparm
}

-debuginset

[編輯 | 編輯原始碼]
  • 啟用表面三角形內嵌的除錯。// 我完全不確定這是什麼?

-debugportals

[編輯 | 編輯原始碼]
  • 將門戶繪製為半透明多邊形。為了獲得最佳的 -debugportals 結果,請省略 -vis 和 -light。

-debugsurfaces

[編輯 | 編輯原始碼]
  • 為每個表面著色不同的顏色(非常迷幻)。為了獲得最佳的 -debugsurfaces 結果,請省略 -vis 和 -light。
  • 建立一個新的 .map 檔案,其中包含一個空白的 worldspawn 實體和來自原始 .map 檔案的所有世界刷子。// 對這個不太瞭解。
  • 啟用對耀斑的支援。它們用於在明亮的光源上生成眩光效果。僅受 Quake3 引擎的某些版本支援,例如 Raven 作品中使用的版本或 ioQuake3
  • 強制給定表面的所有紋理座標到最適合分配紋理的平均顏色的畫素。

-fulldetail

[編輯 | 編輯原始碼]
  • 將導致所有細節刷子被視為結構刷子。

-leaktest

[編輯 | 編輯原始碼]
  • 如果遇到洩漏,將導致 Q3Map2 終止編譯。
  • 曾經,關於 -meta 開關的作用有一個明確的定義。現在,它已成為大多數 Q3Map2 高階功能所需的“魔法”開關。始終使用 -meta,並始終使用 -v。
  • 將每個表面上的最大索引計數設定為 N。
  • 將每個表面上的最大頂點計數設定為 N。

-nocurves

[編輯 | 編輯原始碼]
  • 不會將補丁網格編譯到 .bsp 中。

-nodetail

[編輯 | 編輯原始碼]
  • 不會將細節刷子編譯到 .bsp 中。
  • 不會將霧刷子編譯到 .bsp 中。
  • 不會將提示刷子編譯到 .bsp 中。

-nosubdivide

[編輯 | 編輯原始碼]
  • 可見表面不會被分割。TessSize 被忽略。
  • 不會修復 T 形交叉口(可能會導致閃光和 LOD 裂縫)。
  • 不會將液體刷子編譯到 .bsp 中。

-np <shadeangle (1 through 179)>

[編輯 | 編輯原始碼]
  • 強制所有平面著色器變為非平面,並使用指定的 shadeangle。

-onlyents

[編輯 | 編輯原始碼]
  • 僅更改已編譯 .bsp 中的實體。需要已編譯的 .bsp 和新的實體檔案 (.ent)

-patchmeta

[編輯 | 編輯原始碼]
  • 從補丁網格建立元表面。這將“烘焙”一組 LOD 到 .bsp 中的補丁。
  • 啟用修復有問題的 ATI GL_CLAMP 行為。始終使用此選項。

旁註:ATI 的行為是正確的。錯誤出現在 *NVIDIA* 驅動程式無法區分 GL_CLAMP 和 GL_CLAMP_TO_EDGE,而 Q3 使用了錯誤的一個:由於 Q3 的開發主要在 nVidia 硬體上進行,因此直到太晚才有人注意到它。

  • 啟用軸向斜角平面捕捉,以減少裁剪的模型平面數量(謹慎使用)。//我完全不知道這方面的事情。

-texrange <N>

[編輯 | 編輯原始碼]
  • 將每個表面的紋理畫素計數限制為 N。
  • 啟用 bsp 階段的詳細模式。始終使用此選項。

-verboseentities

[編輯 | 編輯原始碼]
  • 輸出更多關於將實體子模型編譯到 .bsp 中的資訊。
華夏公益教科書