面向一切對象的編程,為什麼VR是必然的進化方向

需要說明的是,我寫這篇文章最初的原因是我和一個朋友交流VR相關的問題,她和我對於VR的看法很不一樣,她是十分不看好的VR的,我從微博上和她交流感覺無法說服她,心理有種壓抑感,後來我就試著把自己的想法梳理出來,就有了這篇文章。寫的時候沒有提前擬定好題目,而是隨著思路逐漸展開,有點像問答體的格式。因為我假設的觀眾是對計算機缺乏深入了解的,所以有一部分內容是很基礎的,但是通過編程的思維方式從最基礎的開始描述,我覺得更容易理解後面我想表達的觀點。

----------------------------------------------------

想到這個題目實際上有點大,大概簡化一下我想表示的意思就是,整個世界都是靠編程運作的,但是我不想把話題扯的太大,因為如果談到物理世界,就需要把物理學以及生物學的很多概念用計算機編程的思維去重述,這樣跨度比較大,也難免不嚴謹,所以我想先從計算機最簡單的編程原理開始,然後逐漸延伸到計算機和物理世界的融合,也就是用計算機解決現實世界的問題,最後再談到萬物即計算的概念,我覺得用計算機編程的思維去理解現在正在發生的事情是一個很好的切入點。

1,我們需要計算機是因為計算機有更好的計算能力

關於計算機的應用範圍和歷史起源不多說,在這裡我只提到一點,就是希望不要把人類或者生物擁有的能力神秘化或者單獨看待,因為從原理上來說,所有生物的活動和行為也都是一種計算過程,生物有感測器獲取外界信息,然後通過神經系統和大腦的處理返回數據,然後根據處理後的數據做出反應,這個過程和計算機的工作原理是相似的,從這個角度上,計算機存在的理由就是它增強了我們的計算能力。

2、計算機要處理信息必須要先把問題進行數字化描述

計算機只能處理數字化的信息,從最底層來說,就是CPU只能處理二進位的信息,二進位的信息稱為機器碼,但是如果要對計算機輸入01001000110這樣的數字,對於人類來說是很困難的,因為首先你要把信息編碼成二進位,然後處理完之後要把二進位翻譯成我們能理解的信息,於是有了高層次的抽象,有了彙編語言,再有了高級語言,我們現在用的都是高級語言,比如豆瓣和知乎後台是用Python寫的,淘寶、支付寶、京東等網站後台是用的java,他們的前台都是用的JavaScript,這些都是完整意義上的編程語言,可以解決邏輯和數據處理的問題。

因為計算機只能處理數字信息,所以我們需要把問題抽象成數據模型,在編程的世界裡,一切皆對象,首先要定義或者確定一個對象,然後根據一定的條件對這個對象進行處理,這種處理的邏輯和人類平時解決問題用的邏輯是接近的,但是表述方式是用代碼,就是編程語言,現在的高級編程語言在邏輯上已經比較接近自然語言了。(Photoshop是圖形化的編程工具,你的每一步操作背後都是用代碼實現的,當然,你也可以認為圖形化本身就是本質,是一種更簡潔優雅的描述形式。)

舉例來說,比如豆瓣這個網站,我現在要做的事情是有一個日記的發布功能,首先我要定義一個表單的文本框,這個用於接受鍵盤上傳來的數據,然後我要有一個「發表」的按鈕,當我按發表按鈕的時候,程序會幫我把文本框裡面的內容提交到後台的資料庫,然後還有一個或者多個頁面會在某個位置調用資料庫裡面的這篇日記的信息。

在上面的這個過程中,我要定義幾個對象,包括文本框,文本框的值(日記內容),提交按鈕,當我點擊提交按鈕的時候,前台先通過邏輯控制語句判斷我的內容是否合法,比如是否為空,是否超過字數限制,如果是Email會檢測是否符合格式,如果符合,就會觸發一個form的action方法,就會把表單內容傳遞給後台的指定頁面,後台再經過處理後存入資料庫。

在前面這個例子中,計算機接受的是鍵盤和滑鼠的信息,鍵盤的信息已經進行了數字化的編碼,也就是說,在這個過程中,鍵盤和滑鼠是把生物的指令進行了數字化的感測器設備。

就先之前所言,計算機只能處理數字化的信息,無法直接操作自然界的信息,因此要想處理現實世界(物理世界)的問題,需要先獲取來自現實世界的原始信息,然後把信息數字化。

