暇つぶし2chat GAMEDEV - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト896:名前は開発中のものです。 16/02/27 03:40:59.69 v+K17d7D.net >>879 移動+ジャンプの場合、移動すべき方向は、横移動と上移動を合成したベクトルになるよな? 今のソースだと、横移動のベクトルが合成されるのではなく、上書きされている 897:名前は開発中のものです。 16/02/27 16:23:02.61 x8pD4Atx.net >>879 2Dとかやってないのでアレだが 1については>>880のいう通り。unity的なセオリーとしては左右はMovePositionでやる、って感じか? 左右については例えばHorizontalのポジティブネガティブに割り当ててGravityを1とかにして Axisを使えばピタリと止まることもなくなる。 2についてはpubulic Transform childOb;とかで変数をもっておいて そこにインスペクターで子供オブジェクトをD&Dしておく、というのがUnity的なセオリーとはいえる。 名前が確定していればStart内でTransform.Findでもいい。 public float kickPower=0;//移動とジャンプの距離 public LayerMask Check;//接地判定で判定するためのレイヤーを取得 private bool GROUNDCHECK = false; public Transform childObj;//ここに子供をD&D. Rigidbody2D thisRigid; void Start(){ thisRigid=GetComponent<Rigidbody2D>(); childObje=transform.Find("Child");//名前が判っていれば. } void FixedUpdate () {//jump処理 GROUNDCHECK = Physics2D.Linecast(transform.position,childObj, Check); if (GROUNDCHECK&&Input.GetButtonDown("Jump")) { thisRigid.AddForce(Vector2.up * kickPower,ForceMode2D.Impulse); } thisRigid.MovePosition(thisRigid.position+Vector2.right *Input.GetAxis("Horizontal")* kickPower*Time.deltaTime); } 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch