• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            戰魂小筑

            討論群:309800774 知乎關注:http://zhihu.com/people/sunicdavy 開源項目:https://github.com/davyxu

               :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              257 隨筆 :: 0 文章 :: 506 評論 :: 0 Trackbacks

                《洞穴Portal》是一款以HL2引擎制作的FPS游戲,該作與其他FPS在游戲方法上有很大不同,以往的FPS都是以使用各種武器屠殺敵人為主,而《洞穴Portal》在游戲方式上顯得非常聰明,他不追求殺戮的快感,也不追求畫面的華麗。游戲的關鍵在于利用空間傳送,打開空間入口,完成各種迷題。

                本作強調解迷,挑戰玩家們的邏輯思維能力。在游戲中,主角的武器就是一把可以打開通往任意空間入口的傳送槍,傳送槍不但可以打開空間入口,還可以挪動地上的物品攻擊敵人,空間將再也無法束縛你的腳步,能神不知鬼不覺的消滅敵人!

                Valve還宣布,Valve將隨PC版《半條命2:第二章》、PS3和X360版《半條命2》一起推出這款全新的單人游戲。

             

            先來熟悉下Portal游戲怎么玩

            http://v.youku.com/v_show/id_XODk3MTMwOA==.html

             

            現在討論3d實現方法,看圖

            GK}TW)$ESO4C{UDNS(PUBQA

            圖中,圓圈代表玩家,方塊代表2個門,從圓圈發出的直線代表玩家行進方向,重力向下,側向圖

            這個圖表示在地面打開2個門,玩家從一個門進入,進入到另外一個世界

            要實現這個圖,需要建立4個世界

             

            ]DT4$O[HUJ1F04ZS_SMDEYS

            這是更加復雜的例子,注意看左上角,玩家在墻上和地上分別打了洞。從墻上的洞進入,會從地面上出來

            要實現圖,需要建立4個世界

             

             

            ]RVSNZKH19@I89__9KKUENS

            這是一個特例,玩家在世界的平臺上打洞,和在世界邊緣打了個洞。雖然是建立2個世界,但是左邊的世界明顯和右邊的世界不是等大的

             

            其實Portal的原理,我們早在叮當(現在叫多啦A夢)的任意門就實現了,但是打開門的世界與進入前的世界處于2個地方。當在同一個地方開2個洞,就是portal的實現

             

            要實現Port有幾個難題

            1. 怎么進入到另外一個世界

            看到另外一個世界很簡單,通過另外一個Camera渲染出來做成貼圖即可

            但是要能進入,那必須是幾何空間是通透的


             

            2. 到底構建幾個世界?

            其實根據在游戲中的分析與一些資料的透露,建立2個世界即可

             

            3. 切換到另外一個世界時,我(攝像機)不需要更換?

            實際看下來可以是,我進入到另外一個世界,而另外一個世界進入到我的世界

             

            4. 怎樣處理世界遞歸?

            這是個有趣的話題,現實世界也存在這樣的問題,比如說,你用2面鏡子對著,眼睛從當中的一面看另外一面,就會形成視覺遞歸,只不過你不能進入到那個世界而已

            類似于本文開頭的遞歸世界圖片,這個在Portal游戲中是有設置遞歸層級的,應該是受到渲染限制的,因此世界創建的個數應該與遞歸層級有關系。

            posted on 2009-07-16 11:40 戰魂小筑 閱讀(620) 評論(1)  編輯 收藏 引用 所屬分類: 游戲開發技術

            評論

            # re: Portal游戲的實現理論分析 2010-05-02 16:28 rSkip
            在我看來:
            當兩個洞都創建好的時候 就可以通過位置關系求得兩個變換矩陣,只需要創造出通過變換矩陣變換之后的另兩個個自己,在和世界進行交互時同時用三個自己進行判斷。(當然要判斷是否是穿過洞進行交互的)
            我對HLSL并沒有什么了解 不過我還是比較相信利用光線追蹤一類的技術可以實現世界遞歸。如果當前像素顯示的是穿過洞的圖像 就把射線按照變換矩陣變換 繼續向前 直到顯示的不是洞或者當前射線長度達到一定值停止。

            這樣的話:
            1 維護好三個自己的關系 保證一個是真實的自己 另兩個是穿過洞的自己 穿過洞的時候適時刪除舊的 創建新的 在游戲系統方面只需要一層遞歸應該就夠用了
            2 按照上面的說法 1個世界就夠用了
            3 利用光線追蹤一類的技術就可以 在射線穿過洞的時候進行變換
            4 同3  回復  更多評論
              

            国产精品日韩深夜福利久久| 69SEX久久精品国产麻豆| 中文字幕久久欲求不满| 国产精自产拍久久久久久蜜| 久久香蕉一级毛片| 久久人人爽人人爽人人av东京热 | 亚洲成色999久久网站| 国产精品青草久久久久福利99| 大香伊人久久精品一区二区| 人人狠狠综合久久亚洲88| 欧美日韩精品久久久免费观看| 久久九九青青国产精品| 亚洲国产精品无码久久青草| 久久久国产精品网站| 久久人人青草97香蕉| 国产成人久久精品二区三区| 日本强好片久久久久久AAA | 女同久久| 狠狠精品干练久久久无码中文字幕 | 99久久婷婷国产综合精品草原| 国产午夜精品久久久久免费视| 欧美久久久久久精选9999| 国产精品对白刺激久久久| 色婷婷狠狠久久综合五月| 久久免费国产精品一区二区| 久久精品亚洲乱码伦伦中文| 欧美熟妇另类久久久久久不卡| 国内精品久久久久久久亚洲| 久久精品黄AA片一区二区三区| 一本色道久久88综合日韩精品| 91亚洲国产成人久久精品网址| 国产美女久久久| 少妇久久久久久被弄高潮| 亚洲一区精品伊人久久伊人| 欧美激情精品久久久久久久九九九| 91精品婷婷国产综合久久| 亚洲国产精品热久久| 青草影院天堂男人久久| 国产精品无码久久综合网| 狠狠色丁香久久综合婷婷| 国产亚洲美女精品久久久|