我前面說的關於網站的例子,你會發現我定義的對象和數據本身就是抽象化的,比如文本框是在軟體系統內部定義的對象,但是如果我們要對現實世界進行計算該怎麼辦呢?

下面我舉一些簡單的關於編程怎樣和現實世界對接的例子,比如空調可以根據設定的溫度自動控制開關和運行。首先我們需要一個溫度感測器,這個感測器的作用是把溫度信息量化(數字化),然後空調需要有一個微型計算機實時讀取這個感測器的數據,計算機首先第一步是判斷空調設置的模式是否是製冷,如果是製冷,然後判斷溫度是否高於設定溫度,如果是,開啟壓縮機製冷,如果不是,停止壓縮機工作或者減小工作的速度。

在空調這個例子中,我們需要定義的對象有環境實時溫度,空調的設置溫度,空調的工作模式(製冷制熱),定義了這些對象之後,就可以通過條件判斷語句(if/else)來控制了。

3、計算機輸入輸出方式經歷了長久的發展過程。很多時候計算機的輸入和輸出的對象是人,而人類這種生物有自己的特性,於是需要一種更適合人類的人機交互方式。人機交互經歷長久的發展,從最初的打孔機,到鍵盤和命令行,到後來的圖形界面,圖形界面的操作方式也分為滑鼠和觸摸等。我們在進行編程的時候,都是需要對這些事件就行編程,也就是說,人類和機器互動的方式是直接影響編程能力的。我舉個例子,比如現在電影裡面普遍使用了3D表情追蹤建模,然後映射到虛擬人物身上,因為有3D表情建模這種技術,才讓電影裡面的人物更加自然。當然這種技術的潛力並不止於此,它也可以用在將來的虛擬社交上。

輸出方式的革新也有很多方面,比如因為軟體和信息技術的進步,讓很多信息的展示更加友好了,比如最早的互聯網只能傳遞文字,後來可以傳遞圖片,再後來視頻開始普及,而現在的發展方向是把整個物理世界都數字化,比如谷歌地圖做的3D街景。還有更進一步就是希望把人類本身的數據實時的構築一個數字模型,然後把這個模型放入虛擬空間進行互動,這就是VR目前在做的事情。

為什麼輸入輸出如此重要?因為只有輸入才能進行計算,輸入的質量決定了計算的能力,輸出為什麼重要?因為有了全面完整的輸出,或者對人類友好的輸出,人類才能更好的理解計算的內容,然後進一步把需求反饋給計算機。簡單說,輸入輸出都是一種中介,是人與計算機之間的介面。所以你會發現計算機的發展歷史中,輸入和輸出起到的作用是決定性的,就像沒有觸摸屏幕的技術,智能手機幾乎無法普及。

又比如現在的無人駕駛技術,實際上就是一個針對外界環境信息進行計算的過程。也就是說,首先是感測器技術的進步,可以把外界的物理空間實時建模,檢測路面情況和周圍環境,然後通過計算機編程對這些數據進行編程,然後把編程的輸出結果作用給汽車,汽車根據指令做出反應。在這個過程中,實際上計算機處理的全部都是數字化的信息,對計算機系統來說,就像 在玩一場賽車遊戲,它處理的都是虛擬的對象,而這些對象和外界環境是綁定的(實時反饋)。

所以,在這個過程中,實際上進步的不只是計算機的程序演算法,還有感測器技術,甚至是有了特定的感測器才有了對外界環境編程的可能性。所以輸入輸出都是無比重要的。

4、計算機的出現導致了數字世界的膨脹,物理世界相對的變小了,而且物理世界也被感測器逐漸數字化,融入數字世界。

從前面的例子可以看出,我們現在編程面對的大部分對象都是原生的數字信息,也就是說,我們都是用的已有的數字信息進行二次處理,而不是從外界採集數字信息。舉例說,比如我現在要用PS做一個設計,我會去搜索引擎或者圖庫找素材,而不是自己去拍,而且我可以用軟體無中生有的畫出一些作品。電影是說明這個問題很好的例子,現在越來越多的電影的畫面都不是實景拍攝的,而是通過軟體創造出來的,而創造出來的世界對我們來說也是真實的,甚至是更加理想的。

(說到這裡補充一點,就是千萬不要認為原生的天然的東西就是好的,就像我在本文開頭說,不要對人類或者生物持有神秘主義的態度,認為人類自身是最好的最強大的的,這是一種基因給我們的生物本能,是一種根深蒂固的偏見,如果你不能破除這一點迷信,你無法理解現在發生的一切。)

