JP6140116B2 - ゲームプログラム及びゲーム装置 - Google Patents

ゲームプログラム及びゲーム装置 Download PDF

Info

Publication number
JP6140116B2
JP6140116B2 JP2014164254A JP2014164254A JP6140116B2 JP 6140116 B2 JP6140116 B2 JP 6140116B2 JP 2014164254 A JP2014164254 A JP 2014164254A JP 2014164254 A JP2014164254 A JP 2014164254A JP 6140116 B2 JP6140116 B2 JP 6140116B2
Authority
JP
Japan
Prior art keywords
game
activity space
unit
point
space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014164254A
Other languages
English (en)
Other versions
JP2015083121A (ja
Inventor
和樹 榊原
和樹 榊原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Capcom Co Ltd
Original Assignee
Capcom Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to JP2014164254A priority Critical patent/JP6140116B2/ja
Application filed by Capcom Co Ltd filed Critical Capcom Co Ltd
Priority to KR1020167003726A priority patent/KR101903687B1/ko
Priority to CA2922386A priority patent/CA2922386A1/en
Priority to EP14846436.5A priority patent/EP3047885A4/en
Priority to US14/914,437 priority patent/US9925462B2/en
Priority to PCT/JP2014/073946 priority patent/WO2015041120A1/ja
Priority to CN201480047312.6A priority patent/CN105492091B/zh
Publication of JP2015083121A publication Critical patent/JP2015083121A/ja
Application granted granted Critical
Publication of JP6140116B2 publication Critical patent/JP6140116B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/47Controlling the progress of the video game involving branching, e.g. choosing one of several possible scenarios at a given point in time
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/69Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/822Strategy games; Role-playing games
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/825Fostering virtual characters

Description

本発明は、プレイヤキャラクタが活動するゲーム空間を自動的に生成する技術に関する。
プレイヤキャラクタが探検するダンジョンなどのゲーム空間を自動的に生成するゲームが知られている。プレイする度に新たなダンジョンが生成されるので、プレイヤは毎回新鮮な気持ちでダンジョン内を探検することが可能となる。
ダンジョンを自動的に生成する方法としては、複数の部屋をランダムで生成するとともに、その部屋をつなぐ通路をランダムに生成する方法がある。階段がいずれかの部屋に配置されて、プレイヤキャラクタがその階段に到達すると次の階に進むことができる。
特許第3270929号公報
従来のマップの自動生成方法では、ダンジョンの構造が一本道でない場合は、プレイヤキャラクタが必ず通る地点を特定することは難しいという問題があった。
部屋の大きさ、大まかな配置はある程度制御することはできるが、自動生成されるマップに開発者の意図を反映させることは難しいという問題があった。
本発明は、上記に鑑みてなされたものであり、開発者の意図を反映させたゲーム空間を自動的に生成することを目的とする。
第1の本発明に係るゲームプログラムは、仮想のゲーム空間内でゲームキャラクタが活動可能な範囲である活動空間を生成するゲームプログラムであって、表示部、操作部及び記憶部を備えたコンピュータを、各方向について前記活動空間を生成する割合を示すパラメータを前記記憶部に格納する蓄積手段、前記蓄積手段から前記パラメータを読み取り、仮想のゲーム空間内の所定の開始地点から少なくとも異なる2方向に向けて所定のパラメータに基いてランダムに前記活動空間を生成する活動空間生成手段、少なくとも1組のスタートとゴールを異なる方向に向けて生成された前記活動空間それぞれに設定する設定手段、前記操作部からの入力に従って前記ゲームキャラクタを前記活動空間内で移動させる制御手段、前記活動空間及び前記ゲームキャラクタを含むゲーム画面を描画して前記表示部に表示させる描画手段、として機能させることを特徴とする。
上記ゲームプログラムにおいて、前記活動空間生成手段は、前記開始地点からの距離が所定の最大長になる地点まで前記活動空間を生成したときは、当該地点から前記開始地点までの間の任意の地点を分岐地点として選択し、当該分岐地点から活動空間を生成することを特徴とする。
上記ゲームプログラムにおいて、前記活動空間生成手段は、所定の大きさのマップユニット単位で前記活動空間を生成するものであって、前記活動空間の中から任意の地点を選択し、当該地点から所定の方向に所定のマップユニットの数だけ前記活動空間を生成したときに前記活動空間の別の地点につながる場合は、前記地点から前記別の地点までの間に前記活動空間を生成することを特徴とする。
上記ゲームプログラムにおいて、前記所定のマップユニットの数は3以上であることを特徴とする。
上記ゲームプログラムにおいて、前記活動空間生成手段は、平面方向に加えて高さ方向にも活動空間を拡張するものであって、前記コンピュータを、さらに、前記活動空間において生じた高さ方向の段差について、当該段差の高さが所定の高さ以下のときは当該段差を斜面あるいは階段状に加工し、当該段差の高さが所定の高さより高いときは当該段差に垂直昇降手段を設置する加工手段、として機能させることを特徴とする。
第2の本発明に係るゲーム装置は、上記ゲームプログラムを記憶したプログラム記憶部と、前記プログラム記憶部に記憶されたゲームプログラムを実行するコンピュータと、を備えた。
本発明によれば、仮想ゲーム空間内の開始地点から少なくとも2方向に向けて所定のパラメータに基いてランダムに活動空間を生成し、異なる方向に生成した活動空間それぞれにスタートとゴールを設定することで、スタートとゴールを結ぶ道のりに必ず開始地点を含む活動空間を生成することが可能で、さらに、パラメータで活動空間を生成する方向が決められるので、開発者の意図を反映させたゲーム空間を自動的に生成することができる。
本発明の実施の形態に係るゲーム装置のハードウェア構成を説明する図である。 プレイヤキャラクタがダンジョンを探索しているゲーム画面の例を示す図である。 本実施の形態におけるゲームプログラムによって構成されるゲーム装置の構成を示す機能ブロック図である。 掘削部がダンジョンを生成する処理の流れを示すフローチャートである。 掘削器の初期配置を示すダンジョンの平面図である。 活動空間を広げる様子を示すダンジョンの平面図である。 開始地点から掘削器までの距離を示すダンジョンの平面図である。 掘削器を分岐場所まで戻したダンジョンの平面図である。 生成されたダンジョンの平面図である。 ダンジョン内に生成した部屋を示すダンジョンの平面図である。 環状の通路を形成する様子を示す平面図である。 環状の通路を生成する処理の流れを示すフローチャートである。 環状の通路ができるか否かを調べる様子を示す平面図である。 ダンジョンを拡張する単位の直方体を示した斜視図である。 ダンジョンを高さ方向に掘削した様子をZ軸方向から見た断面図である。 段差にハシゴを配置した様子を示す断面図である。 段差に坂道を形成した様子を示す断面図である。 段差に坂道を形成するときに用いる坂道パーツを示した斜視図である。 2段分の段差を削って坂道を形成する様子を示す断面図である。 通常の行き止まりと上部に空間を形成した行き止まりのゲーム画面の例を示す図である。 上部に空間を形成した行き止まりの平面図と断面図である。 崖を形成したT字路の平面図と断面図である。
以下、本発明の実施の形態について図面を用いて説明する。
(ゲームシステム)
図1を参照して、本発明の実施の形態に係るゲームプログラムを実行するゲームシステム100を説明する。ゲームシステム100は、ゲーム機(コンピュータ)1と、外部機器であるモニタ138、外部メモリ145、スピーカ144、および記録媒体148とを備える。
ゲーム機1は、コントローラ120、CPU(Central Processing Unit)131、RAM(Random Access Memory)132、バス133、GPU(Graphics Processing Unit)134、デコーダ137、I/Oポート139、DRV(Drive)140、SP(Sound Processor)142、増幅器143、ROM(Read Only Memory)146および通信制御部147を備える一般的なゲーム装置である。CPU131は、全体の動作を制御する。RAM132は、ゲームの進行に応じて各種のデータを記憶する。ROM146は、ゲーム機1を起動するとともに、ゲーム機1の基本的な機能を実現するためのシステムプログラムを記憶する。GPU134は、GP(Graphics Processor)136とRAM135を備えてゲーム空間及びゲーム空間内のオブジェクトを描画する。
本発明の実施の形態において、ゲームプログラムはゲーム機1で実行される場合について説明するが、これに限られない。ゲームプログラムは、CPU、メモリなどを備えるコンピュータであればどのような装置で実行されても良い。
本発明の実施の形態に係るゲームプログラムは、記録媒体(プログラム記憶部)148に記録される。ゲーム機1が、DRV140に挿入された記録媒体148からゲームプログラムを読み出して実行することにより、GPU134が描画したゲーム空間の画像がデコーダ137を介してモニタ138に出力されるとともに、SP142で処理された効果音や音楽が増幅器143を介してスピーカ144に出力される。記録媒体148は、DVD、CD、ハードディスクなどが考えられる。ゲーム機1が通信ネットワークに接続されている場合、記録媒体148は、通信ネットワーク上の記録媒体であっても良い。ゲーム機1が通信ネットワークに接続されている場合、通信制御部147が通信ネットワークとの通信を制御する。
コントローラ120は無線あるいは有線でゲーム機1に接続される。プレイヤが、コントローラ120の操作ボタンやスティックなどの操作子群122を操作すると、コントローラ120のI/Oポート121によりプレイヤの操作情報がゲーム機1に出力される。CPU131は、I/Oポート139を介してプレイヤの操作情報を取得し、その操作情報に基づいて、プレイヤキャラクタ、ゲーム空間を制御する。プレイヤの操作情報は例えば、歩く、剣を構える、振り向く、アイテムを取得するなどの、プレイヤキャラクタの動作に関する指示や、メニューの操作などの、ゲームの進行に関する指示である。
なお、ゲームは、ゲームプログラムおよびゲーム機1で構成されるゲームシステム100が、ユーザの操作に応じた処理を実行することで進行する。
(ゲーム内容)
次に、本実施の形態におけるゲームプログラムによって提供されるゲームについて説明する。
本ゲームは、プレイヤがプレイヤキャラクタを操作して3次元の仮想空間であるダンジョンあるいは建物内(以下まとめて「ダンジョン」とする)を探索するゲームである。図2に、プレイヤキャラクタがダンジョンを探索しているゲーム画面の例を示す。同図に示すゲーム画面には、プレイヤキャラクタ50とダンジョン内に配置されたアイテム51が示されている。プレイヤキャラクタ50は、ダンジョン内を探索してアイテム51などを取得し、ゴールを目指す。図示していないが、ダンジョン内にはプレイヤキャラクタを攻撃してくるモンスターキャラクタが配置される。モンスターキャラクタは、プレイヤキャラクタのダンジョン探索を妨害する。
ダンジョンは、プレイヤキャラクタがダンジョン内に入る度に自動的に生成される。ダンジョンは、平面的な広がりのみでなく、高さ方向にも移動可能な3次元的に広がる空間である。
(ゲーム装置)
次に、本実施の形態におけるゲームプログラムをゲーム機が実行することで構成されるゲーム装置について説明する。
図3は、本実施の形態におけるゲームプログラムによって構成されるゲーム装置の構成を示す機能ブロック図である。図3に示すゲーム装置は、ダンジョン生成部11、ゲーム進行制御部12、描画音声処理部13、およびゲームデータ蓄積部14を備える。
ダンジョン生成部11は、掘削部111、整地部112、テクスチャ部113、ライティング部114、およびNPC配置部115を備え、プレイヤキャラクタが行動する仮想の3次元ゲーム空間を生成する。
掘削部111は、3次元空間内においてプレイヤキャラクタが移動可能な範囲である活動空間を生成する。活動空間は、例えば、地中を掘削して生成された迷路状のダンジョン、廊下や部屋で構成される建物内、建物や塀で囲まれた道路や広場で構成される街などである。
整地部112は、活動空間の中のプレイヤキャラクタが移動できない段差に対して、傾斜をつけて坂道にしたり、はしごのオブジェクトを設置して移動可能にする。
テクスチャ部113は、活動空間にテクスチャを貼る。
ライティング部114は、活動空間に光源を設定する。
NPC配置部115は、活動空間にノンプレイヤキャラクタ(例えばモンスターキャラクタ)やアイテムなどのオブジェクトを配置する。
ゲーム進行制御部12は、コントローラ120で入力されたプイレヤの操作に応じてプレイヤキャラクタを制御するとともに、予め設定された処理内容でノンプレイヤキャラクタを制御し、ゲームを進行させる。
描画音声処理部13は、ゲーム空間、プレイヤキャラクタ、ノンプレイヤキャラクタなどをレンダリングして画像を生成し、画像をモニタ138に出力するとともに、ゲームの進行に合わせて効果音、BGM、音声をスピーカ144に出力する。
ゲームデータ蓄積部14は、ゲーム空間内に配置するオブジェクトのモデリングデータ、テクスチャデータ、効果音データ、BGMデータなどのゲームの進行に必要なデータを蓄積する。
(ダンジョンの生成)
次に、掘削部111が活動空間を生成する処理について説明する。以下では、地中を掘削してダンジョンを生成する例について説明する。
図4は、掘削部111が活動空間を生成する処理の流れを示すフローチャートである。図5から図8は、掘削部111が活動空間を広げる様子を示す平面図である。実際には、高さ方向(Y軸方向)にも活動空間は掘削(拡張)されるが、ここでは簡単のために、XZ平面のみに掘削する例で説明し、Y軸方向の掘削については後述する。
まず、初期設定として、仮想の掘削器A,Bが開始地点Xに隣接する2箇所に配置されて、掘削器A,Bそれぞれにパラメータが設定される(ステップS11)。図5に示す例では、掘削部111は、掘削器Aを開始地点Xの−X側(左側)に配置し、掘削器Bを+X側(右側)に配置した。掘削器A,Bには表1に示すパラメータが設定された。
Figure 0006140116
表1は、掘削器A,Bのそれぞれが掘削する方向の割合を示す掘削分布パラメータである。掘削分布パラメータの数値が大きい方向は、より大きい割合で掘削器A,Bが掘削する方向である。活動空間は、掘削器A,Bが進んだ方向に拡張される。表1に示した掘削分布パラメータでは、掘削器Aについては+X方向に0が設定されているので+X方向には掘削しない。掘削器Bについては−X方向に0が設定されているので−X方向には掘削しない。したがって、掘削器Aは開始地点Xから左側に進み、掘削器Bは開始地点Xから右側に進む。掘削器A,BのZ方向に設定された値はX方向に設定された値に比べて小さいので、横長の活動空間が生成される。
掘削器A,Bは、設定された掘削分布パラメータに基いてそれぞれ別々の方向にランダムに掘削し、活動空間を拡張する(ステップS12)。図6(a)では掘削器Aは−X方向に掘削し、掘削器Bは+Z方向に掘削した。続く図6(b)では掘削器Aは−X方向に掘削し、掘削器Bは+X方向に掘削した。掘削器A,Bは、XZ方向については予め設定された1マップユニット単位で掘削する。本実施例では、プレイヤキャラクタの高さを1.75mとして、XZ平面の掘削単位である1マップユニットの大きさを5m×5mの大きさとした。掘削器A,Bそれぞれが掘削したダンジョンは開始地点X以外では互いに連結しないものとする。ダンジョンの設定によっては、掘削器A,Bそれぞれが掘削したダンジョンを開始地点X以外で連結させてもよい。
掘削器A,Bが1マップユニット掘削するごとに、生成されたダンジョンが所望の大きさになったか否かを判定する(ステップS13)。初期設定で生成するダンジョンの大きさを決めておく(例えば300マップユニット)。掘削器A,Bが掘削したマップユニットの数が予め決められた値以上になった場合は、ダンジョンが所望の大きさになったと判定する。ダンジョンが所望の大きさになった場合は(ステップS13のYES)、掘削処理を終了する。
掘削器A,Bが1マップユニット掘削するごとに、開始地点Xから掘削器A,Bまでの距離が予め設定した最大値に達したか否かを判定する(ステップS14)。開始地点Xから掘削器A,Bまでの距離は、開始地点Xを0番目として、掘削器A,Bまでのマップユニットの数をカウントして求める。図7の例では、掘削器A,Bのいずれも10マップユニット離れている。
開始地点Xから掘削器A,Bまでの距離が最大値に達していない場合(ステップS14のNO)、ステップS12に戻り、ダンジョンの掘削を続ける。
開始地点Xから掘削器A,Bまでの距離が最大値に達した場合(ステップS14のYES)、掘削器A,Bをいままで掘削したマップユニットに沿ってダンジョンの分岐場所まで戻す(ステップS15)。例えば、最大値を10マップユニットと設定していた場合、図7の例では、いずれの掘削器A,Bも開始地点Xからの距離が最大値に達している。そこで、掘削器A,Bをいままで掘削したマップユニットに沿って分岐場所まで戻す。図8の例では、掘削器Aは開始地点Xから7番目のマップユニットまで戻され、掘削器Bは開始地点Xから6番目のマップユニットまで戻された。掘削器A,Bを戻すマップユニット数を予め決めておいてもよいし、最初の曲がり角まで戻す、あるいは直線が続くところまで戻すなどの条件を決めてもよい。
分岐場所まで戻された掘削器A,Bは、ステップS12に戻り、分岐場所から新たに掘削を開始する。図8の矢印で示すように、掘削器A,Bは分岐場所から新たに掘削を進める。そして、ステップS12〜S14の処理を繰り返し、所望の大きさのダンジョンを生成する。
図9に掘削が終わったダンジョンの平面図を示す。ダンジョンの掘削が終了すると、掘削器A,Bが掘削した領域それぞれからスタートとゴールを配置するマップユニットを選択する。掘削器Aが掘削した領域のマップユニットからスタートSを選んだ場合は、掘削器Bが掘削した領域のマップユニットからゴールGを選ぶ。掘削器Bが掘削した領域のマップユニットからスタートS’を選んだ場合は、掘削器Aが掘削した領域のマップユニットからゴールG’を選ぶ。スタートとゴールのマップユニットは、掘削開始地点Xからそれぞれ所定の距離(例えば7マップユニット)以上離れたマップユニットから選ぶ。あるいはスタートとゴールを行き止まりのマップユニットの中から選んでもよい。これにより、スタートSからゴールGまでの道のりは、必ず開始地点Xを通り、所定の距離以上となる。開始地点Xに重要なNPCやアイテムなどを配置することで、プレイヤキャラクタは重要なNPCやアイテムに必ず接触することとなる。さらに、複数プレイヤが同一ダンジョンでプレイする場合、一方のプレイヤにスタートS、ゴールGを設定し、他方のプレイヤにスタートS’、ゴールG’を設定することで、開始地点Xでプレイヤが互いにすれ違うことを期待できる。1つのゴールに対して複数のスタートを設定してもよいし、1つのスタートに対して複数のゴールを設定してもよい。
本ダンジョン生成方法では、掘削器A,Bの初期配置および掘削分布パラメータを変更することで、ある程度の意図を反映したダンジョンを生成することが可能となる。例えば、上記の掘削分布パラメータの掘削器Aの−Y方向を0、掘削器Bの+Y方向を0にすることで、掘削器Aは左上方向に掘削し、掘削器Bは右下方向に掘削する。その結果、左から右にかけて下に潜るダンジョンを生成することができる。別の例としては、掘削器A,Bを開始地点Xの−Y側(下側)と+Y側(上側)に配置し、掘削分布パラメータの−Y方向、+Y方向の値を大きくすることで、高さ方向に広がる縦長のダンジョンを生成することができる。また、掘削器A,Bそれぞれが掘削するダンジョンの大きさが異なってもよい。例えば、掘削器Aが掘削するダンジョンの大きさと掘削器Bが掘削するダンジョンの大きさを2:1にする。さらに、開始地点Xから掘削器A,Bまでの距離の最大値が異なってもよい。
上記では、2つの掘削器A,Bにより別々の方向に同時に掘削した例を説明したが、2方向同時に掘削しなくても、開始地点Xから別々の方向に一方向ずつ順番に掘削してもよい。具体的には、開始地点Xの右側方向に所望のダンジョンの大きさの半分を掘削した後、開始地点Xの左側方向に残りの大きさを掘削する。また、開始地点Xからの掘削方向は2方向に限らず、3方向以上であってもよい。
(ダンジョン内の部屋)
次に、ダンジョン内の部屋の掘削について説明する。
ダンジョン内には通路よりも広い空間の部屋を作成する。図10に、通路の途中に2×2マップユニットの部屋を掘削した例を示す。本実施例では、部屋を大きい通路として作成する。具体的には、図4のステップS12の掘削する処理において、掘削する部屋の大きさを決め、通路の代わりに部屋を掘削した場合に所定の条件を満たすか否かを判定し、所定の条件を満たす場合は部屋(大きい通路)を掘削する。所定の条件には、ダンジョンの大きさ、ダンジョンの大きさに対する部屋の割合(例えば30%)がある。掘削する部屋の大きさは、予め設定した部屋の最小サイズ(例えば2×2マップユニット)以上となるように決定する。
ここで、具体的な数値を例に、部屋の掘削について説明する。部屋の割合を30%、掘削する部屋の大きさを2×2マップユニットとする。これまでに7マップユニット分の通路が掘削されていた場合、次の掘削で2×2マップユニットの部屋を掘削すると、ダンジョンの大きさは7+2×2=11マップユニットとなり、部屋の割合は2×2÷11=0.36となる。その結果、部屋の割合が設定値の30%を超えるので、部屋を掘削せずに通路を掘削する。8マップユニット分の通路が掘削されていた場合は、ダンジョンの大きさは8+2×2=12マップユニット、部屋の割合は2×2÷12=0.3となり、部屋の割合が設定値の30%を満たすので、2×2マップユニットの部屋を掘削する。
(環状の通路)
次に、環状の通路の生成について説明する。
本実施例では、掘削部111が設定に従って意図的にダンジョン内に環状の通路を作成する。掘削部111は、所望の大きさのダンジョンを生成後、任意のマップユニットを環状の通路の開始地点とし、その開始地点からいずれかの方向に所定のマップユニット数を掘削したときに別のマップユニットにつながる場合、その箇所に環状の通路を形成する。
図11に、環状の通路を形成する例を示す。図11(a)は環状の通路の形成前、図11(b)は環状の通路の形成後を示す。図11では、マップユニットCを環状の通路の開始地点とし、マップユニットCから右側に3マップユニット掘削して環状の通路を形成した。
続いて、環状の通路を生成する処理の流れについて説明する。図12は、環状の通路を生成する処理の流れを示すフローチャートである。まず、掘削部111は、環状の通路の開始地点となるマップユニットを選択する(ステップS21)。本実施例では、行き止まりのマップユニットを開始地点として選択する。曲がり角のマップユニットや直線途中のマップユニットを開始地点として選択してもよい。
掘削部111は、開始地点から掘削していない方向を1つ選び、その方向に所定のマップユニットの数だけ掘削した場合に環状の通路ができるか否かを判定する(ステップS22)。所定のマップユニットの数は、初期値として設定される。掘削部111は、ステップS22で選んだ方向で環状の通路ができない場合は別の方向を選択し、すべての方向で環状の通路ができない場合はステップS21に戻り、別のマップユニットを環状の通路の開始地点として選択する(ステップS23)。
例えば、図13の平面図において、マップユニットCを開始地点として選択したときは、3つの方向61A,61B,61Cについて順番に環状の通路ができるか否かを判定する。図13の方向61Aでは、1マップユニット目で別のマップユニットDにつながったので、環状の通路ができないと判定する。1マップユニット目で別のマップユニットにつながる場合は、環状の通路ではなくて部屋となる。図13の方向61Bでは、所定のマップユニットの数(3マップユニット)を掘削しても別のマップユニットにつながらないので、環状の通路ができないと判定する。図13の方向61Cでは、所定のマップユニットの数を掘削して別のマップユニットEにつながるので、環状の通路ができると判定する。
選択したマップユニットで環状の通路ができる場合(ステップS22のYES)、掘削部111は、その方向へ掘削して活動空間を拡張し、環状の通路を生成する(ステップS24)。
以上の処理により環状の通路が生成される。上記の処理を繰り返すことで、複数の地点に環状の通路を形成できる。生成する環状の通路の数は初期値として設定される。
(高さ方向の掘削)
次に、高さ方向(Y軸方向)への掘削について説明する。
上記では、簡単のために、掘削部111がXZ平面方向に1マップユニット単位で活動空間を拡張して平面的なダンジョンを生成する例で説明した。プレイヤキャラクタが高さを持ち、3次元空間内で活動する場合、掘削部111は、図14に示す直方体(幅(X方向)×奥行(Z方向)×高さ(Y方向)=5m×5m×5.25m)を活動空間の拡張の単位とする。つまり、掘削器A,BがXZ平面上を1マップユニット移動すると、図14の直方体の大きさ分ダンジョンが掘削されて、活動空間が拡張される。
高さ方向(Y軸方向)への拡張については、掘削部111は、X方向、Z方向へ1マップユニット分活動空間を拡張する距離(5m)よりも短い距離(1.75m)で活動空間を拡張する。つまり、掘削器A,BがY方向へ掘削するときには、活動空間はY方向に直方体の3分の1の大きさだけ拡張される。図15に、下方向に掘削したダンジョンの断面図を示す。同図に示すように、高さ方向については、掘削器A,Bは直方体の3分の1の体積分を掘削する。
整地部112は、高さ方向に掘削してできた段差に対して、ハシゴをかける処理(図16)、あるいは坂道にする処理(図17)を施す。本実施例では、2段分(1.75m×2)以上の段差にはハシゴをかけ、1段分の段差は坂道とした。坂道の代わりに階段を設置してもよい。2段分以上の段差にはハシゴの代わりにロープやエレベータなどの昇降手段を設置してもよい。
段差を坂道とする場合、整地部112は、図18(a),(b)に示す坂道パーツを段差の箇所に設置する。図18(a)の坂道パーツは、1段分の段差を埋める坂道パーツである。図18(b)の坂道パーツは、図18(a)の両側(三角形の面)に隣接して設置可能な坂道パーツである。
段差が2段分以上であっても、通路が段差から2マップユニット以上真っ直ぐに続く場合、整地部112は、通路を削り、坂道を形成する。具体的には、2段分の段差があり、段差の上段に2マップユニットの通路がある場合(図19(a))、整地部112は、斜線部の段差を削って1段ずつの段差とし(図19(b))、各段差に坂道パースを設置する(図19(c))。2段分以上の段差の下段に2マップユニット以上の通路が続く場合、整地部112は、段差を埋めて1段ずつの段差として、坂道パーツを設置してもよい。
段差を坂道に加工することにより、ダンジョン内のハシゴの数を減らすことができ、プレイヤキャラクタがスムースに移動することが可能となる。段差を坂道の代わりに階段に加工しても同様の効果が得られる。
(特徴のある通路)
次に、通路を特徴付ける処理について説明する。
行き止まりやT字路にプレイヤキャラクタの行動に影響しない空間を形成することで、ダンジョン内の通路に特徴が与えられて、プレイヤは地形を覚えやすくなる。
図20(a)は、通常の行き止まりにプレイヤキャラクタがいるときのゲーム画面の例を示す。図20(b)は、上部に空間を形成した行き止まりにプレイヤキャラクタがいるときのゲーム画面の例を示す。掘削部111は直方体を単位として活動空間を拡張するので、いずれの行き止まりの形状も図20(a)に示すように同じになる。本実施例では、図20(b)に示すように、整地部112が、行き止まりの上部に空間52を形成して、行き止まりそれぞれを異なる形状にする。以下では、通路の上部に空間を形成する例と、通路の脇に崖を形成する例について説明する。
まず、通路の上部に空間を形成する例について説明する。
図21(a)は、上部に空間を形成した行き止まりのXZ平面図を示す。図21(b)は、上部に空間を形成した行き止まりのXY断面図を示す。空間の大きさは、3×3マップユニット(直方体を9つ分)の大きさとする。空間の位置は、3×3マップユニットのいずれかのマップユニットがマップユニットHの上部の3分の1を含む位置とする。空間は、XY平面に関しては、マップユニットHの床から直方体の高さの3分の2の位置に存在する。プレイヤキャラクタの高さは直方体の高さの3分の1程度であるので、マップユニットHの床から3分の2の高さに形成した空間にプレイヤキャラクタは入ることができない。XZ平面の空間の位置に関しては、3×3の空間がマップユニットHを含むようにランダムに決定する。つまり、空間は、マップユニットHの床から直方体の高さの3分の2の位置で、XZ平面に関して、マップユニットHを中心した5×5マップユニット内のランダムな位置に3×3マップユニットの大きさで形成される。行き止まりごとにランダムな位置に空間を形成することで、行き止まりそれぞれが異なる形状となる。空間内にライトなどのオブジェクトを配置して見栄えに変化を付けてもよい。行き止まりだけでなく、T字路および部屋の隅の上部にも同様に空間を形成してもよい。
続いて、通路の脇に崖を形成する例について説明する。
図22に示す例では、T字路の分かれた先のマップユニットJ,Kのうち、一方のマップユニットKの脇(隣接するマップユニット)に崖を形成した。その崖が目印となり、プレイヤは地形を覚えやすくなる。
図22(a)は、崖を形成したT字路のXZ平面図を示す。図22(b)は、崖を形成したT字路のXY断面図を示す。崖は1マップユニット分の深さとする。崖のマップユニットは、通常の壁のマップユニットと同様に、プレイヤキャラクタの侵入を不可とするので、プレイヤキャラクタが崖から落ちることはない。
崖を形成する位置の決め方は、まず、T字路の分かれた先のマップユニットJ,Kのうちのどちらかを基準となるマップユニットとして選択する。続いて、XZ平面に関して、基準となるマップユニットを含む3×3マップユニットをランダムに決定する。3×3マップユニットのうち、通路でも部屋でもないマップユニット(壁のマップユニット)とその下のマップユニットを掘削して崖として形成する。図22の例では、マップユニットKを基準とし、マップユニットKを左上に含む3×3マップユニットがランダムに決定されて、その3×3マップユニットの内の通路でない6マップユニット(マップユニットKの右側の6マップユニット)に崖を形成した。
なお、空間や崖を形成する数や空間や崖の大きさは初期値としてパラメータにより設定する。
(ダンジョン形成後の処理)
掘削部111及び整地部112によりダンジョンの形が作られた後、テクスチャ部113、ライティング部114がダンジョン内の雰囲気を決定し、NPC配置部115がゲームの進行に必要なNPC、アイテムなどをダンジョン内に配置する。
テクスチャ部113は、必要であれば壁面や天井に起伏のあるモデリングデータを適用したうえで、岩などのテクスチャを貼る。ダンジョンが建物の場合は、壁紙を張ったり、天井をアーチ状などの建物にあった形状に加工したうえで天井のテクスチャを貼る。テクスチャ部113は、部屋などの広い空間に、柱、泉などのオブジェクトを配置してもよい。
ライティング部114は、光源が配置可能な床、天井、あるいは柱が存在するマップユニットの中からランダムにマップユニットを選択して光源を配置する。
NPC配置部115は、平らな床のマップユニットで、曲がり角あるいは行き止まりのマップユニットの中からランダムにマップユニットを選択し、選択したマップユニットにモンスターキャラクタを配置する。NPC配置部115は、開発者の意図を反映してアイテムなどを配置する。具体的には、NPC配置部115はゲーム進行に必ず必要なものを開始地点Xに配置する。あるいは、NPC配置部115はレアなアイテム、装備をスタートS、ゴールGから離れた位置に配置する。
以上説明したように、本実施の形態によれば、掘削部111が仮想ゲーム空間内の開始地点Xから別々の2方向に掘削分布パラメータに基いてダンジョンを拡張し、別々の2方向に拡張した領域からスタートSとゴールGをそれぞれ選択することで、開始地点Xを必ず通るスタートSとゴールGまでの道のりを形成することが可能となる。また、掘削分布パラメータで拡張する方向を指定することで、ダンジョン全体の形状を大まかに指定するもことが可能となる。
本実施の形態では、掘削部111が、環状の通路の開始地点を選択し、開始地点からいずれかの方向に所定のマップユニットの数だけ掘削した場合に環状の通路ができるときは、その位置に環状の通路を生成することで、意図的に環状の通路を生成することが可能となる。
本実施の形態によれば、プレイヤキャラクタの背丈程度の段差を坂道に加工することにより、ダンジョン内のハシゴの数を減らし、プレイヤキャラクタがダンジョン内をスムースに移動することが可能となる。
本実施の形態によれば、行き止まりやT字路の上部に空間を形成したり、崖を形成することで、空間や崖が目印となり、プレイヤは地形を覚えやすくなる。
11…ダンジョン生成部
111…掘削部
112…整地部
113…テクスチャ部
114…ライティング部
115…NPC配置部
12…ゲーム進行制御部
13…描画音声処理部
14…ゲームデータ蓄積部

Claims (6)

  1. 仮想のゲーム空間内でゲームキャラクタが活動可能な範囲である活動空間を生成するゲームプログラムであって、
    表示部、操作部及び記憶部を備えたコンピュータを、
    各方向について前記活動空間を生成する割合を示すパラメータを前記記憶部に格納する蓄積手段、
    前記蓄積手段から前記パラメータを読み取り、仮想のゲーム空間内の所定の開始地点から少なくとも異なる2方向に向けて前記パラメータに基いてランダムに前記活動空間を生成する活動空間生成手段、
    少なくとも1つのスタートと1つのゴールを異なる方向に向けて生成された前記活動空間それぞれに設定する設定手段、
    前記操作部からの入力に従って前記ゲームキャラクタを前記活動空間内で移動させる制御手段、
    前記活動空間及び前記ゲームキャラクタを含むゲーム画面を描画して前記表示部に表示させる描画手段、
    として機能させることを特徴とするゲームプログラム。
  2. 前記活動空間生成手段は、前記開始地点からの距離が所定の最大長になる地点まで前記活動空間を生成したときは、当該地点から前記開始地点までの間の任意の地点を分岐地点として選択し、当該分岐地点から活動空間を生成することを特徴とする請求項1記載のゲームプログラム。
  3. 前記活動空間生成手段は、所定の大きさのマップユニット単位で前記活動空間を生成するものであって、前記活動空間の中から任意の地点を選択し、当該地点から所定の方向に所定のマップユニットの数だけ前記活動空間を生成したときに前記活動空間の別の地点につながる場合は、前記地点から前記別の地点までの間に前記活動空間を生成することを特徴とする請求項1又は2記載のゲームプログラム。
  4. 前記所定のマップユニットの数は3以上であることを特徴とする請求項3記載のゲームプログラム。
  5. 前記活動空間生成手段は、平面方向に加えて高さ方向にも活動空間を拡張するものであって、
    前記コンピュータを、さらに、
    前記活動空間において生じた高さ方向の段差について、当該段差の高さが所定の高さ以下のときは当該段差を斜面あるいは階段状に加工し、当該段差の高さが所定の高さより高いときは当該段差に垂直昇降手段を設置する加工手段、
    として機能させることを特徴とする請求項1乃至4のいずれかに記載のゲームプログラム。
  6. 請求項1乃至5のいずれかに記載のゲームプログラムを記憶したプログラム記憶部と、
    前記プログラム記憶部に記憶されたゲームプログラムを実行するコンピュータと、
    を備えたゲーム装置。
JP2014164254A 2013-09-18 2014-08-12 ゲームプログラム及びゲーム装置 Active JP6140116B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2014164254A JP6140116B2 (ja) 2013-09-18 2014-08-12 ゲームプログラム及びゲーム装置
CA2922386A CA2922386A1 (en) 2013-09-18 2014-09-10 Game device, game device control method, and recording medium
EP14846436.5A EP3047885A4 (en) 2013-09-18 2014-09-10 Game device, game device control method, and recording medium
US14/914,437 US9925462B2 (en) 2013-09-18 2014-09-10 Game device, game device control method, and recording medium
KR1020167003726A KR101903687B1 (ko) 2013-09-18 2014-09-10 게임 장치, 게임 장치의 제어 방법 및 기록매체
PCT/JP2014/073946 WO2015041120A1 (ja) 2013-09-18 2014-09-10 ゲーム装置、ゲーム装置の制御方法及び記録媒体
CN201480047312.6A CN105492091B (zh) 2013-09-18 2014-09-10 游戏装置以及游戏装置的控制方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013192916 2013-09-18
JP2013192916 2013-09-18
JP2014164254A JP6140116B2 (ja) 2013-09-18 2014-08-12 ゲームプログラム及びゲーム装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017089350A Division JP6343067B2 (ja) 2013-09-18 2017-04-28 ゲームプログラム及びゲーム装置

Publications (2)

Publication Number Publication Date
JP2015083121A JP2015083121A (ja) 2015-04-30
JP6140116B2 true JP6140116B2 (ja) 2017-05-31

Family

ID=52688770

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014164254A Active JP6140116B2 (ja) 2013-09-18 2014-08-12 ゲームプログラム及びゲーム装置

Country Status (7)

Country Link
US (1) US9925462B2 (ja)
EP (1) EP3047885A4 (ja)
JP (1) JP6140116B2 (ja)
KR (1) KR101903687B1 (ja)
CN (1) CN105492091B (ja)
CA (1) CA2922386A1 (ja)
WO (1) WO2015041120A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5732559B1 (ja) 2014-02-20 2015-06-10 グリー株式会社 コンピュータプログラム、ゲームシステム、及びその制御方法
CN108159692B (zh) * 2017-12-01 2021-10-26 网易(杭州)网络有限公司 信息处理方法、装置、电子设备及存储介质
CN113597331A (zh) * 2019-03-19 2021-11-02 高联游戏有限公司 动态3d环境生成
CN111185009B (zh) * 2020-01-02 2021-03-26 腾讯科技(深圳)有限公司 地图生成方法和装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11144087A (ja) * 1997-11-11 1999-05-28 Namco Ltd 画像生成装置及び情報記憶媒体
JPH11319313A (ja) * 1998-05-12 1999-11-24 Enix Corp ビデオゲーム装置およびプログラムを格納した記録媒体
JP3270928B2 (ja) * 1999-09-30 2002-04-02 コナミ株式会社 フィールドマップ生成方法、ビデオゲームシステム、及び記録媒体
JP3270929B2 (ja) * 1999-09-30 2002-04-02 コナミ株式会社 迷路自動生成方法、記録媒体及びビデオゲーム装置
US6554704B2 (en) * 2000-08-17 2003-04-29 Wms Gaming Inc. Maze-based game for a gaming machine
JP2002224438A (ja) * 2001-02-05 2002-08-13 Square Co Ltd ビデオゲームのアルバム作成プログラム、アルバム作成プログラムを記録した記録媒体及びアルバム作成方法、ゲーム装置並びにビデオゲームキャラクタ画像のトレーディングシステム
JP3883522B2 (ja) * 2003-05-09 2007-02-21 任天堂株式会社 ゲーム装置およびゲームプログラム
JP3974135B2 (ja) * 2005-01-25 2007-09-12 株式会社コナミデジタルエンタテインメント プログラム、自動配置方法、ならびに、画像生成装置
JP3974134B2 (ja) * 2005-01-25 2007-09-12 株式会社コナミデジタルエンタテインメント プログラム、自動生成方法、ならびに、画像生成装置
JP2008136693A (ja) * 2006-12-01 2008-06-19 Namco Bandai Games Inc プログラム、情報記憶媒体及びゲーム装置
JP2008304967A (ja) * 2007-06-05 2008-12-18 Konami Digital Entertainment:Kk 画像表示制御装置、ゲーム装置及びプログラム
JP2013006693A (ja) * 2011-06-23 2013-01-10 Ad Kk 視覚弱者向けのエスカレーター用手摺ベルト
CN202876328U (zh) * 2012-05-23 2013-04-17 常熟理工学院 三维迷宫电子游戏机

Also Published As

Publication number Publication date
US9925462B2 (en) 2018-03-27
CA2922386A1 (en) 2015-03-26
CN105492091A (zh) 2016-04-13
KR20160055790A (ko) 2016-05-18
JP2015083121A (ja) 2015-04-30
EP3047885A4 (en) 2017-07-19
EP3047885A1 (en) 2016-07-27
CN105492091B (zh) 2019-01-15
WO2015041120A1 (ja) 2015-03-26
KR101903687B1 (ko) 2018-10-04
US20160199734A1 (en) 2016-07-14

Similar Documents

Publication Publication Date Title
JP6140116B2 (ja) ゲームプログラム及びゲーム装置
US8466363B2 (en) Sound generation processing apparatus, sound generation processing method and a tangible recording medium
JP2004267247A (ja) 3次元ビデオゲーム装置、3次元ビデオゲームにおける仮想カメラの制御方法、並びにプログラム及び記録媒体
US11027200B2 (en) Game device, method and non-transitory computer-readable storage medium
JP6570839B2 (ja) 情報処理装置、及びゲームプログラム
CN111013146B (zh) 超大地图的可动态修改的寻路导航方法和装置
CN113597331A (zh) 动态3d环境生成
JP6343067B2 (ja) ゲームプログラム及びゲーム装置
JP6863936B2 (ja) 仮想空間における音声生成プログラム、四分木の生成方法、および音声生成装置
JP2000107441A (ja) ゲーム装置、地形パターン形成方法および情報記録媒体
JP5004435B2 (ja) ゲームプログラム及びゲーム装置
JP2006130131A (ja) ゲームマップ作成プログラムおよびゲームマップ作成装置
JP2022186919A (ja) プログラム、ゲーム装置及びゲーム制御方法
JP2006314611A5 (ja)
WO2021199538A1 (ja) シミュレーションシステム、シミュレーション方法、及びシミュレーションプログラム
JP6294899B2 (ja) 効果音加工プログラム及びゲーム装置
JP2006092222A (ja) オブジェクト配置方法、ゲーム装置、画像処理装置及び画像処理方法
US8267782B2 (en) Game device, game control method, and game control program
JP3732484B2 (ja) ビデオゲーム装置、ビデオゲームの進行度チェック方法、並びにプログラム及び記録媒体
JP2000107437A (ja) ゲーム装置、情報記録媒体および地形パターン決定方法
JP2007000472A (ja) 携帯型ゲーム装置、プログラムおよび情報記憶媒体
KR101423417B1 (ko) 온라인 게임의 게임 맵 편집 방법 및 이를 위한 편집 시스템
JP2022056655A (ja) シミュレーションシステム、シミュレーション方法、及びシミュレーションプログラム
JP2017097568A (ja) プログラム、コンピュータ装置、及び、プログラム実行方法
Hamilton Procedural Generation of Three-Dimensional Game Levels with Interior Architecture

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160302

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170428

R150 Certificate of patent or registration of utility model

Ref document number: 6140116

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S802 Written request for registration of partial abandonment of right

Free format text: JAPANESE INTERMEDIATE CODE: R311802

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350