C# 在特定宽度内移动的量

C# 在特定宽度内移动的量,c#,xna,game-physics,C#,Xna,Game Physics,我有一个2.5个单元的轨道。我希望我的车每次都能移动,这样当它从最左到最右行驶时,轨道会被3次移动所覆盖,因此它应该计算出在道路上任何一点的每次移动所到达的X位置 Leftmost end of the track is at -1.45 Righmost is ar 1.05 据我所知,amountofmovement应该是2.5/3如果宽度为2.5的轨道被分成三段,从一端到另一端移动,但是2.5/3将导致0.83,因为我的轨道范围是-1.45到1.05,所以不能在一个特定方向移动 2.5/

我有一个2.5个单元的轨道。我希望我的车每次都能移动,这样当它从最左到最右行驶时,轨道会被3次移动所覆盖,因此它应该计算出在道路上任何一点的每次移动所到达的X位置

Leftmost end of the track is at -1.45
Righmost is ar 1.05
据我所知,
amountofmovement
应该是
2.5/3
如果宽度为2.5的轨道被分成三段,从一端到另一端移动,但是2.5/3将导致0.83,因为我的轨道范围是-1.45到1.05,所以不能在一个特定方向移动

2.5/10是我通过hit和try找到的,但为了更好地理解它,这个概念到底应该是什么? 这是我的密码:

amountofmovement = 2.5/10;
这导致移动量=0.25

this.transform.position = new Vector3 (this.transform.position.x - amountofmovement, this.transform.position.y, this.transform.position.z);

我不能给你一个代码示例,但你所做的是完全正确的。 当您从-1.45开始,将汽车移动三次+0.83,您将达到+1.05。 所以你用三个步骤走了2.5英里

以下是x位置:

x(起点):-1.45

x(第一步后):-0.62

x(第二步后):0.21

x(第三步/完成后):1.05


(所有值都是四舍五入的,所以请自己计算)

我不能给你一个代码示例,但你所做的是完全正确的。 当您从-1.45开始,将汽车移动三次+0.83,您将达到+1.05。 所以你用三个步骤走了2.5英里

以下是x位置:

x(起点):-1.45

x(第一步后):-0.62

x(第二步后):0.21

x(第三步/完成后):1.05


(所有数值均四舍五入,请自行计算)

能否提供更多详细信息?例如,什么适用于2.5/8?这辆车移动了三次吗?@Bio42:更新了,请检查你没有在何时何地更新位置。我猜,它只是更新了几次(只要按下一个键?),最终总结为第三次。如果您向我们提供您项目的当前状态,可能会有所帮助。问题是否持续存在?您能提供更多详细信息吗?例如,什么适用于2.5/8?这辆车移动了三次吗?@Bio42:更新了,请检查你没有在何时何地更新位置。我猜,它只是更新了几次(只要按下一个键?),最终总结为第三次局部更新。如果您向我们提供项目的当前状态,可能会有所帮助,问题是否持续存在?