重くなるUnity 31 Toolbar,switch 「エクステンド!!5」
今回はツールバーの設定をするのですが、これが色々と出来なくて困っていますね。
とりあえず、どんな処理をするかを書きます。
Script:example
解説
パート1はif#を使ったtoolbarIntの読み取りです。これは説明しなくてもわかりますね。
パート2では新しくswitch#というのを使っています。switch#はある条件に対してそれの答え一つ一つに説明することができるものです。switch(~~)で~~内の条件についての設定をすることを定義します。
そして、case x:というのでそれぞれのケースを設定します。xには数字や真偽を設定できます。また、それ以外の処理をしたいときはdefault:を設定します。
switch#ではif#と違う点が有ります。それは処理の設定です。例えばcase 0:の中にはbreak;というのが有ります。これはこのケースの中から出る。ということを表しています。なので、break;をしなければその次のケースの処理もするということです。だから、
if(Input.GetButton("Start") || Input.GetButton("Begin")){ Start(); }
というのと、
switch(Input.GetButton) case "Start": case "Begin": Start(); break;
と言うのは同じものになります。ただ、Startボタンを押した時だけの処理なども設定できるので、場合に分けてif#とswitch#を使い分けるといいです。
Toolbarは、例えば「オレンジ」を押せばオレンジに代わる、「アップル」を押せばリンゴに変わるという風に使われるようになっています。なので、今回のような一回ずつ内容が変わるものは出来ないようです。(Buttonも同じように入れ替えるようなことは出来ませんでした)
なので、Toolbarは使わず、名前を最初から入力可能にします。(あとで、そういう処理ができるようになったら頑張って変えます)
Script : KplaMeshEditor.cs
で、結局こうなります。
あまり変わらないですね。
今度は、MeshViewerについてやってみたいと思います。