本文轉載自公眾號“環球科學”(id:huanqiukexue)
3D水管螢幕保護程式丨3d pipes
你還記得小時候電腦上的螢幕保護程式嗎?它們有的是一個水管在無限延伸,有的是五顏六色的光斑在螢幕上躍動,有的則是在一個廣闊的迷宮中漫遊。我小時候經常盯著這些動畫出神——甚至有時候,探索這些屏保程式比玩電腦遊戲還有意思。
撰文 | 王昱
審校 | 王怡博
程式設計師創造這些螢幕保護程式當然不是為了和電子遊戲爭搶我們的注意力,這些五花八門的動畫,在當時真的有著切實的作用,並且這個作用就寫在它的名字上:為了保護螢幕。
避免燒屏
今天的顯示器都是一個平面,但在2010年之前,市面上不少顯示器都是一塊“大疙瘩”。它們是陰極射線管(CRT)顯示器。CRT顯示器內含一支電子槍,而我們看到的螢幕,實際上是一塊塗有熒光粉的熒光屏。CRT顯示器在工作時,電子槍會發射電子束,而顯示器內的磁場會不停偏轉電子的軌跡,讓它不斷掃描熒光屏上的每一個畫素點。畫素點內的熒光粉在被電子束擊中後會發出熒光,因為電子束的掃描方式不同,不同畫素點發出的熒光不同,最終組成了我們在螢幕上看到的畫面。所以,如果你小時候有用磁鐵靠近過大疙瘩顯示器的話,磁鐵靠近螢幕的地方,CRT顯示器顯示的內容會出現奇怪的色偏。
CRT顯示器在顯示畫面時會逐個掃過畫素丨Laserlicht/wikipedia
不過,熒光粉的特性給CRT顯示器帶來了一個致命的缺點,如果電子束在同一個畫素上照射的時間過長,能量會“燒錄”到熒光粉內部,留下永久的微弱殘影。專門有個詞描述這種現象:“燒屏”。更糟的是,不論在電視上還是電腦上,這種持續顯示同一種內容的情況並不罕見。例如,電視臺的臺標永遠都會顯示在同一個地方,在電腦上,不論開啟的應用程式是什麼,螢幕底部的工作列也總是不會消失。
當然,細心的程式設計師們早就注意到了這個問題,並且早就給出瞭解決方案。1983年,第一款正式的螢幕保護程式發表在了softalk雜誌上。這是一種針對IBM個人電腦的雜誌,在上世紀80年代時,它會提供一些程式設計、遊戲方面的報道,現在已經停刊。當時的讀者在閱讀那一期softalk雜誌時,會看到一個可怕的標題《救救你的螢幕!》(SAVE YOUR MONITOR SCREEN!),在正文裡,文章行文方式也充滿了警告的意味:“此時此刻,你的影片顯示器或IBM單色顯示器可能正身處危險之中。”但相比之下,文章給出的螢幕保護程式本身程式碼就平凡多了。(是的,當時會有人在雜誌上分享程式原始碼。)這是史上第一段螢幕保護程式,它會讓整個螢幕在大約3分鐘後黑屏。
當然,讓螢幕直接顯示全黑,的確是一種保護螢幕的好辦法。因為CRT顯示屏在顯示黑色時,熒光粉受電子束的照射最少,燒屏也能儘可能被緩解。不過,自從有人提出螢幕保護程式的概念以來,各種各樣的螢幕保護程式就開始湧現。反正,只要讓螢幕顯示的內容動起來,很大程度上就能避免燒屏了。那為何不做一些好看,令人喜愛的螢幕保護程式呢?
到1994年,微軟在釋出Windows NT 3.5作業系統時,想宣傳該系統中整合了OpenGL,這是一種可以渲染二維、三維圖形的跨語言、跨平臺的應用程式程式設計介面(API)。儘管這是一個非常重要的技術更新,但卻很難找到直觀的方式向使用者介紹這種功能。而根據去年6月一篇微軟員工釋出的部落格,他們當時就想到,用螢幕保護程式來向使用者展示OpenGL的功能。他們利用OpenGL製出了畫質相對領先的螢幕保護程式,本質上,他們把用OpenGL編寫的螢幕保護程式當成了一種展示OpenGL技術的方式。而且,就算這個螢幕保護程式翻車了,無法修復(當時網際網路還沒有普及,系統自動更新還沒有成為常態),他們也可以簡單調整話術,讓使用者不用這個螢幕保護程式就好了,使用者也不會留下OpenGL不靠譜的印象。
當時微軟在員工內部展開了一項競賽,鼓勵大家用OpenGL製作螢幕保護程式,得票最多的螢幕保護程式會被加入到系統中。不久之後,微軟員工就做出了3D文字、3D迷宮、3D飛行物體和3D管道這些屏保。而在郵件的層層轉發中,微軟營銷團隊的人也看到了這項競賽,發現這些螢幕保護程式非常有市場潛力。於是微軟決定,取消投票,所有這些基於OpenGL的螢幕保護程式都會被加入到微軟最新的系統中。從此,讓無數人著迷的迷宮屏保、管道屏保就此誕生。
3D迷宮螢幕保護程式
可選項
此後,微軟每次在釋出新的系統時,內部都會舉行製作新螢幕保護程式的競賽。直到2009年,Windows XP Service Pack 3釋出時,微軟最後一次舉行了這個競賽。隨著電腦效能的提升,電腦可以快速地從待機、睡眠模式中喚醒——在不使用電腦時,讓電腦直接休眠是更省電的選擇。而在電腦休眠時,自然不會顯示任何內容,螢幕保護程式似乎沒有存在的必要了。
並且,在2010年左右,液晶顯示器(LCD)幾乎已經完全取代了老舊的CRT顯示器,而就算讓液晶顯示器持續顯示相同的內容,也不會有任何燒屏風險。因為液晶顯示器的原理,是背後有一塊白光背光板,每個畫素中的液晶會按需要偏轉,遮擋一部分白光,將剩下顏色的光投射出來。顯示屏在顯示內容時,發光的並不是液晶本身,而是整個背光板在均勻的顯示白光,在這種情況下,螢幕上區域性的燒屏問題自然也不存在了。螢幕保護程式的必要性越來越低了。
當然,今天也不是完全不存在燒屏的問題。隨著技術的發展,OLED顯示器(有機發光二極體)又逐漸多了起來。OLED顯示器也是畫素點自身可以發光,並且,由於發光成分中含有有機物,OLED顯示器也帶上了容易燒屏的缺點。其實小編已經遭遇到了輕微的燒屏問題。小編用的手機是iPhone 14 Pro,它有息屏顯示功能。在接近2年的使用後,在極低亮度、暗色背景下(比如晚上在被窩裡刷手機時),我看到電量圖示已經“燒”到了我的螢幕上。當然,小編完全可以關閉息屏顯示來避免燒屏——不過,當前的燒屏還很輕微,相比之下小編還是更喜歡息屏顯示的功能。
而到今天,大部分螢幕保護程式存在的理由也有些類似,因為總有人喜歡看屏保。比如蘋果會用高質量的航拍影片作為電腦螢幕保護程式。質量有多高呢?這些影片有自然風光、城市風光、水下景觀、甚至還有從國際空間站上航拍攝的地球。影片規格是4K240FPS,全部99個螢幕保護程式加起來,總共可以佔到50GB的硬碟空間。當然,你也可以下載一些桌布軟體,將自己喜歡的自然風光,科幻場景,甚至是自己喜歡的愛豆、二次元老婆設定成屏保。
光螢幕保護程式就能佔用50GB的硬碟空間。
當然,除了自己欣賞,你也可以讓自己的電腦為科學做出貢獻。比如螢幕保護程式Folding at Home,就可以在執行螢幕保護程式時,自動用你的電腦算力計算蛋白質摺疊方式。這相當於你將自己電腦的閒置算力捐給了科學家,為科學進步做出了自己的貢獻。
參考文獻
[1]https://www.popsci.com/technology/windows-screensaver-history/
[2]https://www.popsci.com/diy/should-i-use-a-screensaver/
[3]https://devblogs.microsoft.com/oldnewthing/20240611-00/?p=109881
https://www.theparisreview.org/blog/2017/05/23/salvation-mode/
https://1j01.github.io/pipes/
本文經授權轉載自環球科學(ID:huanqiukexue),如需轉載請聯絡[email protected]。歡迎轉發到朋友圈。