ゲームを作る上で押さえるポイントやプログラミングについての解説
ゲーム開発に限らず、何かを作っている過程で 「面倒くさい」と愚痴るようなら クリエイターの道は諦めた方がいい。 そもそも創作活動なんてものは面倒くさいことだらけであって、 「人を楽しませたい」「思いついたアイデアを形にしたい」という 意欲と情熱…
サイン・コサインなどの三角関数は ゲーム開発で非常によく使われるが、 3Dゲームの場合は特にコサインが役に立つ。 これはコサインでベクトルの影の長さを求められるからだ。 内積を利用してベクトルの影の長さを求める コサインを使えば直角三角形の底辺の…
ゲーム中に出てくる判定や敵AIの処理では 角度の情報が必要になることが多い。 2Dゲームの場合は回転方向が左右しかないので タンジェントを利用するだけでなんとかなるが、 3Dゲームの場合は横にも縦にも回転できるので ベクトルの内積を利用する必要が出て…
ゲームにはさまざまな武器が登場するが、 銃弾は直線的な軌道として処理することが多い。 現実には弾丸も重力の影響を受けて放物線を描くのだが、 一般的なイメージとして銃の弾が徐々に落下するという印象が薄いし、 そこまで計算して敵に狙いをつけるのは …
Facebookで流れてきたとある動画だが、 これを見てすぐに問題がわかるだろうか。 中央段にある見出しが 上下どちらのイラストのものなのかが パッと判断できないのだ。 特に「Better」は上側のイラストとはピッタリくっついているのに 下側のイラストとはス…
ゲームプログラマーを目指す学生が企業に応募するときは 自作のゲームプログラムを求められることがほとんどだが、 これに加えて筆記試験を受けさせられることがよくある。 最近はWeb試験の一種であるコーディングテストがよく使われていて、 ブラウザ上で直…
C言語やC++系のプログラミングを学び始めると 文字データを入れる変数はchar型だと習うが、 半角文字を1バイト、全角文字を2バイトという 特殊な考え方は「マルチバイト文字」と呼ばれ、 日本語用のShift_JISなど特定の言語だけを想定した設計になっている…
oimo.io 「触って楽しいものが好き」という作者の言葉通り、 さまざまな実験プログラムが展示された Webサイト「oimo.io」がすごく楽しい。 そのひとつひとつから確かな技術力と 見せ方のうまさが伝わってきていちいち感心してしまう。
1991年にゲームセンターに「ストリートファイター2」が登場し、 対戦格闘ゲームの大流行を巻き起こしたが、 当時の私が画面を見て衝撃を受けたのが しっかりとした奥行きを感じるこの地面だ。 今なら3D表示処理で簡単に実現できるが、 当時はスーパーファミ…
受け持っているプログラミング授業の勉強を兼ねて これまでいろいろなソフトを作ってきたが、 スタッフロール(クレジット)は ゲーム本編とは違う世界観が入っても支障がないため、 作り溜めた実験プログラムを活用した思い出がある。 通常はゲームをクリア…
保存したデータを特定の人にしか見せたくない場合は 「暗号化」する必要がある。 インターネット上で扱う個人情報ももちろんだが、 ゲームに同梱されたデータがユーザーに読まれたり改ざんされると 楽しんでプレイする機会を奪うことになるので 暗号化してお…
―――「薔薇はシュラバで生まれる」より どんな創作物にも言えることだが、 質の高いものが作れないからとチャレンジしない人より 不出来なものでもどんどん生み出して 他人に目に触れさせる人の方が遥かに成長が早く、 実際にクオリティも上がっていく。 クリ…
qr.ae 「遠く離れた者同士でオンラインゲームをプレイするときに なぜうまく同期できるのか」という質問に対する回答だが、 これだけでひとつの記事になりそうな 素晴らしくクオリティの高い解説になっている。 ネットワークを経由した情報のやり取りである…
企業では組織全体で成果を上げることが求められるため、 その訓練として、どの学校でも グループワークを行う課題が用意されている。 しかし、いざ学生同士でチームを組んでも 多くの場合うまくいかないものだ。 これは会社員に比べて学生が未熟だからなので…
先日、西暦2000年前後に生まれた学生たちと接しながら 「彼らはスーファミはおろか、 初代プレステすら体験したことないかもなぁ」と想像し、 自分の中では当たり前と思っていた出来事が 実は割と貴重な記憶なのでは、と思った。 そこで、現在に至るゲームの…
目次 1977年~1986年 1986年~1988年 1988年~1990年 1991年~1994年 1995年~1997年 1998年~2005年 2005年~2017年 Xbox360に熱中する日々 2005年、Xboxの後継機として 「Xbox360(エックスボックスさんろくまる)」が発売された。 いよいよインターネット…
目次 1977年~1986年 1986年~1988年 1988年~1990年 1991年~1994年 1995年~1997年 1998年~2005年 2005年~2017年 徐々に広がるインターネット 1990年後半、世の中にインターネットが広まり始めたが、 会社や学校などのビジネス利用を除き、 各家庭では常…
目次 1977年~1986年 1986年~1988年 1988年~1990年 1991年~1994年 1995年~1997年 1998年~2005年 2005年~2017年 ゲーム業界への道を歩み始める 高校3年生となり、進路指導がたびたび行われるようになった。 通っていた高校は割と厳しい学校だったので …
目次 1977年~1986年 1986年~1988年 1988年~1990年 1991年~1994年 1995年~1997年 1998年~2005年 2005年~2017年 対戦格闘ゲームの大流行 家庭用ゲーム機としてスーパーファミコンが広まる中、 ゲームセンターでは対戦格闘ゲームのブームが起きていた。 …
目次 1977年~1986年 1986年~1988年 1988年~1990年 1991年~1994年 1995年~1997年 1998年~2005年 2005年~2017年 ファミコン全盛期 写真:ファミコンのネタ!! バッテリーバックアップが普及したことでセーブ機能が当たり前になり、 ファミコンのゲームは…
目次 1977年~1986年 1986年~1988年 1988年~1990年 1991年~1994年 1995年~1997年 1998年~2005年 2005年~2017年 ディスクシステム登場 ファミコンは子供がいるほとんどの家庭にあるほど人気だったが、 より多くのゲームをプレイできる画期的なシステム…
目次 1977年~1986年 1986年~1988年 1988年~1990年 1991年~1994年 1995年~1997年 1998年~2005年 2005年~2017年 1977年生まれの私にとって 日本のゲーム業界の発展は自分の青春時代とピタリと一致する。 ゲームの思い出を昔懐かしく描いた 「ピコピコ少…
中学校の数学で習う「三平方の定理(ピタゴラスの定理)」は ゲーム開発の中でも使われまくっている。 この理屈がなければあちこちが破綻するほどなので 先日紹介した三角関数以上に重要なものだと思っている。 三平方の定理とは そもそも三平方の定理とは …
どんなゲームにもいろいろな画像が表示されているが、 2Dゲームを作るときには 各画像を表示する順番が重要になってくる。 あとから表示したものの方が上に来るので、 最終的にどの画像が上になるべきなのかを考えて 表示する順番を決める必要がある。 たと…
いろいろなサイトでパスワードを入力する機会があるが、 サイト側ではどのように保存されているのか。 これには「ハッシュ値」という考え方が使われている。 ハッシュ値とは lazesoftware.com ハッシュ値とはある単語をもとに 作り出される一定の長さの英数…
ゲーム画面に表示される情報表示、 たとえば主人公の体力や武器の残弾数のようなもの、 また操作の指示などを「ユーザーインターフェース(UI)」と呼ぶ。 いかにわかりやすいUIにするかがポイントだが、 この「直感的に理解しやすい表現」というのは 実は利…
何度もプレイしたくなるような没入感のあるゲームには たいてい「ハイリスク・ハイリターンの法則」が活きている。 なんらかの危険が増えるものの その分、利益も大きくなるという選択肢が用意されているのだ。 たとえば上記の場所でコインを取りに行こうと…
「三角関数なんて何の役に立つの?」というのは 勉強にウンザリした中高生がよく言うセリフだが、 実はめちゃくちゃに利用価値の高い理屈なので 意識しないだけでそこらじゅうに使われている。 当然、ゲーム作りにおいても大活躍しているので そのあたりを解…
ゲームでの映像表現において 画像の回転処理というのはほぼ必須だが、 昔は画像回転の機能がサポートされていなかった。 しかし吹っ飛ばされるキャラクターや飛び散る破片など 回転を使った方が表現の幅が圧倒的に広がるので、 あらかじめ数度ずつ回転させた…
多くの3Dゲームではコントローラーの右スティックが カメラの向きを操作するものとして使われている。 (パソコンゲームの場合はマウスが使われる) FPSやTPSなど敵を狙うシューティングゲームはもちろん、 マリオなどのアクションゲームでも 周囲を見回すと…