《紀念碑谷》(Monument Valley) 系列遊戲的空間結構是如何設計的?

這個遊戲有著像埃舍爾的畫一樣有著空間結構的矛盾,如果是2D遊戲,艾達可以行走的路線、建築結構變化的過程是如何繪製的?如果是3D遊戲,那麼如何對這種違背物理定律的矛盾空間進行建模?以前有一個叫「無限迴廊」的遊戲和他類似,這種遊戲的空間是如何實現的?


補充 USTWO 提供的一個 Behind the Scenes 視頻 ? http://vimeo.com/89525141

via Monument Valley: Most Beautiful iOS Game Available Now


很有意思的一個問題,吃晚飯的時候看到,就忍不住技癢寫了個小demo。

https://dl.dropboxusercontent.com/u/27907965/games/MonumentValleyDemo/demo.html

demo裡面我用的是2d的方法:

人物行走的路線和背景是分開的。

也就是說,背景如何荒謬,都不會影響到路線

——一般遊戲都是這樣做的,而關鍵之處就在於,

路線和背景的改變需要配合得天衣無縫,造成一種「悖論式」的錯覺。

demo中「悖論式」的背景,其實是由三張圖片組成的,

在圖一中可以看到,「悖論」主體中間有一條細微的分割線,沒錯,是兩張圖片Upper和Lower組合而成的。這樣,Moving Cube就可以插到兩者中間,形成空間感。

1.在沒有觸發世界改變結構的時候,可行走路徑是圖中的白色部分。

2.觸發世界改變之後,就更新路徑。

3.配合上改變了的建築結構,例如位置變化、渲染順序等等,就形成了所謂的空間的悖論。

但是根據《紀念碑谷》的遊戲視頻,

它有許多的方塊旋轉、升起、場景顛倒等等的動畫,應該是3d遊戲無疑。

只是它將遊戲的視角設為isometric而不是perspective,也就是沒有「遠近」

——因為我們知道在真實的三維世界中是不可能存在這種「彭羅斯階梯」的 [1]。

這樣的話,上面提到的方法就可以運用了。

perspective鏡頭是這樣的

isometric鏡頭是這樣的

當然,上面的方案離《紀念碑谷》達到的高度,還差得很遠。

--------------Update 1---------------

demo小修改,完全利用左鍵進行。

--------------Update 2---------------

增加3d實現方案

參考資料:

[1] http://zh.wikipedia.org/wiki/%E5%BD%AD%E7%BD%97%E6%96%AF%E9%98%B6%E6%A2%AF


不是業內人士(雖然很想入行),也沒有真正做過一款遊戲,但感覺這個問題挺有意思的,試著說說自己的推測和思路吧,求各位指教。

首先我設想如果我要做一個單獨的這樣的關卡,可能會用什麼方式來實現這個效果。最直接的恐怕就是用類似portal的傳送的方式了,也就是說實際的三維空間並沒有改變,只是把人物用「傳送門」傳送到了相應的「看起來連在一起」的格子而已。也就是這樣:

所以說,要實現這個效果,只要在特定的兩個格子之間設定一個規則:當畫面轉動到某個角度時,A和B這兩個格子之間的傳送門變為可用,就行了。在此基礎上去計算路徑的話,應該就沒問題了。

但是,雖然紀念碑谷中能旋轉的角度只有四個,但那麼多關卡,如果一對對格子來設定傳送規則的話也太麻煩了。所以這肯定有一個通用的規則才對。

於是,經過對地鐵站台地磚的一番研究後,我把格子放到坐標系中,從最簡單的情況考慮,就得出了下面這個最基礎的坐標圖:

灰色是一個柱子,橙色的兩個格子分別是處於第二層和第三層。對應的藍色是從柱子上這兩個橙色格子能夠走到的格子。(只能向後方走,因為前方這兩個格子會被柱子的側面擋住)

第二層的(1 , 1 , 2)格子能走到的是第一層的(2 , 3 , 1)和(3 , 2 , 1);

第三層的(1 , 1 , 3)格子能走到的是第一層的(3 , 4 , 1)和(4 , 3 , 1)以及第二層的(2 , 3 , 2)和(3 , 2 , 2)

