我的足球点球就像比赛一样,我也需要移动移动球。我现在正在使用这个代码:
float moveHorizontal = Input.GetAxis("Horizontal");
float moveVertical = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(moveHorizontal, 0.0f, moveVertical);
rigidbody.AddForce(movement * speed * Time.deltaTime);我如何为移动制造一个移动系统?
另外,还有一些控制球的代码(比如当你通过一条线(就像保龄球),你只能改变它的位置1/10)。但它们是基于这个密码..。游戏脚本是c#..。
发布于 2014-02-23 18:06:18
从使用轴切换到触摸是有点困难的。我推荐阅读有关Touchscript (http://interactivelab.github.io/TouchScript/)和API的一般工作原理。你需要做的是,当玩家接触到屏幕时,你会缓存这个触摸,当他们触摸你时,通过比较他们的第一次触摸和他们当前的位置来测量移动的方向。这样你就可以得到滑动的方向。
像这样的事情可以让你开始:
public void OnTouchBegin( object sender, TouchEventArgs e ){
foreach( TouchPoint point in e.TouchPoints ){
firstTouchPosition = new Vector2( point.Position.x, point.Position.y );
}
}
public void OnTouchContinue( object sender, TouchEventArgs e ){
foreach( var point in e.TouchPoints ){
secondTouchPosition = new Vector2( point.Position.x, point.Position.y );
currentTouchMovement = new Vector2( ( secondTouchPosition.x - firstTouchPosition.x ),
( secondTouchPosition.y - firstTouchPosition.y ));
currentTouchMovement.Normalize( );
}
}
public void OnTouchEnd( object sender, TouchEventArgs e ){
hasTouchEnded = true;
}您需要一些自定义代码来确定与触摸输入对应的X和Y轴方向。此外,要小心屏幕坐标和游戏中的坐标,因为它们有很大的不同。这一开始看起来令人望而生畏,但通过一些工作,我保证这并不是太糟糕!希望这能有所帮助!
https://stackoverflow.com/questions/21956072
复制相似问题