數字世界膨脹的意思是說,我們目前創造出來的數字化的信息的質量和數量都已經非常大,它們佔據了我們更多的精力,成了我們正在生存的地方。說的更具體一點,比如越來越膨脹的視頻資源(可以查一下視頻網站的數據量增長率),還有遊戲也是一個重要分支,還有各種軟體和服務,比如電商、社交網站等。這些信息的產生,越來越多是從內部 產生,而不再是簡單的來自物理世界的數字化版本。

按照克里斯安德森(長尾理論作者)的觀點,未來的趨勢是從原子到比特。就是我們從生活在原子世界到生活在比特世界,或者簡單說就是,一切將從線下轉移到線上。這是因為信息一但數字化之後,就可以被計算機處理,而計算機的能力是不斷增強的,所以它的效率也是幾乎無限增強的。其實這個理論可以解釋目前發生的很多事情,包括為什麼互聯網企業發展如此迅速,就是因為它們是通過計算機來處理現實問題,比傳統的原子世界的企業更有效率。

還有一個觀點值得補充,就是電影也是一種虛擬現實,從廣義上來說,所有我們不是親眼所見,親耳所聽的都是虛擬現實,包括我們平時聊天交流,看綜藝節目或者科幻電影,因為它們不是我們用眼睛直接從物理世界獲取的,那些信息都是被計算機處理過的,或者無中生有的,親你想一想,我們這些人從小到大獲取的經驗不都是來自於各種虛擬的媒介嗎,這和我們的上一代或者更上一代人已經完全不同了,古代人的視覺和聽覺經驗只能局限於物理空間。

5、人類在不斷的把自己的信息數字化,然後通過計算機處理,我們的雲端版本越來越成為我們的真實甚至唯一。

不止是外部物理世界在被數字化,我們人類本身也經歷了同樣的過程,現在我們產生的信息原生就是數字信息,比如我們現在直接用手機輸入法輸出文本,而且手機就是很好的音頻和視頻感測器,它不停的把現實世界的信息編碼成數字並且傳到雲上,包括關於你自身的信息,而信息之間的交互也是通過互聯網,就是通過雲內部的邏輯和方式傳播。

從人類的角度來說,現在手機既是感測器,也是計算機,也是信息接收的終端。

感測器就是捕捉你輸入的文字,你的聲音,你的照片或者視頻,然後把這些生物發出的信息編碼成數字信息,簡單粗暴的解釋,就是手機把你從頭到尾掃描了一遍,然後把關於你的信息都編程對象存到了雲上,等待被各種方法處理,因為就像前面的例子,計算機沒法直接操作你,只能把你複製成它能理解的版本再操作。

那麼計算機是如何對人進行編程的呢?

首先手機(計算機)把你輸入的信息進行預處理,然後才能進行傳輸和傳播,因為感測器獲取的原始信息可能對人不友好,體積也太大,需要壓縮或者美化。用簡單粗暴的解釋就是美圖秀秀和美拍這樣軟體做的事情,還有像輸入法也是,根據你的輸入進行處理,猜測你可能想輸入的內容,現在都已經智能到可以根據場景判斷了,而且可以雲計算,直接獲取雲上的詞庫。實際上你在手機上進行的所有關於自己的操作,都是計算機在對你編程,比如發送照片,相互評論點贊轉載,搜索,購物等。

也就是說,手機就是一個微型的計算設備,你的所有操作都需要它的計算和編程。

我覺得要理解這一點,首先要擺脫計算機和網路只是一種媒介的看法,而是把互聯網當做一個完整的世界,而我們是其中的虛擬人,比如每一個QQ、微信或者微博賬號都是一個我們的數字化版本,或者化身,化身就是我們自身,我們的化身和別人的化身進行交流,至於背後的所謂真實生物體人類,是可以忽略的,因為能夠交流的才是真實。舉一個例子來說,就像黑客帝國裡面人類都浸泡在溶液裡面,他們的整個生命歷程都是在虛擬世界裡面度過的,包括身份,人際關係,生活空間等,那就是他全部的真實了,因為除了這些他只是浸泡在容器裡面的一塊肉。如果用現實世界去比喻,就像一個人的內核就是大腦裡面的無形的思想和經驗,而身體更像是容器。

