前回までのあらすじで
なんか各方面に穴開けるオブジェクトを作りました
懸念していたRaalTime CSG もだいぶ使いやすくなってました
ボールを落としみる
取り敢えず4色のボールをひたすら落としてみた
RaalTime CSGで作成したオブジェクトは当たり判定がついているので
ボールに”Rigidbody”コンポーネントをくっつければ起動した途端落ちます。
ランダムの色のボールを量産する Enumランダム取得
まずEnumをリスト化する方法です。
色のEnumを作成し、
public enum BallColor
{
blue,
red,
yellow,
green
}
Enumを配列化します。
https://www.sejuku.net/blog/50504
上記ではforeachで回してますがとりあえずリストにして保持します
続いて、Listからランダム取得するList拡張を使用
以下の拡張を3年近く使ってますのでおすすめです
この二つの要素から、Enumをランダム取得し、それをもとに
Resourcesからマテリアルを取得し差し替えます。
//カラー名リスト
var colorList = Enum.GetNames(typeof(GameSetting.Ball.BallColor));
//List化
List<string> stringList = new List<string>();
stringList.AddRange(colorList);
//マテリアル差し替え
GetComponent<MeshRenderer>().material = Resources.Load<Material>("Material/" + stringList.GetAtRandom());
List化の部分はなんかもっと簡単にできそう
Enumを文字列として取得するのはあんまよくないとかいう噂聞きましたが、
僕はゴリゴリやります。
その後…
とりあえず、穴に色を決めまして、この板を動かすことによって、
色に合った穴に入れる的な感じになりそうです。
unity 1week は後1時間で始まりますが、全然終わらないくせに
呑気にブログ書いております照
コメントを残す