使用XNA引擎做3D赛车小游戏..(3)
步骤很简单。。因为我们的屏幕高度显然是有限的,为了模拟汽车不断前进的效果,我们修改道路的偏移,使之不断向下,就有对比效果……
- 首先在Game1类中增加一个float用来设定汽车行进的速度:
-
private float RoadSpeed = 20.0f; //汽车移动的速度
-
- 修改Update方法,在其中加入道路偏移的更新:
-
double elapsed = gameTime.ElapsedGameTime.TotalSeconds; // 两次调用Update()方法的间隔
-
RoadDepth0 -= (float)(RoadSpeed * elapsed); // 计算路面沿z轴正方向移动距离
-
RoadDepth1 -= (float)(RoadSpeed * elapsed);
-
if (RoadDepth0 < -75.0f) //如果公路在坐标Z方向移出窗体
-
{
-
RoadDepth0 = RoadDepth1 + 100.0f; //该段公路应从重新放置到另一端公路的开始位置
-
}
-
if (RoadDepth1 < -75.0f)
-
{
-
RoadDepth1 = RoadDepth0 + 100.0f; //一段公路长度为100
-
}
-
-
具体效果还是自己改下看看哈^^