論 Render 翻譯(算繪/演繹)

3D 軟體中有個著名詞語叫做 Render。

目前有各種翻譯,最常見的「算圖」,次常見但越來越普遍的「渲染」,比較少見的「算繪」及「彩現」。我就來一一討論翻譯是否適切。

首先,得了解什麼是 Render 才有辦法討論下去。以電腦圖形領域來說,Wikipedia 上的 Render (Computer Graphic) 條目一開頭便寫到:

Rendering is the process of generating an image from a model (or models in what collectively could be called a scene file), by means of computer programs.

簡單翻成中文,Render 就是指透過電腦程式製作出模型 (或是放在一種整體來說稱為「場景檔」內的眾模型) 影像的一道程序。這道程序主要有兩個步驟,一是電腦計算模型的材質紋理如何與光照、光影著色法...等設置交互影響後結果為何,二就是將成果以像素一點一點地呈現成影像給使用者。

那麼口語中呢?Oxford dictionary 中提到,Render 作動詞用時,其實是指藝術性的「表現手法」:
represent or depict artistically: the eyes and the cheeks are exceptionally well rendered 
  1. perform (a piece of music):a soprano solo reverently rendered by Linda Howie 
  2. translate:the phrase was rendered into English 
  3. Computing process (an outline image) using colour and shading in order to make it appear solid and three-dimensional: he is forced to render images by intermixing pixels of a few basic colours
不管是繪畫領域,如描繪圖畫(把心中靈感翻譯出來給觀眾體會);音樂領域,如表演樂曲(把樂譜翻譯出來給觀眾聽);或是文學領域,如語言翻譯(把原文翻譯成當地語言);抑或是電腦程序,如使用色彩與光影著色表現使其結果看來如實且具體(把一份先前配置好的設定細節,如物件、燈光、場景等,翻譯成螢幕上的畫面),都可以用 Render 一詞。

有了這些資料,我們大致上就可以約略了解 Render 的意義,在於指稱「表現方式」與「翻譯」這兩個概念。由於中文沒有這種汎用於指稱「表現某出事物」的詞語,因此翻譯此詞語時不能執意直譯,而是各個領域必須找出自己對應的翻譯方式。音樂領域,或許是「演奏」;翻譯方面,大約就是「翻譯」;電腦圖形這塊呢?就是我們現在所要討論的主題。

來看看「算圖」好了。確實,Render 在 3D 領域幾乎就是算成圖給使用者。

再來談談「渲染」。渲染這翻譯可爭議大了,第一因為它原是指國畫的水墨表現技法,後來文學上有了許多衍生意。例如常聽到的「過度渲染」、「大肆渲染」,就是以渲染技法使用拙劣而造成反效果而延伸出來;再來例句如「情節的渲染與人物的刻寫」、「店裡的擺設、燈光、音樂,渲染出獨特的甜蜜氣氛」的渲染,則是以渲染技法表現得當為比喻。

因此,這樣一個多重意義的中文字眼,搭上 Render 著實不妥當,除了極可能被誤解成水墨表現外,更有負面的「誇大的過度表現」之意。至於以渲染技法作 3D 領域中 Render 的比喻,或許真有點藝術味在裡頭,但這裡的意義卻明顯非指渲(畫家塗上墨或顏料後,再用水淋擦,使顏色濃淡適宜)、非指染(書畫時著色落墨)。如果把「渲染」二字套進去 Wikipedia 的解釋中,如下:
渲染就是指透過電腦程式製作出模型影像的一道程序。

對水墨有概念的讀者看到這裡,腦中馬上就會浮現疑問,「什麼?渲染是電腦程序?是我看錯了嗎?」,因為在口語中渲染一詞就是指利用水分在紙張上擴展墨跡或顏色的技法,怎麼會是這道程序。重新定義既有中文詞彙之意,或許很酷,但卻畸型。找出更能貼切表達出 Render 此刻意義的翻譯才是翻譯者該走的路,這也就是翻譯者職責所在。

