官术网_书友最值得收藏!

Our view of the world

Before we can place objects and geometry into our virtual representation of a 3D world, we need to come up with a way to describe to XNA how we are going to control the viewpoint of the player. In many 2D games, a simple Vector2 value is often enough to cover the requirements of the camera – assuming the 2D game needed a camera at all. The camera viewing a 2D world might only need to know how far across and down the game world the current view should be located. Other aspects of the view, such as the distance from which the player is viewing the action, may be fixed due to the size of the pre-drawn sprites representing the game environment and objects.

In contrast, we need a bit more information to define the camera in a 3D game. The fact that we need a third coordinate (the Z coordinate) should not be surprising; since we have moved from 2D to 3D, it only stands to reason that we need three coordinates to define a point. What may be less obvious, however, is that we also need a way to identify what direction the camera is pointing in. Two cameras in the same position will have very different views if they are pointed in opposite directions.

We will build the Camera class in several stages, adding more detail with each visit to the code file.

主站蜘蛛池模板: 府谷县| 武隆县| 九江县| 尼木县| 昆明市| 衡南县| 五台县| 元朗区| 漾濞| 靖边县| 成武县| 泸西县| 郎溪县| 芷江| 滨州市| 庄河市| 台东县| 五华县| 根河市| 合山市| 邵东县| 登封市| 吐鲁番市| 孟津县| 尚义县| 焦作市| 兴义市| 达拉特旗| 泗洪县| 即墨市| 日喀则市| 利津县| 黄冈市| 余庆县| 讷河市| 简阳市| 太仓市| 曲麻莱县| 温泉县| 萨迦县| 元江|