於是歸納一下,容易得出這麼一個公式A:

當角色處于格子(x , y , z)時,它向後方兩個方向能走到的格子分別是(x+n , y+n+1 , z-n)和(x+n+1 , y+n , z-n)。(n &>= 0)

然後我很驚喜地發現當n = 0的時候就正好是在同一層走動的情況,於是我們目前就有了一個挺不錯的「萬能移動公式」了。

不過目前這個公式還只能向後面的兩個方向走,於是我們把公式整理一下,把xyz定在後方的格子上,把公式反一反,就得到了向前走的公式B:

當角色處于格子(x , y , z)時,它向前方兩個方向能走到的格子分別是(x-n , y-n-1 , z+n)和(x-n-1 , y-n , z+n)。 (n &>= 0)

同樣地,當n = 0的時候正好是同一層走動的情況。

於是,現在我們就湊齊一套在同一個視覺角度下角色在方塊的正上方走動時的「萬能移動公式」了!(撒花)

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

後排的小明:「但是我們的艾達可是能夠無視地心引力走在側面的格子上的吧?而且轉動視角之後xyz可就又不一樣了吧?」

「。。。內啥,這個就當做今天的課後作業了,下課!小明你放學留下來憋走!」

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

咳咳。。轉動視角和側面方向的格子主要是xyz軸的轉換問題,但基本的道理應該是相近的,我就不(lan)再(de)贅(ji)述(suan)了。

沒做過遊戲開發,僅憑腦洞寫了這麼多,不知道有沒有硬傷和圖樣圖森破的地方,求打臉求指教~


主人公的世界是2維的,我們只是3維的旁觀者。


轉自果殼網,侵刪。

作者:Ent

編輯:姜Zn

說起幾何元素,很多人都會覺得這太枯燥乏味。是的,學生時代對數學的恐懼令人難以忘懷,然而當你從另一個角度——遊戲——去觀察幾何甚至數學時,你會發現大有不同,《紀念碑谷》就是一個很好的例子。

你可以從《紀念碑谷》中看到很多美妙的幾何圖形,會讓你發現原來富有規則的線條也是那麼的令人著迷。

《紀念碑谷 2》的開場,和1代完全一樣:一個看似S形的立體結構,旋轉一下就突然變成了W形,讓主人公得以順利抵達目的地。

《紀念碑谷》與《紀念碑谷 2》遊戲第一章對比,圖片截取自遊戲

這個作為教學關的謎題極為簡單,恐怕大部分人都不會多看它兩眼。但是恰恰是這個簡單的開頭裡,隱藏了《紀念碑谷》全部謎題的核心。

讓我們添加幾條輔助線:

可以看到,它本質上就是這樣一個圖案:

彭羅斯三角,圖片來自網路

它被稱為彭羅斯三角,是所有不可能圖形中最基礎、最著名的一個。

彭羅斯三角被很多人獨立發現過,最早的也許是1934年18歲的瑞典學生奧斯卡·路特斯瓦德的課堂塗鴉(後來他成為了著名藝術家)。但是論得名,還是得歸於1956年數學家羅傑·彭羅斯。在看到了M.C.埃舍爾的作品《樓梯房間》(1951)之後,他和他的父親一起寫了一篇論文,分析了這種視錯覺,提煉出彭羅斯三角和彭羅斯樓梯等幾個基本形態,還把這篇論文寄回給了埃舍爾:

反過來埃舍爾受此啟發創作出了最有名的不可能作品:《瀑布》(1961)。

埃舍爾《瀑布》(Waterfall, 1961),圖片來源:http://www.mcescher.com/

這個瀑布的本質就是兩個彭羅斯三角疊加,它也被製作者偷偷藏在了《紀念碑谷 2》裡面。

一個無法解決的矛盾

幾十年來數學家、心理學家和藝術家創造出了數不清的視錯覺現象,但是不可能圖形始終在裡面獨樹一幟。大腦在正常情況下會想方設法消滅矛盾,可面對它的時候,卻似乎放棄了治療。

我們熟悉的視錯覺很多是這樣的:

裙子是藍黑還是白金?