至於「算繪」,沒錯,這領域中 Render 就是算、繪,直覺易瞭。繪一詞更表達出 Render 類似藝術的描繪,只不過不是真的繪畫,而是改用算的。那麼比起算圖呢?算繪一詞更有「動作」感,也就更有處理這道程序的味道。

拿 Wikipedia 中一句話作實例來說,「An example of a modern simulation which renders frames in real time.」如果套用算繪作譯詞,中文粗略講如下:
即時算繪影格的現代模擬範例。
姑且不論其他細節,就拿 renders frames 與算繪影格來看,「算繪」的角色扮演得很成功。

那麼以算圖作譯詞,粗略講如下:
以即時方式對影格算圖的現代模擬範例。
由於「算圖」已經把「圖」寫死在翻譯中,所以不能算「影格」成圖,只能對影格算圖。所以個人認為算圖一詞沒有「算繪」二字來得靈活好用,直白的文字更沒有算繪來得藝術。

最後,說到「彩現」。彩現大約就是把「表現」作修改,賦予「表現出色彩」的意涵,或是「色彩現身」的感覺。當然,這麼說也沒有錯,確實 Render 能表現出色彩,不過彩現並無法讓讀者瞭解 Render 的過程。

雖說黑白也是色彩的一種,但講「彩現」或許也給予讀者不必要的純色彩暗示。再來,彩現聽起來與「踩線」相同,因此不普及此詞語的現今社會,當你提到彩現如「跟你說喔,我昨天彩現後整個感覺都不對了...」,可能對方以為你在講「踩線」,馬上感興趣地期待有什麼八卦好聽。如果那時講算繪或算圖就沒有此種困擾,即使對方沒有任何背景,都可以馬上瞭解你所講的,大約就是演算後繪製成影像或把東西算成圖的概念,第一次就上手。

總結以上,個人認為最佳的翻譯是「算繪」,依次是「算圖」,「彩現」,最後是最好別用的「渲染」。

如果真要用一個字眼來涵蓋所有的 render 可能含義,那麼我會建議使用「演繹」,可以表達出「根據前面配置好的東西,推演而出的呈現結果」這樣的感覺;或是「演示」,但演示這個詞語意上大有演戲、示範的成份在,而且又與掩飾同音,可能較不適合。 

在網頁瀏覽器中,Rendering Engine,一般稱為「繪製引擎」(參見 2010 年 Mozilla 社群整理的電腦與資訊科技詞彙表格)。至於 Renderer,可以直接稱為「算繪器」,或是「演繹器」。

參考資料

Wikipedia 條目:http://en.wikipedia.org/wiki/Rendering_%28computer_graphics%29
Oxford dictionaries:http://www.oxforddictionaries.com/definition/english/render

