【Unity/C#】DictionaryでCapacityを指定して初期化する場合の速度比較
- 2024.11.15
- C#, Dictionary, Unity, 開発
Dictionaryを初期化する際にCapacityを指定しておくことで、容量変更の処理が呼ばれる回数が減らせることから処理時間が短くなります。というのを自分の環境で試してみました。こういう実験は楽しいですね(ご満悦)
あなたのゲームをいち早く完成させるための研究所
Dictionaryを初期化する際にCapacityを指定しておくことで、容量変更の処理が呼ばれる回数が減らせることから処理時間が短くなります。というのを自分の環境で試してみました。こういう実験は楽しいですね(ご満悦)
C#のDictionaryで値を追加・取得する際にTry系メソッドを使うか、ContainsKeyを使って存在確認をしてからAddや取得を行うか、といった部分を比較を行っています。実際にコードを書いて比較すると納得して使いやすくなりますね(ご満悦)
独学でプログラミングの技術を習得するか、人に教わって技術を習得するか、これから学び始める人にとっては悩むポイントかと思います。この記事では人から教わる観点でメリットを考えていきます。
2022年の10月、Apple社によるApp価格およびApp内課金の価格改定が行われました。この時の各アプリの対応についてまとめているので、次回価格改定が発生した場合のヒントになれば幸いです。
オブジェクト指向プログラミングの本を読んでいると、最初の頃の章でカプセル化とか隠蔽が出てきます。のっけから初心者の心理的なハードルを上げる言葉が並べられて当時は辛かったのですが、あの頃の気持ちを思い出しつつ自分の言葉でまとめようと頑張った記事がこちらになります。ご査収のほどよろしくお願いします。
自分を責めることでメンタル的に追い込んでしまい、ひいてはゲーム開発自体を諦めてしまうのが一番もったいないことです。あなたが思い描いた世界を表現できるのはあなたをおいて他にはいないので、その世界を人に伝えるためには自分を労ることも大切です。
新しい技術を学ぶのは現状を変えることに繋がり、現状維持バイアスが変わることに対する抵抗感を生んでいます。変わることへの恐怖は多くの人が感じることなので、自分だけが能力や資質が足りないなんて思う必要はありません。追い詰めると逆にやりたくなくなるので、気楽に構えているくらいでちょうど良いんです。
「みつを」とつけるかどうか迷ってとどまったタイトルがこちらになります。技術を身に付けるなら手を動かすことが一番の近道です。当たり前のようでいて、知識だけで終わる人も結構多いんですよね。
ゲームシステムを作る作業は目に見えて進捗が分かるので非常に楽しいフェーズです。しかし、この後に待っているブラッシュアップの作業やテストの作業ではシステム作りに比べると「進んでいる感」がなくてモチベーションが下がってしまうことも。そんな時は「あること」を知っておくのが大切です。
小説を書く人の間では「書いたものは一晩寝かせる」という言葉があります。客観的な視点で推敲することの大切さを説いたものですが、これはゲーム開発にも当てはまります。ゲームはシステムだけではなく人間の感覚も大事なので、ニュートラルな視点でプレイしてみましょう。
ゲーム開発に大切なのは技術……ではなく、遊んでくれるユーザーのことを理解することです。技術はユーザーのために使うものなので、まずはユーザーのことをよーく考えてみましょう。
プログラマ界隈で言われる格言として、「プログラムは思った通りには動かない。書いた通りに動くのだ」(詠み人知らず)というものがあります。これ、あるあるなんですよね。みんな感じていると思うだけでも気が楽になると思います。
「全行」というとちょっと盛りすぎですが、エラー発生時にどうしても手掛かりが見つからない場合はスタイリッシュに解決することを諦めて、全ての変数の中身を表示することで解決していきましょう。解決方法がかっこ良くするのではなく、問題を解決することがかっこいいのですから。
人間の集中力というものは脆いもので、ちょっとしたことですぐに集中が途切れてしまいます。ゲーム開発ではPCを使って作業をしますが、そのPCの画面に作業外の情報が映っているだけでも集中力が無くなっていくので、ウィンドウを全画面表示にする癖をつけるといい感じです。
ゲームに季節感を盛り込むことで、ゲームが切り離された存在ではなく、ユーザーと地続きであるという感覚が生まれます。ゲーム内のキャラクターも自分と同じようにそれぞれの季節を過ごしているのは親近感にも繋がっていきます。
小説や映画にはストーリーがあります。ゲームにおいても、ほとんどのゲームにストーリーがあるんですよね。なので、小説や映画の構成、作り方を学ぶことによって、ユーザーがより没頭しやすくなるようなストーリーを作ることができます。
「おまえは今まで食ったパンの枚数をおぼえているのか?」とDIOが言っていそうなタイトルの記事。これまでやったゲームの名前、ジャンル、プラットフォームなどを振り返ってみることで、今の自分が作りたいゲームの傾向が見えてきます。また、これからどんな情報を仕入れるべきかの指針も見えます。
普段のお仕事でもやっているPDCAサイクル、ゲーム作りにも活かしちゃいましょう。プロジェクトを振り返ることであなた自身の成長を言葉で認識することができます。それを次に活かしていくと良いゲーム作りができるようになっていきます。
あなたの作ったゲームを友達にテストプレイしてもらうことで、自分だけでは気づかなかった点を教えてもらえます。良い点、悪い点両方を知ることができるので、是非仲の良い(そしてマウントをとってこない)友達にゲームを遊んでもらいましょう。
テストでは想定した動きになっているかどうかを確認しますが、その「想定した動き」は設計が該当します。この記事の中ではテストのフェーズについても簡単に触れているので、IT系に馴染みのない人でも名前が分かるようにしています。