對,這就是著名的白金藍黑裙子問題。有些人看成白金,有些人看成藍黑,雙方各執己見不肯退讓。雖然經過努力或者外界幫助,你也可以改變自己的觀點,但是你不會一半白金一半藍黑,不會自相矛盾。

彭羅斯三角就不一樣了。不管怎麼看,它都是矛盾的、不可能的。

這個矛盾的本質說來簡單:因為它發生在不同的層級上。分開來看,三角形的三個角,每一個都完全正常,毫無問題:

只有當合起來的時候我們才會意識到,這個圖形在三維空間里是無法成立的。這一矛盾發生在局部和整體兩個層級之間,也正因此我們難以直觀地感受到這個矛盾並拒絕它。

但其實消除這個矛盾明明很簡單。只要我們把它看成一個平面圖形,是三個不對稱空心V形拼接而成,一切就迎刃而解。畢竟,它本來就是紙上或者屏幕上的一個平面圖形啊!

不行。意志力稍微放鬆一點,它就會掉回去又變成一個自相矛盾的立體。我們似乎就是有一種把二維線條看成三維物體的衝動,哪怕它會帶來矛盾也不在乎。

三維幻象

格式塔心理學提出過一個「儉省原則」:當我們看到一個形狀的時候,我們會盡量用「最簡單」的方式來理解它。比如這樣的一個圖,幾乎所有人都會認為這是三個圓和兩個三角形堆在一起,而不是認為這是三條折線和三個奇怪的扇形:

這個現象在三維的時候更加明顯,只要有辦法能把複雜二維圖像理解為單一的三維實體,我們幾乎肯定會撲過去,哪怕這個三維物體根本就講不通:

這個現象其實倒也不難理解。畢竟,自然界里一切都是三維的,罕有純平面的圖形;但是任何東西在視網膜上的成像都是二維。演化史讓我們早就習慣了從二維圖像里讀出三維的能力,甚至形成了一套約定俗稱的「三維信號」;而那些偉大的不可能作品,都充分利用了這些信號。

但是《紀念碑谷》的設計和埃舍爾又有一點不同。在這裡,大部分的不可能圖形不是靜態,而是動態展示的。

運動中的不可能

彭羅斯三角的不可能屬性來自空間上的並列:每一個拐角都是正常的,合在一起就產生了矛盾。《紀念碑谷》的關卡卻把它改變成了時間序列:謎題本身經常沒有矛盾,矛盾產生在謎題的兩種狀態之間。

譬如開場的彭羅斯三角謎題中,兩個不同狀態下的幾何體都是可能的,是切換的行為讓它成為不可能——這使得《紀念碑谷》的視覺和埃舍爾的作品之間有了明顯的差異。

埃舍爾的許多作品用明確的標記來強化矛盾感。在《瀑布》里,遠處的瀑布水道比較狹窄,磚比較小,兩側並不平行,這都是在用透視法指明距離,讓觀者感受到渠中的水流逐漸流向遠方,卻突然下落到原點。這些繪畫傳統里標準的視覺信號,在《紀念碑谷》里並沒有出現。

相反,《紀念碑谷》沿用的是遊戲傳統的等角投影:在這個投影下,三個坐標軸的比例尺相同,兩兩之間都是120度,完全對稱。因為這種對稱性,遠處的物體並不會更小,所以矛盾感的主要來源也隨之消失。這樣的結果是,《紀念碑谷》中的關鍵不可能屬性往往並不來自靜態圖像本身,而是在運動過程中「突然」出現的。

典型例子如這一關里的米黃色滑塊的兩種狀態:

《紀念碑谷 2》中第三張場景,圖片截取自遊戲。

這兩種狀態單獨出現,都不構成矛盾。但是一旦把它們連接起來,就能看到這個滑塊的軌跡構成了上下兩個不可能圖形。這使得矛盾感集中在了滑動的一瞬間。

此外,《紀念碑谷》也在次要環節保留了一部分靜態不可能。雖然沒有透視法,但依然可以使用遮擋和陰影來實現矛盾,類似於埃舍爾的作品《瞭望台》。《瞭望台》中一個人物手持的不可能立方體,便是這種矛盾最好的案例。