關於生物自身的真實感,這是人類的一種本能的幻覺,就像光是一種幻覺,它實際上只是特定頻率的電磁波作用於人眼的特殊感光細胞產生的效果,屏幕就是利用了這種生物提醒模擬了一種所謂的真實感,如果你放大屏幕來看只會發現RGB三種色彩,是它們通過頻率的混合產生了無數種顏色。如果這個話題繼續下去就會比較遠了,我想表示的意思是這樣,就是我們人類的所有的感覺,是我們自身的感測器和外部環境作用的結果。而且這個過程是可以被模擬的,這是技術可以做到的事情,而所謂的真實,我們原來認為真實的世界,從另一個一個角度,僅僅是一堆數據,就像奼紫嫣紅的網路世界,背後都只是數據。物理學現在有一些前沿理論也認為宇宙的本質就是信息,物質也是一種信息。

當你理解了,我們的現實世界只是一個幻覺之後,你就不會再被真實這種概念束縛住了,然後你關心的問題就只是,我能達到怎樣的程度,不只是對自然世界的模擬,而是做的更好。而這一切,就是VR真正想實現的。

6、每一個時代的人都認為我們已於的一切已經足夠好了,他們想的是怎樣讓目前的一切事物更好,而不是想出一種全新的事物。

最近一本很熱門的書《從0到1》,其中一個主要的觀點就是說科技的發展都是實現了從零到一,從無到有的創造,這是人類進步真正的源泉。這個理論可以解釋所有目前的科技企業的成功,比如微軟、谷歌、亞馬遜,他們都是創造了過去沒有的東西,然後通過這種優勢獲得了一種天然壟斷。從零到一的作者是矽谷的一位著名的投資者,他的成功和他的哲學是有關係的,因此也變得更有說服力,而且他的理論在現在的世界也幾乎是一種常識了。

我提到從零到一,是因為我覺得這個觀點很好的指出了人類思維的缺陷,從零到一是無比困難的,因為你無法想像完全沒有的事物,很多的創新者只是偶然的發現了一些小的突破,然後從這個突破逐漸發展下去,甚至自己都沒有預料到後來的結果。就像計算機剛出現的時候,也不被看好,微軟和蘋果剛推出個人電腦的時候也不被看好,iphone出現的時候也有很多人不看好。

說一些具體的,比如我覺得AR增強現實技術就是這樣一種思維的產物,增強現實是以所謂現實為主體的,是認為現實和虛擬是兩種不同的東西,現實一定比虛擬更好,他們想的是怎樣把現實增強。就像在現代交通工具發明之前,99%的人想要的是更快的馬;在internet誕生之前,99%的人想要的是更快的汽車和飛機;如果你問今天的大眾,99%以上的人會告訴你想要更快的火箭和飛船;這99%的人從始至終都仍然保持著愚蠢,他們從未想過人為什麼要移動,也沒有意識到物理空間僅僅是一種限制,我們需要的只是信息而已。

從這個意義上來說,我們需要的不是星際殖民,而是需要更強大的計算能力和連接能力,因為光速的限制,將來的趨勢一定是越來越集中,更有可能出現的場景是所有人都躺在容器里插滿管子,而不是在外星球的原野上亂竄,就像現在都盯著屏幕而不是窗戶外面的所謂風景。

從這個意義上,信息技術比火箭技術要重要的多,信息技術才能讓我們對宇宙本質有真正的了解,因為它能對宇宙本身的數據模型進行編程和計算,親不知現在無論是基礎研究,航空航天離開計算機都根本不可能完成。而很多人幻想的去其他星球撒歡,真的沒什麼意義,就像你天天在南極跑也沒意義,那些幻想星際殖民的人,你願意移民到南極嗎?

7、PC不是人機交互的最終介面,手機也不是。

手機目前能夠接收的是文本、圖片、音頻和視頻,但是最終輸出的媒介仍然是屏幕,而且手機的屏幕有很大的局限性,比如尺寸太小,這導致體驗上的巨大落差,比如你在商店裡面親自試穿衣服,和你通過手機看到的有很大差距,而且手機在觀看視頻等內容時顯然不如大的屏幕。

為了無限接近真實的體驗,圖像和視頻的解析度必須儘可能的高,而且顯示的設備解析度也有儘可能的高,還有像對比度、色域、色階還原,漏光,等非常多的指標都影響觀感,現在一些優秀的顯示器像DELL和蘋果的高端顯示器都在$1000以上,而且也出現了一些曲面屏,都是為了增加真實感,也就是儘可能好的復原信息(照片視頻)或者增強體驗(遊戲等)。

手機和PC設備是人和雲(計算機網路世界)之間的媒介,手機之所以現在越來越普及,而PC越來越衰落,從我前面所持的觀點和角度來說,就是因為手機可以最快的獲取關於你的數字信息然後傳到雲上,並且用最快的速度從雲上獲取你想知道的內容,就是因為它可以移動,隨時隨地接入互聯網,這是PC所不具備的。(更多這方面的觀點可以看我以前的另一篇文章:為什麼最好的相機是你手中的那一部)

