質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Q&A

0回答

220閲覧

Unity3D モーションの速度をスクリプトを変更したい、fixedUpdate()は3Dの場合いどこで使えばいいのか知りたい

退会済みユーザー

退会済みユーザー

総合スコア0

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

0グッド

0クリップ

投稿2019/03/31 13:04

モーションの速度変更しとうとするとインスペクターのspeedでは値を変更すると速度も変わりますがUnity2Dのようにanim.speed = 10;などとやっても速度が変更されません、どうすればスクリプトで変更できるのでしょうか?
質問ですがfixedUpdate()はUnity3Dの場合いはどのコンポーネントを使うときに使えばいいのでしょうか?
入力関係は毎フレーム必要で即座に反応してもらいたいのでアップデートに記述していますがFixedUpdateは一秒間に呼ばれる回数が決まっていますが
その辺を教えてくれますでしょか?

イメージ説明

C#

1public class UnichanController : MonoBehaviour { 2 private Animator anim; 3 private Transform tr; 4 private Rigidbody rb; 5 public float moveSpeed; 6 float h; 7 float v; 8 9 // Use this for initialization 10 void Start () { 11 rb = GetComponent<Rigidbody>(); 12 anim = GetComponent<Animator>(); 13 14 } 15 16 void FixedUpdate() 17 { 18 19 20 } 21 22 // Update is called once per frame 23 void Update () 24 { 25 float h = Input.GetAxis("Horizontal"); 26 float v = Input.GetAxis("Vertical"); 27 28 if (v != 0) 29 { 30 Debug.Log("up"); 31 anim.SetBool("Run_bool", true); 32 33 34 } 35 else 36 { 37 anim.SetBool("Run_bool", false); 38 // anim.speed = 5; 39 } 40 41 } 42}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

stdio

2019/04/01 00:58

すみません、Unityはそこまで詳しくないので、情報を提供できるかは分かりませんが、 > FixedUpdateは一秒間に呼ばれる回数が決まっていますがその辺を教えてくれますでしょか? その辺はキャラごとに1frameで一回だと思います。つまり60FPSの場合は60回、30FPSの場合は30回ですね。モーションの速度変更を試したいなら、下記を参照してみてはいかがでしょう? https://docs.unity3d.com/ja/current/Manual/TimelineChangingClipPlaySpeed.html
sakura_hana

2019/04/01 09:59

@_Beginner__さん anim.speedを変えれば2D3D関係無く動作すると思います。 スクリプトを見るに、停止時にスピードを変えているようですが「止まっているモーションなので速度が変わっているか分からなかった」ということは無いでしょうか? また、モーションの再生速度とFixedUpdateは関係ありません。(FixedUpdateは物理演算が関係する場合に使います) FixedUpdateについては以前似たような回答(コメント)をしましたが、そこを読んでも分からなかったということでしょうか? https://teratail.com/questions/181158 @stdioさん Updateの場合は1フレームにつき1回ですが、FixedUpdateの場合はフレームレートに関係無く常に決まった値になります。(「ProjectSettings > Time > Fixed Timestep」で指定した秒数毎に呼ばれます)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問