• <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 戰魂小筑 閱讀(631) 評論(1)  編輯 收藏 引用 所屬分類: 游戲開發技術

            評論

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

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

            伊人色综合久久天天网| 久久久久综合网久久| 久久久久久精品免费免费自慰| 色婷婷综合久久久久中文字幕| 亚洲精品国产字幕久久不卡| 久久er热视频在这里精品| 久久精品国产精品亚洲下载 | 久久久久99精品成人片欧美| 99久久精品国产麻豆| 中文字幕精品久久| 国产 亚洲 欧美 另类 久久| 午夜欧美精品久久久久久久 | 中文字幕乱码人妻无码久久| 岛国搬运www久久| 国内精品久久久久久99蜜桃 | 国产69精品久久久久99| 狠狠综合久久AV一区二区三区| 精品人妻伦九区久久AAA片69| 久久婷婷激情综合色综合俺也去| 久久精品国产精品亚洲艾草网美妙 | 伊人 久久 精品| 久久99精品国产麻豆蜜芽| 69久久夜色精品国产69| 77777亚洲午夜久久多喷| 色婷婷久久久SWAG精品| 久久av免费天堂小草播放| 久久亚洲高清观看| 久久中文娱乐网| 国产精品永久久久久久久久久 | 色悠久久久久久久综合网 | 天天爽天天狠久久久综合麻豆 | 婷婷久久综合九色综合98| 久久ZYZ资源站无码中文动漫| 亚洲午夜久久久影院伊人| 久久国产劲爆AV内射—百度| 欧美久久久久久| 伊人色综合久久天天人手人婷| 久久人人爽人人爽人人爽| 亚洲国产精品久久电影欧美| 无码AV波多野结衣久久| 色88久久久久高潮综合影院|