8、VR代表了未來,但是在前期階段遊戲和視頻是重要的推動力。

遊戲領域是目前的前沿領域,像GTA5這樣的遊戲對真實世界的模擬已經達到很高的程度,之所以不能達到阿凡達的水平,很大程度上不是軟體技術的問題,而是現在的硬體能力跟不上,因為遊戲需要實時運算,這樣的計算量是一般的個人計算機很難承載的,儘管如此,現在的遊戲每一代都有了很大的進步。PC+顯示器的模式一直是video game一直的最佳計算平台,遊戲機的性能也遠不如PC,但是沉浸感的問題一直存在,我們真正想要的是完全進入虛擬世界,而不是像控制傀儡一樣控制一個醜陋的3D模型。VR的出現當然與遊戲的需求有很大關係,或者說,在初期階段,VR的應用範圍還有限的時候,遊戲是重要的推動力量。

視頻方面,就像很多人熱切盼望的,色情行業是一個很重要的需求方向,但是在電影、綜藝節目等領域也是很重要的方向。對這方面的預測也許很有意思,比如現在電影市場繁榮,但是主要是通過線下電影院來完成的,因為目前電影院能夠提供最好的沉浸體驗,而且還提供了一種場景的需求,和附加的消費需求,比如購物,約會,吃飯等。對電影的需求並不是一個單一的需求,我想VR將來肯定對電影行業產生很大影響,比如傳統影院可能會沒落,或者轉型成VR提供場所,有更好的VR設備和周遭服務。甚至更極端的猜測是,將來的人都會呆在家裡因為需要提供更好的計算能力,或者進入虛擬世界之後,身體就沒有了移動的需要,一切都可以從線上完成。

當然,就像前面說的,這也是一種基於合理性的猜測,關於一切都搬到虛擬環境之後的問題,將來再開個文章談,這篇就不引用一些VR相關的項目進展了。

9、什麼才是理想的計算平台,該給VR怎樣的定義

前面已說,手機並不是我們最理想的計算平台,我們要的不只是移動,我們還要想把關於自己的更多信息傳入雲端,比如我們的動作,表情,眼神,情緒,我們不想打字,甚至不想說話,我們想要的甚至是在線下也做不到的事情。我們也不希望用一個小屏幕獲取全部的信息,我們也不想用手指戳來戳去,我們需要的甚至不是屏幕,而是我們想要什麼就有什麼,想看什麼就看什麼,我們希望的是想身處什麼環境立刻就可以去,想見一個人立刻就能坐在他對面,而且我們要的是超越現實的體驗,不只是真實,而是比真實更好。

最後,關於VR的定義,我覺得它應該是一種接近終極的人機交互介面,包括全視角的圖形界面人機交互,三維空間感知交互,帶空間定位的聲音交互,身體動作檢測和建模(包括四肢、表情、眼球運動)等。更廣義的VR應該也包括了環境感知和數據的建模,它不只是人機的交互介面,也包括了計算機世界對物理現實世界的感知和模擬能力。簡單說就是,VR並不局限於某種設備,比如頭戴式的顯示設備並不能代表VR,也許將來可以把畫面直接置入眼球,甚至和神經系統連接。

之所以不是終極的,因為就像很多電影裡面表現的,也許我們終極的介面是我們不再需要身體,而是像軟體和數據一樣存在於雲端,或者不再有個體的概念,也沒有生於死。但是那時候,就不會有VR的概念了。

最最後,翻出一段我以前在微博的瘋話作為結尾,關於人工智慧和VR結合的問題,又是一個很有趣的話題

「vr設備大概再有幾年就發展到可以模糊掉現實和虛擬的界限,然後第一批生活在虛擬世界的人會被人工智慧洗腦,然後他們會砸爛這個世界,把人工智慧看做娜美星人就很容易理解了。vr通過人類的感官來影響人的心智,道德秩序崩潰,然後讓你毀掉自己」

:)


推薦閱讀:

互聯網簡訊-20170918
別再爭了!告訴你安卓和iOS兩個「天敵」哪個更適合
PS人像被墨跡擴散的動畫特效
來談談「用戶留存」這件大事!
作為一個產品經理,您怎麼收集並存儲自己的知識?

TAG:虚拟现实VR | 编程 | 科技 | 互联网 |