2021-10-01から1ヶ月間の記事一覧

擬似3Dダンジョンの作成方法

今回は、Dungeon crawler (3DダンジョンRPG) を擬似的に表現する方法を解説してみます。 今どきのゲームエンジンであれば、標準で3D描画ができてしまうのでここで紹介している方法は必要ないですが、2D描画機能しかない環境の場合はこの手法が有効です。 疑…

テトリスの作り方

1.はじめに ここでは、テトリスの作成方法について説明します。テトリスは、説明するまでもないですが落ちゲーの代名詞ですね。テトリスが出た後の数年間は落ちゲーブームを作り、今や定番のジャンルとなっています。 何が新しかったかというと、下に落下す…

クォータビューの作り方

概要 この記事は斜め上からの視点 Isometric (クォータービュー) の作り方について解説します。 なお Unity で実装する場合は、平行投影にしてカメラを斜め上にするだけで実装できるので、ここで紹介しているような対応は不要となります。 2D描画のみ可能な…

リバーシの作りかた

1.はじめに 今回はリバーシの作り方を解説します。 リバーシは、プログラム初心者でも簡単に作れるわりに、盤面の扱い・CPUの思考ルーチンなどにこだわれば、凝ったプログラムができる、なかなか面白い題材です。 2.盤面の設計 まず、リバーシの盤面の設計を…

敵の移動アルゴリズム

ここでは、ゲーム内で敵をどのように移動させていくのか、といった AI・アルゴリズムについて書いていきます 敵の移動アルゴリズム パックマンの敵のアルゴリズム 今のゲームからするとシンプルですが、当時は大ヒットとなったアーケードゲーム「パックマン…

はじめてのゲームAI

WEB+DB PRESS Vol.68にのっていた記事「はじめてのゲームAI」の記事を自分なりにまとめたメモです。 WEB+DB PRESS Vol.68 作者:名村 卓,三宅 陽一郎,白土 慧,勝間 亮,石田 忠司,牧本 慎平,A-Listers,近藤 宇智朗,はまちや2,mala,じゅんいち☆かとう,並河 祐貴…

ローグライクの定義まとめ

Roguelike (ローグライクゲーム) の定義をまとめてみました。 ローグライクの定義には大きくわけて2つの解釈があります。それは「PDL」と「ベルリン解釈」です。 PDL PDLとは、ローグライクのコアな要素である「Procedual(自動生成)」と「Death(死)」、「Lab…

レベルデザイン概論

レベルデザインとは? レベルデザインとは、ゲームシーンあるいは舞台といった「レベル」を作成することです。 良いレベルデザインにするためには、ゲームの難易度やバランスをよく考え、プレイヤーが進捗感や達成感を得られるような課題や挑戦を配置するこ…

Game A Weekの定義まとめ

Game A Weekとは、一週間で1つゲームを作って、ゲーム開発者の経験値を上げる方法として、オランダのインディー系デベロッパー「Vlambeer」のRami Ismail氏が提唱したものです。 Gamasutra: Rami Ismail's Blog – Game A Week: Getting Experienced At Failu…

48時間でゲームを作る7つのヒント

この記事は、ゲームデザイナーのカイル・ゲイブラー氏(「グーの惑星」などを開発。ゲームプロトタイピングについてのプロフェッショナル)が、Global Game Jam 第1回(2009)で行った基調講演の内容を個人的にまとめたものです。 なお、日本語訳がついた動画…

ゲーム制作に役立つPythonの使い方

今回はゲーム制作に役立つPythonの使い方を紹介します。 Pythonとは何か? Pythonというのはコンパイルなしで動作するスクリプト言語です。プログラム入門用の言語としてとても人気のある言語で、2021年現在、人気プログラムランキング2位になっているそうで…

ゲーム専門学校は業界への就職に役に立つのか?

今回は「ゲーム専門学校は業界への就職に役に立つのか」ということについて解説します。ただ、私はプログラマーなので、プログラマーとしての視点に限定することにご注意ください。 ゲーム専門学校は役に立ちます 結論から先に書くとすごい役に立ちます。理…

重み付けの確率計算アルゴリズム

今回は重み付けの確率計算の方法について解説します。 確率の計算方法 重み付けの説明の前に、基本的な確率計算の方法について確認しておきます。 まずは、サイコロで1の目が出る確率の求め方です。 6面体のサイコロは6通りのパターンがあり、それぞれが均等…

ゲームプログラムを上達させる4つの方法

今回はゲームプログラムを上達させる4つの方法について解説します。 1. 動いているコードを書き写す 2. 覚えたことをまとめる 3. ゲームをひたすら作る 4. ゲームエンジンを使わずにゲームを作る 1. 動いているコードを書き写す ゲームプログラムを上達する…

ゲームプログラムでの「sin()」の活用法

今回はゲームプログラムでの「sin()」の活用法について解説します。 sin()とは sin()とは正弦関数でサインカーブとも呼ばれ、 y=sinx という式で表現されます。 この関数は xの値が2πごとに、yを1とマイナス1との間を常に動かすという特徴を持っています。 …

初心者が作ると勉強になるゲーム20選

ゲーム制作初心者が作ると勉強になるゲーム20選です