我正在尝试创建一个动画,展示驾驶帆船的基本知识。这个想法是将有一个船的顶视图与舵柄和方向舵非常明显。我希望学习者能够向一个方向或另一个方向点击并拖动耕耘机,而舵柄在拖动时我希望方向舵和船旋转正确的方向。例如,我希望船离开我将舵柄推向右舷,方向舵将顺时针旋转,船将向左转。船上不需要向前运动,我认为只要船旋转就可以了。任何帮助或资源将不胜感激。
答案 0 :(得分:3)
我认为你真正需要考虑的是建模。创建帆船的非UI表示。构建您的代码,以便移动分蘖(无需鼠标......仅通过模型的界面)会导致您的船模型移动。模型的参与者和属性可能包括:
当然,你进一步深入了解模型的因素会越来越多地改进它的行为。我建议添加单元测试来驱动此行为。停止在任何精细程度上对模型的保真度最有意义。
一旦你有一个好的模型,将它连接到图形资产变得更加简单和直接。例如,您可以使用旋转变换根据模型中显示的角度旋转船只或分蘖图形。帆的角度或移动水动画的速度也是如此。
这种方法允许您设计与船的行为分开的动画。
祝你好运!答案 1 :(得分:0)
嗯 - 只要你知道以编程方式转换displayObjects的基础知识,这不应该太难做到
我可能会这样:
为您的不同元素创建图形。您基本上将控制这些对象的旋转属性,因此需要在旋转点正确设置转换点。
设置完成之后,就像将鼠标按下事件监听器添加到分蘖一样简单,并测试mouseX中的delta变化,直到注册鼠标为止。
在动画循环期间(当鼠标按下时),只需在三个对象上应用不同程度的旋转(基于mouseX delta更改)。 IE:如果向左拖动鼠标,旋转舵柄使其匹配,方向舵朝向相反方向,父母(船)也向左旋转。
这显然是非常简陋的,但应该为你的意图创造一个合理的类比......
希望有所帮助