留言

  1. I care. 這對我這個Final Cut新手而言是很重要的入門好文,世界上需要多一些像你一樣有這種打破砂鍋問到底但又不曲高和寡的人,謝謝你

    回覆刪除
  2. 本人覺得用"渲染"反而比較適切,理由有三(臨想有三,但應不止):

    1、國畫(或水墨畫)早期的內涵是為表達作者內心的意境而不純為了寫實

    2、"水分在紙張上擴展墨跡或顏色的技法",而技法(包含水量、筆法、毛細現象等交互作用)本身就是一種程序

    3、承2,該技法之目的是使墨跡或顏料在紙上自行擴散達到作者想要的效果,而這擴散的過程没有具體形象且作者也没有直接控制。由於"渲染"的過程没有具體的形象且發起者也没有直接控制,故"渲染"在用音樂、文章、宣傳、繪圖或音效運算上都很適切(反證:有渲染未見得會達到預期效果,原因很多,其中可能是因中間介質交互作用或程式運算不如預期)

    故當初使用"渲染"一詞作為中譯必有其內涵,非僅是原詞的用途直譯。

    回覆刪除
    回覆
    1. 我不接受後人自行演繹的「有其內涵」,因為用同樣邏輯個人認為拿「演繹」當作 render 的翻譯也「挺有內涵」的

      刪除
    2. 已經習慣 render 作渲染的人,當然會覺得渲染就是 render。這是因為大腦已經帶著有色的濾鏡去解讀,即以先入為主的觀點作後設詮釋。

      其實有個方法很簡單,輕鬆能看出到底是不是受到自己的既有觀點影響。就是去看漢語的渲染一詞意思,到底能不能直接對應到 render,兩者直接替換。

      實際上,這還真的不行,所以後來的解釋都是人為刻意為之的後設解釋。

      我這裡的翻譯討論,是以「一般大眾對渲染意義的瞭解」去探討適不適合作 render 翻譯的,而我同時也認為這個角度才是翻譯者該看的角度。

      刪除
    3. 真要講渲染的意境,lighting在做的事情還比較像用技法(打燈技巧)在表達作者想要的效果或氣氛,render完全就是一個苛求精確跟邏輯的領域,每天都有一堆完全沒想到的錯誤要嚴謹的抓出來,或著把針對一堆算不完的shot,設計一套有效率的系統趕上deadlines。你不能因為lighting跟render常常在預算有限的條件下,總是被合併成同一個人做,就推論說render很像在渲染

      刪除
  3. 渲染真的難聽 但我主要是想說
    台灣人講即時比較好也比較好懂 實時是對岸說法 我覺得很難聽...

    回覆刪除
  4. 強大的 Unity 遊戲引擎,都已經將 render 譯為渲染
    google 一下 "unity render",發現「約有 1,620,000 項結果」

    回覆刪除
    回覆
    1. 錯的翻譯不會因為數量多就變成正確的

      刪除
  5. 從事文字工作每次遇到render都會再次找你這篇文章出來檢討自己的用字,面對不同context都必須小心處理這個字,謝謝。

    回覆刪除
    回覆
    1. 本篇文章能夠幫助到您真是太好了!我寫下本文是為了記錄自己在思考 render 翻譯時的心路歷程,並順帶整理一下當時較常見的翻譯。能因而幫助任何人對於翻譯更加用心,或更願意推敲作者原文詞語的脈絡,那真是非常值得開心的事!:)

      刪除
  6. 在想如何翻譯 html rendering 時,看到這個文章。感謝。現在web browser把html 畫成網頁也用到了Render (轉譯,演繹) 再做 Paint(繪製), 不只是在3D才用到。

    Google 技術文件的翻譯還不錯:
    Render-tree Construction, Layout, and Paint
    正體中文: 轉譯樹狀結構的建構、版面配置和繪製
    對比簡中的: 渲染树构建、布局及绘制

    回覆刪除
  7. 感謝您的文章。小弟現在參與 JupyterLab 的翻譯工程中,想請問類似像 .. to render Markdown 或 ... to render HTML 的狀況又要怎麼翻比較好呢?感覺翻成算繪似乎怪怪的,因為沒有繪圖的成分在內...還是要表意翻成「以 Markdown 格式顯示」之類的句子比較好呢?

    回覆刪除
    回覆
    1. 可以考慮採用泛用語「演繹」或「轉譯」,或是如你所說的意譯也行。

      刪除
  8. 那就演繪啊!經過電腦演算所繪出來的圖。或是電腦運算演譯出來的圖。
    我就是看不懂新聞所寫的『渲染圖』是什麼才找過來的。wiki寫的看不懂,你的我才明白。

    回覆刪除
  9. 渲染真的難懂,
    不就是3d模擬圖嗎

    回覆刪除
  10. 真的是很有幫助又有趣的文章!非常感謝作者!!

    回覆刪除

張貼留言

這個網誌中的熱門文章

Configuratin 組態, Layout 配置, Allocation 分配, Configure 組態設定/調整某組態, Profile (特性/個人)設定檔/個人檔案/色彩描述檔, Setting 設定

直行橫列,以及 line (列/行), column (欄), row (列)