質問編集履歴

1

コードの説明の追加、検証の結果の追加

2021/07/18 13:51

投稿

Mr-WoodMan
Mr-WoodMan

スコア2

test CHANGED
File without changes
test CHANGED
@@ -1,14 +1,24 @@
1
+ #概要
2
+
1
3
  UnityでcharacterControllerを使ってFPSのコントローラーを今作っているのですが、ウォールラン中に壁がない方向に飛ぶウォールジャンプの機能がうまくできません。
2
4
 
3
- コードの一番下に書いてある部分がウォールランです。うまく動いてないのでAキー方向だけかいてます
4
-
5
- ifスペスキー認識して条件があったら加速度入れるめのvector3のvelocityXとYに代入して壁からジャンプす感じなのですが、ジャしても、X方向にしか行きません
6
-
7
- 加速度を使うとうまくいかないのですか
8
-
9
-
10
-
11
- ### 今のコード
5
+ #コードの説明
6
+
7
+ Raycast左か右かにウォルランできる壁があるかどうか検知、壁右にる状態でDキー(右移動キー)押すまは、壁が左状態Aキー(左移動キー)を押ウォールラ開始でウォールラン中は重力を与えないようにしてきま
8
+
9
+ その状態でスペースキーを押すと加速度用のvector3のvelocityに値壁のないX方向上のY方向に入れそしてvelocityはMove関数(コードの真ん中らへん)Time.deltatimeをかけてCharacterControlle.Moveで動かのですが実際ジャンプしてもX方向にし動きません。
10
+
11
+
12
+
13
+
14
+
15
+ #検証してことについて
16
+
17
+ 別のスクリプトでDキーを押したら横にCharacterControllerで動く、スペースキーをおしたら上に同じような方法でジャンプする、同じ方法で重力も与えるこの機能のスクリプトをゲームオブジェクトのカプセルにつけてキャラクターコントローラーもつけるこの状態でDを押して移動先にキューブを置いてぶつけるキューブにぶつけてDを押し続けてジャンプすると全く動きません壁キックできないのはこれと一緒の原因何のかなと思いますどう解決したらいいでしょうか?
18
+
19
+
20
+
21
+ # 今のコード
12
22
 
13
23
 
14
24