動態擊球表現

對於動態筆觸來說,Substance 圖的表現非常重要,因為 Substance 可以在非常短的時間內多次被重新生成。 如果 Substance 的計算太重,可能會產生延遲,進而在繪製時卡頓和凍結。 這些都可能導致糟糕的繪畫體驗。 本頁彙整了關於動態筆觸功能的資訊與建議。

動態筆劃的計算量可能相當繁重

同時也要知道,計算在不同情境下可能會產生影響:

  • 繪畫時 :動態筆劃會在繪畫時產生(視設定而定)。 錯誤的配置會讓繪畫變慢且延遲。
  • 重新開啟專案 時:即使繪畫過程順利,開啟專案時仍有可能計算停滯,導致開啟時間比平常更長。 那是因為最初的繪畫過程順利,因為計算分散在時間內,但當開啟專案時,幾乎會同時完成。 這表示如果動態中風設定不當,專案可能會要求數千個獨特的物質來生成。
  • 記憶體消耗 :為物質圖產生大量變化可能會消耗大量記憶體(因為這些世代在即時生成時具有不穩定性)。

使用抖動與間距設定

雖然在 Substance 內部實作令人印象深刻的效果或進階效果很容易,但有時保持簡單,改用 Substance 3D Painter 工具參數的原生設定會更有利。 這些設定對繪圖引擎的計算速度快得多:

  • 抖動 :這些參數允許透過改變某些屬性,在不重新計算實體(如角度、位置和不透明度)的情況下,以非常低成本地創造隨機性。
  • 間距 :間距越小,繪製一筆劃時印章越多。 有時候不需要連續的筆觸,使用較大的間距也能更好地看清所用的 alpha 或材質。

何時以及使用哪種類型的隨機

隨機種子是產生獨特性的絕佳方式。 問題在於產生過程可能成本高昂,而動態筆觸功能如果沒有適當調整,這種情況會發生相當頻繁。 重要的是要了解何時使用隨機種子,何時避免使用,並偏好另一種方法,以在視覺效果與效能間取得最佳平衡:

  • 每個印章 隨機種子:此例中,每個印章都會產生一個新的獨特物質生成。 這對於在木板上做獨特的釘子沒問題,但如果你要做墨水或顏料軌跡就不行。
  • 每筆 隨機種子:為當前筆觸創造獨特的隨機種子。 這在印章數量不多但每次筆劃都需要新變化時很有用(例如噴漆效果)。
  • 靜態隨機種子 :物質生成一次,且永遠不會改變。 這在表演上最理想,但根據你的需求可能會太限制。

那時間​​($time)呢?
時間對於製作非常具體的外觀很有幫助,但實際上是物質圖中最昂貴的變數之一。 原因是要從一個筆觸到另一個筆觸取得相似的數值非常困難,因此筆刷引擎很可能會不斷產生新的變化。 如果可以避免,建議用間距和印花索引,兩者結合起來可能會有類似的效果。

StampIndex 與 StampCycleCount 的使用

郵票索引​是單一郵票在筆觸內的識別碼。預設是從0開始,每多蓋一個印章,1個就增加1。 StampCycleCount 是一種限制獨特索引數量的方法,並指示 Substance 3D Painter 回收/重複使用已產生的 Substance 圖表。當當前 ID 達到上限時,Substance 3D Painter 會從 0 重新開始,形成迴圈。

因此,在保持良好效能的同時保持隨機性的最佳解決方案,是利用以下循環計數:

  • StampIndex 作為隨機種子 :建立物質圖時,可以將隨機種子設為絕對。 這樣你可以輸入一個自訂的值,也就是印章索引。 這樣就能為你筆劃內的每個印章建立一個獨特的 Substance 圖表版本。
  • 結合 StampCycleCount :你實際上可以創建有限的新變體組合,然後再重複使用。
  • 隨機起始 :如果循環計數設定為從隨機值開始而非 0,表示在已產生的圖表池中,每筆劃都會在開始時取得不同的物質版本。

停用基於參數值的計算

Substance 3D Painter 無法在調整參數時判斷是否會得到相同輸出,因為計算隱藏在 Substance 圖中。 這基本上是一個黑盒子。

為了提升調整參數和動態筆觸繪圖繪製時的效能,可以透過 Substance 圖的 userdata 欄位中使用條件值來指定何時產生新的圖實例。

可能的數值包括:

變數
使用情況
IsStampIndexActive
用來判斷彩繪時郵票索引是否應該改變。
IsRandomSeedActive
用來判斷隨機種子在上色時是否會改變。
IsTimeActive
用來判斷繪畫過程中時間($time)是否應該增加。

例如:

IsRandomSeedActive=input.roundness_jitter>0 || input.flip_x_jitter || input.flip_y_jitter

此時,只有當圖參數(識別碼) 圓度_jitter 大於0,或啟用布林 翻轉_x_jitter 或 flip_y_jitter 時,隨機種子才會被改變。 如果條件未被滿足,該圖將不會被重新生成。 圖參數必須以「 input.」作為前綴。 「被認可。」

recommendation-more-help
substance-3d-painter-help-guide