Unityを使った3Dゲームの作り方(かめくめ)ゲーム開発エンジンUnityを使った3Dゲームの制作に参考になる情報を公開しています。コピー2017.10.11今回はC#のDictionaryを使ってみたいと思います。Dictionaryはキーと値をセットで指定し、キーで検索して値を取得する事が出来ます。値だけを入れたい場合はリスト、キーと値のセットはDictionaryという感じですね。リストの場合は順序があり並べ替えも可能ですが、Dictionaryは順序がないので並べ替えが出来ません。今回のサンプルはUnity付属のMonoDevelopを使用して確認しています。スポンサーリンクDictionaryを使ってみる詳しい説明は専門サイトにまかせまして・・・・(^_^;)実際にDictonaryを使ってみましょう。Dictonaryの宣言と生成をしてみます。();↑のようにDictionaryとジェネリックの型を指定します。左側にキーの型、右側に値の型を指定します。インスタンス化する時は宣言の型の並びと合わせます(上のスクリプトの右辺)。右辺で型が決まっている為、暗黙の型指定であるvarを使う事が出来ます。();記述が楽になりますね。Dictionaryの使用サンプルDictionaryを使っていくつかスクリプトを組んでみます。Dictionaryの操作メソッドはほとんどがListと同じです。C#のListをUnity付属のMonoDevelopで使ってみるC#のListをUnity付属のMonoDevelopを使って勉強していきます。gametukurikata.com2017.10.10要素の値を合計するサンプルDictionaryの要素の値を合計するスクリプトを作成します。(sum);}}キーをstring、値をintにしたDictionaryを作り、キーと値をセットしていきます。その後foreach文でdictionary.Keysでキーの数を取得出来るので、それを使って要素数分キーをもとに値を取りだし、sumに足していきます。コンソールには10が表示されます。キーと値の型をintにしたサンプルキーはstring以外の型も指定出来ます。試しにキーと値の型にintを使ったサンプルを作成してみます。[key]);}}}foreach内でキーを取得し、キーとキーで取得した値を出力してます。Dictionaryはユニークなキーを設定する必要がある為、最初にキーを1としてintDictionary[1]に2を入れますが、その後5を入れている為、最終的に最初に入れた2の値は削除されます。値の初期化のサンプルDictionaryの要素を初期化する事も出来ます。[key]);}}}{}を使ってキーと値を記述し、初期値を指定します。今まではstringとintという型を指定してきましたが、他の型も設定する事が出来ます。試しに値の型に自前のクラスの型を指定してみます。attackPower;}}}Dictionaryの値の型にParameterクラスを定義したので、値にParameterクラスのインスタンスを設定する事が出来ます。値を設定する時にParameterクラスをインスタンス化し、Parameterのフィールドを設定しています。Parameterのフィールドをpublicにしているので、charas[key].hpという記述でhpの値を取得出来ます。フィールドは本来privateに設定してアクセサー(SetやGet)を使って取得するか、プロパティを介してアクセスします。おわりにDictionaryを使うとキーと値をセットで使用する事が出来るので、色々用途はありそうですね(パッと思い浮かばないけど・・・・)。並び順が関係なく、キーで値を取得するデータを使いたい時は便利ですね。コピーかめくめちゃんをフォローする7Unityを使った3Dゲームの作り方(かめくめ)Unityを使った3Dゲームの作り方(かめくめ)関連記事UnityでC#の勉強UnityでC#の勉強始めますUnityを使ってC#の勉強をしていきます。プログラミング自体の勉強とUnityで使える勉強をしてタイトルからJavaScriptを消してやろうかと・・・UnityでC#の勉強C#のクラス、フィールド、メソッド、コンストラクタ、プロパティの作成C#のクラスの作成やフィールド、メソッド、コンストラクタ、プロパティについて記述しました。UnityでC#の勉強C#のQueueを使ってみるUnity付属のMonoDevelopを使ってC#のQueueを勉強していきます。UnityでC#の勉強C#のFor文、ForEach文、While文、Do-While文を使ってみるC#のFor文、ForEach文、While文、Do-While文をUnity付属のMonoDevelopで使ってみます。UnityでC#の勉強C#で継承を使ってみるC#で継承を使ってみます。インタフェースや抽象クラスを作成し、それを継承して新たなクラスの作成をします。UnityでC#の勉強C#で変数を使うUnityでゲームを作る時に必要なC#の変数について勉強します。C#のListをUnity付属のMonoDevelopで使ってみるC#のFor文、ForEach文、While文、Do-While文を使ってみるホームUnityでC#の勉強スポンサーリンクサイト内検索が出来ますプロフィール管理人のかめくめちゃんです。(-_-)メールはこちらにお願いします(記事に関する質問は送らないでください、返信は期待しないでください(._.))。kamekumechan@gmail.comいずれはSIRENやバイオハザードみたいなアクションゲームを作りたいと思っています。ゲームシナリオが書けないので面白いゲームはなかなか作れません・・・・。(^_^;)名前の由来はカメが好きだからです。プロフィールになってないな・・・・(-.-)Unityをこれから始める人へこれからUnityを使ってみようという方はUnityを使った3Dゲームの作り方(かめくめ)の歩き方Unityを使った3Dゲームの作り方(かめくめ)で、はじめてUnityの学習をする時の当ブログの記事を読む順番を書きました。機能を積み上げていく形になるので便利かも?gametukurikata.com2019.06.21の記事に記載の順番で見て頂くとUnityの基本的な使い方がわかり、簡単なアクションゲームや、TPSゲームの作成までが出来ます。自作タイピングゲームタイピングゲームを作りました。WebGL形式なのでPCのブラウザで遊べます。以下からプレイ出来ます。FinalTypingUnityを使って作成したローマ字入力のタイピングゲームです。gametukurikata.com2022.01.02お知らせ2023/01/24個人的にUnity2022.2.3f1をインストールしました。2022/10/14UnityのIKを使って足の位置と角度を地面に合わせる機能Unityのゲームでキャラクターの両足が別の高さの地面の上にある時にそれぞれの足をそれぞれの地面につけるようにする機能を作成しますgametukurikata.com2016.04.11機能を少し修正しました。2020/09/19コメント欄は閉鎖しました。今までコメントを投稿してくださった方はありがとうございました。(^^)/2018/08/07わたくしに出来る事は既に記事にしてあるので、ブログ右上の検索窓を活用してください。(._.)またブログの最初の方の機能を積み上げていく記事に関しての疑問点は当ブログ記事のスクリプトの説明と寄せられた質問への回答Unityを使った3Dゲームの作り方(かめくめ)の機能積み上げ形式の記事のスクリプトの説明と寄せられた記事の機能についての質問への回答を掲載しています。gametukurikata.com2019.08.01Unityを使い始めたばかりの人がつまづきやすい点を解消するUnityを使い始めたばかりの人が結構な確率で陥る不具合や疑問点を解消していきます。基本的にはブログに寄せられた質問への回答という感じです。gametukurikata.com2018.12.04も参照してみてください。小・中学生によるデジタルコンテンツ開発の全国大会ですuycc.unity3d.jp2022年大会の先行エントリーが開始されているようです。当ブログはハイスピードプランです。WordPressの編集画面の動作が早くなった。当ブログはハイスピードプランです。WordPressの編集画面の動作が早くなった。記事の内容に質問がある方へUnityを使った3Dゲームの作り方(かめくめ)の歩き方UnityのJavaScriptとC#を読み替えてどちらでも対応出来るようにするホーム検索トップサイドバータイトルとURLをコピーしました。