埃舍爾1958年的作品《瞭望台》與《紀念碑谷 2》中第五章最後場景的對比。

但也許最為重要的,還是《紀念碑谷》的主角。1代的故事十分簡單而抽象,2代為之明確賦予了許多寓意,不過歸根結底,最重要的並不是附加的寓意,而是旅程本身。由於每一關的目的無非是從起點抵達終點,這就在關卡中產生了一條無形的線,把所有最重要的不可能屬性串連了起來。充滿矛盾的旅程而依然連續,這種「元矛盾」的感受,才是這個系列最大的魅力。(編輯:姜Zn)


首先,人物的路徑在這個遊戲里是抽象的,也就是說和具體的「位置」無關。請自行搜索「圖論」。

然後,在地形改變(比如兩端路接到一起的時候)更新路徑點及之間的連接,讓人物可以走過去。

論編程難度,無限迴廊更高。


Impossible object

我就貼這個詞條,裡面大量應用了。


埃舍爾代表了非歐幾何時代的空間感知覺,其基本特徵是空間的彎曲,這是有道理的。空間的彎曲使纏繞成為可能,使「有限無界」成為可能。Monument Valley 沒有強大的幾何功底是構建不出來的,幾何之美


剛實現了一下前兩關,先貼一下效果,unity項目在yushroom/MonumentVally-Demo

前面幾關基本就是彭羅斯三角的各種變種,構建彭羅斯三角不難,難點在於正確處理遮擋關係。像第一關起點角色被右邊的體塊遮擋,而這個體塊在實際三維空間中位於角色後面(不能移到前面,因為top面會被中間的旋轉體遮擋),解決方案其實很簡單粗暴——那個位置放一個面(gif中因為相機跑到這個面後面去了,看不到)。第二關的遮擋的難題出現在右邊的浮起來的幾個體塊和中間直角塊,右邊的塊要隨中間直角塊上升而上升,同時還要保持視覺位置不變。


我個人感覺,遊戲背景應該有兩層 ,一層是可視的3D背景層,另一層是無形的路徑邏輯層。當建築旋轉或變形後,路徑層進行更新,重新限制主人公的走向。


在固定的視角觀看錯位的物體,形成的簡單空間關係。

手癢做了一個簡單場景,大概效果


《紀念碑谷》是這麼做出來的!你「造」嗎!

我覺得這篇能基本解決題主的疑問


使用多個立方體進行三維建模—垂直視角做切面—判斷切面上的正方形連接—人物在跨越垂直高度不同但切面相連接的兩個立方體時,將人物由第一個立方體移位至第二個的視角面上。

over。


設計多個3D模型,每兩個3D模型在某個2D上的投影是一樣的。

再設計一個button,選擇不同的2D場景。


感覺完全用2d模擬3d效果更難。

所以我覺得可以3d建模,但是可移動範圍、移動速度是在2d投影上計算的。


我總覺得是這樣的……

比如一個螞蟻在二維的一張紙條上行走,而螞蟻想從紙條的一端A點走到另一端B點,能不能不經過中間的一點C點呢?在二維世界裡是不可能辦到的……但是在三維世界裡只要把紙條弄成一個圓形就可以讓AB兩端連在一起了……

所以遊戲里的艾我覺得是在三維世界裡行走,但是遊戲的設定是處在四維世界裡的……所以空間歪曲了……就會形成三維世界裡的空間錯位感覺……但是在四維世界裡……這可能就是很正常的事情……

OTL 不知道是不是這樣


你就想像角色在2維的前景上沿著特定路線運動,各種建築和活動部件都在背景上實現,背景也是2維的雖然看似三維。就是普通的flash搞定啊。華麗是在作者的思維上。


推薦閱讀:

遊戲策劃新人應該學點什麼?
在遊戲設計和遊戲心理學領域,有哪些較為經典或有啟發性的書?
怪物獵人中的怪獸互相打起來誰會贏?
如何一句話逼瘋遊戲策劃?
如果我這樣做是否能夠成為一名遊戲策劃?

TAG:iOS遊戲 | 遊戲設計 | 遊戲開發 | 遊戲策劃 | 紀念碑谷遊戲|MonumentValley |