Unityに関連する記事です

始めに作成した「PlayerController」のスクリプトには変数が用意されていません。
そのため現在、Playerの移動速度は一定値です。

そこで今後のために、まずは修飾子のついた変数を用意しましょう。
こちらにアクセスすることでPlayerの移動速度を可変できる状態にすることが目的です。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerController : MonoBehaviour
{
    private float moveSpeed;      // <= 移動速度用の変数を追加

    // Start is called before the first frame update
    void Start()
    {
        moveSpeed = 0.05f;        // <= 移動速度用に、値を代入
        Debug.Log(moveSpeed);     // <= 代入確認用
    }

    // Update is called once per frame
    void Update()
    {    
        // 左矢印が押された時
        if(Input.GetKey(KeyCode.LeftArrow))
        {
                // 左に「3」動かす
                transform.Translate(-moveSpeed, 0, 0);    // <= x の値を -0,05f から -moveSpeedに変更する  
        }
        // 右矢印が押された時
        if(Input.GetKey(KeyCode.RightArrow))
        {
                // 右に「3」動かす
                transform.Translate(moveSpeed, 0, 0);     // <= x の値を -0,05f から moveSpeedに変更する 
        }
    }
}

 この変更により、移動に利用する x の値を 0.05f という固定値から、変数へと変更することができました。
今回は固定値と同じ値をmoveSpeedに代入しています(Debug.Logで確認しています)。
 同じ動きをするか、確認をしてみましょう。

 これにより、Playerの移動に関する x の値は可変化することが可能になりました。
例えば、moveSpeed = 0.1f になれば、現在の移動速度の2倍の速さで移動することになります。

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu



プログラムの基礎学習

コード練習

技術/知識(実装例)

2Dおはじきゲーム(発展編)

2D強制横スクロールアクション(発展編)

3Dダイビングアクション(発展編)

2Dタップシューティング(拡張編)

レースゲーム(抜粋)

2D放置ゲーム(発展編)

3D脱出ゲーム(抜粋)

2Dリアルタイムストラテジー

2Dトップビューアドベンチャー(宴アセット使用)

3Dタップアクション(NavMeshAgent 使用)

2Dトップビューアクション(カエルの為に〜、ボコスカウォーズ風)

3Dトップビューアクション(白猫風)

VideoPlayer イベント連動の実装例

VideoPlayer リスト内からムービー再生の実装例(発展)

AR 画像付きオブジェクト生成の実装例

AR リスト内から生成の実装例(発展)

private



このサイト内の作品はユニティちゃんライセンス条項の元に提供されています。

管理人/副管理人のみ編集できます