• <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>

            天行健 君子當(dāng)自強(qiáng)而不息

            Working with Maps and Levels(12)

            Using Auto Maps

            Your game world is a huge place, and when players start exploring their surroundings,
            you may want to make things easier on them by providing a miniature version
            of your map for their reference. Not just any map mind you—a map that is smart
            enough to know where the player has been and the places he still needs to explore.

            You need to display only those portions of the map that a player has explored.
            Sections never visited do not need to be shown—that is, not until discovered by
            players. In that way, players can look back to where they’ve been and maybe plot
            out their paths to future destinations. This is the magic of auto mapping.

             

            Auto Maps in Action

            One of my favorite games, Phantasy Star Online, by Sega Corp., uses auto mapping
            in a seamless fashion. Check out Figure 17.5, which shows the auto map at work in
            the upper-right corner of the screen.

            In Phantasy Star Online, the main player and other important characters in the
            game are displayed on the auto map as well as small arrows. As the main player
            walks around, the map scrolls to show the area around the player. As the player
            visits new rooms (sections), the rooms are revealed on the auto map.

            This auto-mapping feature are easy to re-create for your own game project.

             

            Big Map, Small Map

            The challenge here is to change your large game level into a small map suitable
            for display in your game. Following snap shows a screen shot of the Mapping example
            program. Notice the map in the upper-right corner of the screen. It uses alpha blending
            (refer to Chapter 6 for more on this topic) to show the game action underneath.

            The easiest way to make a smaller version of the in-game level is to go into your 3-D
            editor and load up the level of the small map that you want to construct.

             

            Loading and Displaying Auto Maps

            Okay, the small auto map is created and waiting to be used. What you need to do at
            this point is load the .X file and query it for the individual meshes contained
            within. Using the Graphics Core’s cMesh object is perfect for loading the mesh.

            Now, you construct an array of vertex buffers—one for each mesh in the auto map.
            You fill each vertex buffer with the triangle face data from each mesh in the cMesh
            object. The trick at this point is that although you are copying the vertex data from
            the mesh to the vertex buffer, the Y-coordinate is tossed out so that the resulting
            vertex buffer mesh is flat, and thus the 2-D look of the auto map.

            To display the loaded map, you just position a camera, set up a viewport to render
            to on the display, and render each vertex buffer. With auto mapping in place, you
            can skip rendering the vertex buffers that represent sections of the map that have
            not been visited by the character.

            Although the concept sounds simple, get a jump on things by looking at some
            working code.

            posted on 2007-12-10 15:11 lovedday 閱讀(221) 評論(0)  編輯 收藏 引用


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            公告

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            隨筆分類(178)

            3D游戲編程相關(guān)鏈接

            搜索

            最新評論

            精品久久久久久久无码| 亚洲av日韩精品久久久久久a| 狠狠色丁香婷婷久久综合 | 久久香综合精品久久伊人| 久久精品九九亚洲精品| 久久精品人人做人人爽97 | 99999久久久久久亚洲| 久久不射电影网| 一本久久a久久精品综合夜夜| 精品国产热久久久福利| 亚洲&#228;v永久无码精品天堂久久| 亚洲欧洲精品成人久久奇米网| 国产成人精品久久| 老司机国内精品久久久久| 久久久99精品一区二区| 久久婷婷人人澡人人爽人人爱 | 久久夜色tv网站| 久久久www免费人成精品| 久久99精品国产| 免费无码国产欧美久久18| 久久久久久综合一区中文字幕 | 中文成人无码精品久久久不卡 | 无码AV中文字幕久久专区| 99久久国产综合精品网成人影院| 久久久久久精品无码人妻| 久久香蕉国产线看观看猫咪?v| 久久国产精品无码一区二区三区| 少妇被又大又粗又爽毛片久久黑人 | 91精品国产色综久久| 日韩AV无码久久一区二区| 无码国内精品久久人妻麻豆按摩| 久久综合综合久久97色| 久久久一本精品99久久精品66| 亚洲&#228;v永久无码精品天堂久久| 丰满少妇人妻久久久久久 | 国产亚洲欧美成人久久片| 亚洲第一极品精品无码久久| 模特私拍国产精品久久| 无码8090精品久久一区| 久久天天躁夜夜躁狠狠躁2022| 老司机午夜网站国内精品久久久久久久久 |