Windows11の教科書

ウィンドウズ11やスマホで困ったことを調べたブログ

【Unity】その他の便利関数 [入力・ファイル管理]

Unityで基本の関数の覚え書きです。C#用です。

Unity便利関数

Unityになれるためのごくごく基本的な関数の紹介。

 

入力

いろんなトリガーを使う場合には「Event Trigger」

マウス入力の取得

「Input.GetMouseButtonDown」で取得。

void Update()
    {
        if (Input.GetMouseButtonDown(0))
            Debug.Log("左ボタン");
 
    }

 

キー入力

キー入力を取得。

WASDキーでの移動はよく使います。

 if (Input.GetKey(KeyCode.Return))
            Debug.Log("リターンキー");

 if (Input.GetKey(KeyCode.W))
            Debug.Log("Wキー");

 

 

時間差処理

「invoke」関数を使うと、一定時間後に処理を実行させることができます。

void Start () {
        Invoke("doTest", 1.0f);
 }
 
 void doTest() {
        Debug.Log("Now Testing.");
}

 

 

 

ファイル管理

シーンの切り替え

シーンはアセット上に作成できます。

ダブルクリックでそれぞれのシーンが開くので、編集できます。

 

シーンができたら、ファイル>ビルド設定をひらいて、あらかじめ「シーンを追加」しておきます。

 

スクリプトでは「using UnityEngine.SceneManagement;」を宣言してから使います。

あとはscene2へ移動する場合、以下のように書きます。

SceneManager.LoadScene ("scene2");

 

スクリプト自体は簡単ですが、ビルド設定のひと手間がちょっと面倒です。

 

ファイルのロード

「using System.IO;」を宣言してから使用します。

「Application.persistentDataPath」はアプリのパスを取得する関数。

「StreamReader」を使って読み込みます。

string path = Application.persistentDataPath + "data.txt";
using (var fs = new StreamReader(path, System.Text.Encoding.GetEncoding("UTF-8")))
 {
            string result = fs.ReadToEnd();
            Debug.Log(result);
 }

 

ファイルの保存

「using System.IO;」を宣言してから使用します。

「StreamReader」を使って書き込みます。

string path = "C:/_work/data.txt";

string sData="任意の文字列";

 bool isAppend = false;//追記の場合true
using (var fs = new StreamWriter(path, isAppend, System.Text.Encoding.GetEncoding("UTF-8")))
        {
            fs.Write(sData);
        }

 

 

数学

ランダム

int rnd = Random.Range(1, 10);//これで1~9の整数値

 

切り捨て:Mathf.Floor

偶数丸め:Mathf.Round

このブログは、ネットや書籍上の情報、個人の体験や感想を中心にまとめたものです。 正確性を期していはいますが、間違い・誤訳等あるかもしれません。 当サイトの情報によって生じたいかなる損失について一切の責任を負わないものとします. あらかじめご了承ください。

利用規約・プライバシーポリシー |〇問い合わせ