Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3656845B2 - Golf game system and recording medium - Google Patents
[go: Go Back, main page]

JP3656845B2 - Golf game system and recording medium - Google Patents

Golf game system and recording medium Download PDF

Info

Publication number
JP3656845B2
JP3656845B2 JP2002234497A JP2002234497A JP3656845B2 JP 3656845 B2 JP3656845 B2 JP 3656845B2 JP 2002234497 A JP2002234497 A JP 2002234497A JP 2002234497 A JP2002234497 A JP 2002234497A JP 3656845 B2 JP3656845 B2 JP 3656845B2
Authority
JP
Japan
Prior art keywords
data
image
process proceeds
golf
address
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.)
Expired - Fee Related
Application number
JP2002234497A
Other languages
Japanese (ja)
Other versions
JP2003079950A (en
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.)
Konami Group Corp
Original Assignee
Konami Corp
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
Application filed by Konami Corp filed Critical Konami Corp
Priority to JP2002234497A priority Critical patent/JP3656845B2/en
Publication of JP2003079950A publication Critical patent/JP2003079950A/en
Application granted granted Critical
Publication of JP3656845B2 publication Critical patent/JP3656845B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/303Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device for displaying additional data, e.g. simulating a Head Up Display
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8011Ball

Description

【0001】
【発明の属する技術分野】
本発明は、プログラムデータの記録された、光ディスク、磁気ディスク、半導体メモリを用いたカセット式記録媒体等を用いるゲームシステムに適用して好適な、ゲームシステム並びに記録媒体に関する。
【0002】
【従来の技術】
ゲームシステムは数多く提案されている。家庭用の専用機とテレビジョンモニタとからなるシステム、業務用の専用機、パーソナルコンピュータ若しくはワークステーションとディスプレイと音声出力機とからなるシステム等である。これらのシステムは、何れも、プレーヤが操作するためのコントローラと、ゲームプログラムデータの記録された記録媒体と、ゲームプログラムデータに基いて音声や画像の生成のための制御を行うCPUと、画像を生成するためのプロセッサと、音声を生成するためのプロセッサと、画像を表示するためのCRTと、音声を出力するためのスピーカとで構成される。上記記録媒体としては、CD−ROM、半導体メモリ、半導体メモリを内蔵したカセット等が多い。ゲームシステムの構成は以上の通りである。
【0003】
次に、ゲームの画面構成について説明する。ゲームの種類は多々あるが、ゲームの画面は、最もおおまかに言えば、上記コントローラの操作に基いて変化する、被操作物画像と、静止若しくは上記被操作物の操作状態により適応的に変化する背景画像とからなる。この背景画像を更に分類すると、ゲームプレーヤに対して視覚的変化を与えるだけに用いられるもの、即ち、単なる背景と、ゲームプレーヤに与えられる成果、例えば得点等を得るための条件として用いられるものとに分けることができる。後者の例としては、例えばゴルフゲームにおけるコースの背景画像がある。
【0004】
通常、ゴルフゲームでは、ゴルフコースを示す画像と、ゴルファーを示す画像とがテレビジョンモニタの表示面上に表示されることにより、その表示面上にゴルフゲーム空間が形成される。そして、ゲームプレーヤによるコントローラの操作に応じて、上記ゴルフゲーム空間上のゴルファーが視覚的に動かされ、上記ゴルファーの持つクラブで、ボールが打たれる。打たれたボールは、ゴルフゲーム空間内において奥行き方向に向かって視覚的に飛ぶ。つまり、ゴルフゲーム空間内において、実際に人間が行うゴルフと同様なことが視覚的に行われる。簡単にいえば、いわゆるビデオゲームにおけるゴルフゲームは、ゲームプレーヤのコントローラの操作に応じて、テレビジョンモニタの管面上に表示する画像を適宜変更することにより、ゴルフを視覚的に行うというものである。
【0005】
上記ゴルフコースの画像は、ゴルフコースの高低データと関連づけられている。そして、ゲームプレーヤによるコントローラの操作と、ゴルフコースの高低データとから、ゴルフボールが、ゴルフゲーム空間内においてどのくらい移動するのかが演算され、その演算結果が、画像として表示される。例えば、ゴルフボールが、グリーン内の非常に低い位置にあるときに、ゲームプレーヤが、ゴルフゲーム空間内のゴルファーが非常に高い位置に向かってゴルフボールを弱く打つように、コントローラを操作した場合、ゴルフゲーム空間内のゴルフボールは、ゲームプレーヤの意図した位置には移動しない。このように、コースの画像の各部分に対応づけられている高低データを用いるのは、ゴルフゲームを行うゲームプレーヤに対し、より、実際のゴルフに近い感覚を与えるためである。
【0006】
【発明が解決しようとする課題】
ところで、上述したゴルフゲームのように、背景の各位置に高低データが関連づけられるようなゲームでは、ゲームプレーヤが適切に操作を行えるようにするために、コースの高低を正確に表示する必要がある。コースの高低が何らかの形で表現されていないと、ゲームプレーヤは、コントローラの操作を適切に行えないからである。
【0007】
本発明はこのような点を考慮してなされたもので、背景の各頂点に高低データが関連づけられているようなゲームにおいて、簡単、且つ、正確に、ゲームプレーヤに対して、操作のガイドを行うことを目的とする。
【0008】
【課題を解決するための手段】
本発明は、ゴルフコースを表示するゴルフゲームシステムであって、前記ゴルフコースの所定範囲内に存在する任意の頂点間に線を表示すると共に、各線の輝度を、その始点に対応する前記ゴルフコースの高さと、その終点に対応する前記ゴルフコースの高さと、の関係に応じて設定することを特徴とするゲームシステムである。
【0009】
また、本発明は、ゴルフコースを表示するようゲームシステムを動作させるためのプログラムを記録した記録媒体であって、前記ゴルフコースの所定範囲内に存在する任意の頂点間に線を表示すると共に、各線の輝度を、その始点に対応する前記ゴルフコースの高さと、その終点に対応する前記ゴルフコースの高さと、の関係に応じて設定するプログラムを記録した記録媒体である。
【0010】
他の発明の1つは、地形を示す画像情報と、移動物体の画像情報とを表示手段の表示面上に表示し、上記移動物体を、操作手段の操作状態と、上記地形の地形情報とに基いて、上記表示手段の表示面上において移動するようにした地形情報を用いるゲームシステムにおけるガイド表示方法であって、上記表示手段の表示面上に、複数の線で構成されるガイドを表示すると共に、当該ガイドを構成する線の輝度及び長さを、上記地形の地形情報に基いて設定するものである。
【0011】
他の発明の1つは、地形を示す画像情報と、移動物体の画像情報とを表示手段の表示面上に表示し、上記移動物体を、操作手段の操作状態と、上記地形の地形情報とに基いて、上記表示手段の表示面上において移動するようにした地形情報を用いるゲームシステムにおけるガイド表示方法であって、上記表示手段の表示面上に、複数の線で構成されるガイドを表示すると共に、当該ガイドを構成する線の輝度及び長さを、上記地形の地形情報に基いて設定するものである。
【0012】
また、上記発明において、上記地形を示す画像情報は、上記表示手段の表示面上において疑似3次元表示され、上記ガイドは、2次元平面上において、マトリクス状に配置された複数の線で構成されると共に、上記表示手段の表示面上に疑似3次元表示された地形上に、疑似3次元表示されるものである。
【0013】
また、上記発明において、上記ゲームシステムは、ゴルフゲームシステムであり、上記地形を示す画像情報は、ゴルフコースの画像情報であり、上記移動物体は、ゴルフボールの画像情報である。また、上記発明において、上記地形の画像情報は、多数のポリゴンで構成されるものであり、上記ガイドは、上記ポリゴンの頂点間に描画される複数の線で構成されるものである。
【0014】
また、上記発明において、上記地形情報は、頂点の高さを示す情報であり、上記ガイドを形成する線の輝度は、各線の始点及び終点に対応する地形情報の頂点の高さの値に応じて設定されるものである。また、上記発明において、上記移動物体の移動方向を予め設定すると共に、設定された上記移動物体の移動方向に応じて上記地形の画像情報及び上記ガイドを疑似3次元表示するものである。
【0015】
また、上記発明において、上記各線の輝度の値は、上記始点の高さが上記終点の高さよりも高い場合には、輝度が上記始点から上記終点に向かって徐々に低くなるよう設定され、上記始点の高さが上記終点の高さよりも低い場合には、輝度が上記始点から上記終点に向かって徐々に高くなるよう設定される請求項1記載の地形情報を用いるものである。
プレーヤが操作手段を操作することにより、ゲーム空間上の移動物体を打撃して当該移動物体をゲーム空間上において移動させるようにしたゲームシステムで用いられる移動物体の打撃位置設定方法であって、上記移動物体をゲーム空間上に固定表示し、水平方向位置設定用画像を少なくとも上記移動物体上で水平方向に移動するように表示し、プレーヤが上記操作手段の対応ボタンを押したときの上記水平方向位置設定用画像の水平位置を記憶し、垂直方向位置設定用画像を少なくとも上記移動物体上で垂直方向に移動するように表示し、プレーヤが上記操作手段の対応ボタンを押したときの上記垂直方向位置設定用画像の垂直位置を記憶し、プレーヤが上記操作手段を操作して上記移動物体をゲーム空間上で打撃する際に、上記移動物体上の打撃位置を、上記水平位置及び垂直位置で示される位置とするものである。
【0016】
【発明の実施の形態】
以下に、図1〜図26を順次参照して本発明の実施の形態について詳細に説明する。
【0017】
本発明の実施の形態の説明は、次に示す項目説明を各項目の先頭に記載し、各項目について次に示す順序で説明する。
【0018】
A.ゲームシステムの構成(図1)
B.図1に示したCPU1の有する機能(図2)
C.ゴルフコースの一例(図3A)
D.ゴルフコースから抽出された抽出エリア(図4A)
E.ゴルフコースのデータテーブル(図4B)
F.ゴルフ画面の表示例(図5)
G.メインルーチンによる制御(図6〜図8)
H.画像表示ルーチンS100による制御(図9〜図10)
I.アンデュレーション画像出力ルーチンS150(図11〜図12)
J.ティーアップ設定ルーチンS200による制御(図13〜図14)
K.カメラ位置設定ルーチンS250による制御(図15〜図16)
L.方向設定ルーチンS300による制御(図17〜図18)
M.スタンス設定ルーチンS350による制御(図19〜図20)
N.クラブ設定ルーチンS400による制御(図21〜図22)
O.打撃位置設定ルーチンS450による制御(図23〜図24)
P.打撃ルーチンS500による制御(図25〜図26)
【0019】
A.ゲームシステムの構成(図1)
【0020】
図1は、本発明の一実施の形態としてのゲームシステムの構成例を示す構成図である。
【0021】
〔接続及び構成〕
この図1に示されるゲームシステムは、ゲーム機本体と、プログラムデータの記録された記録媒体30とからなる。ゲーム機本体は、CPU1に、アドレス、データ及びコントロールバスからなるバス2が接続され、このバス2に、グラフィックスデータ生成プロセッサ3、インターフェース回路4、メインメモリ5、ROM6、伸張回路7、パラレルポート8、シリアルポート9、描画処理プロセッサ10及びバッファ11、音声処理プロセッサ13及びバッファ14、デコーダ17及びバッファ18、インターフェース回路20及びメモリ21とが夫々接続され、更に、描画処理プロセッサ10にテレビジョンモニタ12が接続され、音声処理プロセッサ13に増幅回路14を介してスピーカ16が接続され、デコーダ17に記録媒体ドライバ19が接続され、インターフェース回路20にコントローラ22が接続されて構成される。
【0022】
ここで、上記ゲームシステムは、用途に応じてその形態が異なる。即ち、上記ゲームシステムが、家庭用として構成されている場合においては、テレビジョンモニタ12及びスピーカ16はゲーム機本体とは別体となる。また、上記ゲームシステムが、業務用として構成されている場合においては、図1に示されている構成要素はすべて一体型となっている1つの筺体に収納される。また、上記ゲームシステムが、パーソナルコンピュータやワークステーションを核として構成されている場合においては、上記テレビジョンモニタ12は、上記コンピュータ用のディスプレイに対応し、上記描画処理プロセッサ10、音声処理プロセッサ13、伸張回路7は、夫々上記記録媒体30に記録されているプログラムデータの一部若しくはコンピュータの拡張スロットに搭載される拡張ボード上のハードウエアに対応し、上記インターフェース回路4、上記パラレルポート8、上記シリアルポート9及びインターフェース回路20は、コンピュータの拡張スロットに搭載される拡張ボード上のハードウエアに対応する。また、上記バッファ11、14及び18は、夫々メインメモリ5若しくは図示しない拡張メモリの各エリアに対応する。本形態では、上記ゲームシステムが、家庭用として構成されている場合を例にとり説明する。
【0023】
次に、図1に示した各構成要素についてより詳細に説明する。グラフィックスデータ生成プロセッサ3は、CPU1のいわばコプロセッサとしての役割を果たす。即ち、このグラフィックスデータ生成プロセッサ3は、座標変換や光源計算、例えば固定小数点形式の行列やベクトルの演算を、並列処理により行う。このグラフィックスデータ生成プロセッサ3の主な処理は、CPU1から供給される画像データの2次元若しくは3次元面内における各頂点の座標データと、移動量データと、回転量データとに基いて、処理対象画像の表示エリア上におけるアドレスを求め、当該アドレスデータを、再びCPU1に返す処理や、仮想的に設定された光源からの距離に応じて、画像の輝度を計算する処理等である。
【0024】
上記インターフェース回路4は、周辺デバイス、例えばマウスやトラックボール等のポインティングデバイス等のインターフェース用である。上記ROM6はゲームシステムのオペレーティングシステムとしてのプログラムデータが、記憶されている。パーソナルコンピュータで言えば、BIOS(Basic Input Output System)に相当する。
【0025】
上記伸張回路7は、MPEG(Moving Picture Engineering Group)やJPEG(Joint Picture Engineering Group)に準拠したイントラ符号化により圧縮された圧縮画像に対し、伸張処理が施される。伸張処理は、デコード処理(VLC:Variavle Length Codeによりエンコードされたデータのデコード)、逆量子化処理、IDCT(Inverse Discrete Cosine Transform)処理、イントラ画像の復元処理等である。
【0026】
描画処理プロセッサ10は、CPU1が発行する描画命令に基いて、バッファ11に対する描画処理を行う。バッファ11は、表示エリアと非表示エリアとからなる。表示エリアは、テレビジョンモニタ12の表示面上に表示するデータの展開エリアである。非表示エリアは、テクスチャデータやカラーパレットデータ等の記憶エリアである。ここで、テクスチャデータは、2次元の画像データである。カラーパレットデータは、テクスチャデータ等の色を指定するためのデータである。これらのデータは、記録媒体30から一度、若しくはゲームの進行状況に合致して複数回に分けて、CPU1により、予めバッファ11の非表示エリアに記憶される。
【0027】
描画命令としては、例えばラインを描画するための描画命令、ポリゴンを用いて立体的な画像を描画するための描画命令、通常の2次元画像を描画するための描画命令がある。ここで、ポリゴンは、多角形の2次元画像であり、本形態においては、三角形若しくは四角形が用いられる。
【0028】
ラインを描画するための描画命令は、ラインの描画開始及び終了アドレス、色及びライン描画を意味するデータからなる。このライン描画命令は、CPU1により、直接、描画処理プロセッサ10に対して発行される。
【0029】
ポリゴンを用いて立体的な画像を描画するための描画命令は、バッファ11の表示エリア上におけるポリゴン頂点アドレスデータ、ポリゴンに貼り付けるテクスチャデータのバッファ11上における記憶位置を示すテクスチャアドレスデータ、テクスチャデータの色を示すカラーパレットデータのバッファ11上における記憶位置を示すカラーパレットアドレスデータ並びにテクスチャの輝度を示す輝度データとからなる。これらのデータの内、表示エリア上のポリゴン頂点アドレスデータは、グラフィックスデータ生成プロセッサ3が、CPU1からの、3次元空間上におけるポリゴン頂点座標データを、CPU1からの移動量データ及び回転量データに基いて、座標変換することによって新たに求められるポリゴン頂点座標データの内の、x及びy方向の座標データからなるものである。また、輝度データは、上記グラフィックスデータ生成プロセッサ3が、CPU1からの、上記座標変換後のポリゴン頂点座標データが示す位置から、仮想的に配置された光源までの距離に基いて、決定される。
【0030】
上記ポリゴン頂点アドレスデータは、バッファ11の表示エリア上のアドレスを示す。描画処理プロセッサ10は、3若しくは4個のポリゴン頂点アドレスデータで示されるバッファ11の表示エリアの範囲に、対応するテクスチャデータを書き込む。この処理は、一般に、「テクスチャの貼り付け」等と称されている。
【0031】
1つの物体は、多数のポリゴンで構成される。CPU1は、各ポリゴンの3次元空間上の座標データを、メインメモリ5上に保持している。そして、コントローラ22の操作により、表示面上で物体を動かす場合、言い換えれば、物体そのものの動きを表現する場合若しくは物体を見ている位置(視点位置)を変える場合、次のような処理が行われる。即ち、CPU1は、グラフィックスデータ生成プロセッサ3に対し、メインメモリ5上に保持している各ポリゴンの頂点の3次元座標データと、各ポリゴンの移動量データ及び回転量データを与える。グラフィックスデータ生成プロセッサ3は、各ポリゴンの頂点の3次元座標データと、各ポリゴンの移動量データ及び回転量データとに基いて、順次、各ポリゴンの移動後及び回転後の3次元座標データを求める。このようにして求められた各ポリゴンの3次元座標データが2次元座標データに変換され、水平及び垂直方向の座標データが、バッファ11の表示エリア上のアドレスデータ、即ち、ポリゴン頂点アドレスデータとして、描画処理プロセッサ10に供給される。描画処理プロセッサ10は、3個若しくは4個のポリゴン頂点アドレスデータによって示されるバッファ11の三角形若しくは四角形の表示エリア上に、予め割り当てられているテクスチャアドレスデータが示すテクスチャデータを書き込む。これによって、テレビジョンモニタ12の表示面上には、多数のポリゴンにテクスチャデータの貼り付けられた物体が表示される。
【0032】
通常の2次元画像を描画するための描画命令は、頂点アドレスデータ、テクスチャアドレスデータ、テクスチャデータの色を示すカラーパレットデータのバッファ11上における記憶位置を示すカラーパレットアドレスデータ、並びにテクスチャの輝度を示す輝度データとからなる。これらのデータの内、頂点アドレスデータは、グラフィックスデータ生成プロセッサ3が、CPU1からの2次元平面上における頂点座標データを、CPU1からの移動量データ及び回転量データに基いて、座標変換して得られる座標データである。以下、描画処理については、「描画命令を発行する」等のように簡略化して記載する。
【0033】
音声処理プロセッサ13は、記録媒体30から読み出されたADPCMデータを、バッファ14に記憶し、このバッファ14に記憶されたADPCMデータを音源とする。そして、音声処理プロセッサ13は、ADPCMデータを、例えば44.1KHzの周波数のクロックで読み出す。そして、そして音声処理プロセッサ13は、バッファ14から読み出したADPCMデータに対し、ピッチの変換、ノイズの付加、エンベロープの設定、レベルの設定、リバーブの付加等の処理を施す。記録媒体30から読み出される音声データがPCMデータの場合においては、音声処理プロセッサ13により、ADPCMデータに変換される。また、PCMデータに対するプログラムデータによる処理は、メインメモリ5上において直接行われる。メインメモリ5上において処理されたPCMデータは、音声処理プロセッサ13に供給されてADPCMデータに変換された後に、上述した各種処理が施された後に、音声としてスピーカ16から出力される。
【0034】
記録媒体ドライバ19は、例えばハードディスクドライブ、光ディスクドライブ、フレキシブルディスクドライブ、シリコンディスクドライブ、カセット媒体読みとり機等である。記録媒体30は、例えばハードディスク、光ディスク、フレキシブルディスク、半導体メモリ等である。記録媒体ドライバ19は、記録媒体30から画像、音声、プログラムデータを読み出し、読み出したデータを、デコーダ17に供給する。デコーダ17は、記録媒体ドライバ19からの再生データに対し、ECC(Error Correction Code)によるエラー訂正処理を施し、エラー訂正処理を施したデータを、メインメモリ5若しくは音声処理プロセッサ13に供給する。
【0035】
メモリ21は、例えば、ホルダ及びカード型のメモリからなる。カード型のメモリは、例えば終了時点の状態を保持する等のように、ゲームの各種パラメータを保持するためのものである。コントローラ22は、左キーL、右キーR、上キーU、下キーDからなる十字キーと、左ボタン22L、右ボタン22R、スタートボタン22a、セレクトボタン22b、第1ボタン22c、第2ボタン22d、第3ボタン22e、第4ボタン22fとからなる。十字キーは、ゲームプレーヤが、CPU1に対し、上下左右を示すコマンドを与えるものである。スタートボタン22aは、ゲームプレーヤが、記録媒体30からロードされるゲームプログラムデータの開始をCPU1に指示するためのものである。セレクトボタン22bは、ゲームプレーヤが、記録媒体30からメインメモリ5にロードされるゲームプログラムデータに関する各種選択を、CPU1に指示するためのものである。尚、左キーL、右キーR、第1〜第4ボタン22c、22d、22e、22fの機能は、記録媒体30からロードされるゲームプログラムデータによって異なる。
【0036】
〔動作〕
電源スイッチ(図示せず)がオンにされ、ゲームシステムに電源が投入される。このとき、記録媒体30が、記録媒体ドライバ19に装填されていると、CPU1が、ROM6に記憶されているオペレーティングシステムに基いて、記録媒体ドライバ19に対し、記録媒体30からのプログラムデータの読み出しを指示する。これにより、記録媒体ドライバ19は、記録媒体30から画像、音声及びプログラムデータを読み出す。読み出された画像、音声及びプログラムデータは、デコーダ17に供給され、ここで、エラー訂正処理が施される。デコーダ17においてエラー訂正処理の施された画像データは、バス2を介して伸張回路7に供給され、ここで、上述した伸張処理が施された後に、描画処理プロセッサ10に供給され、この描画処理プロセッサ10により、バッファ11の非表示エリアに書き込まれる。
【0037】
デコーダ17においてエラー訂正処理の施された音声データは、メインメモリ5若しくは音声処理プロセッサ13に供給され、メインメモリ5若しくはバッファ14に書き込まれる。また、デコーダ17においてエラー訂正処理の施されたプログラムデータは、メインメモリ5に供給され、このメインメモリ5に書き込まれる。以降、CPU1は、メインメモリ5に記憶されているゲームプログラムデータ、並びにゲームプレーヤが、コントローラ22を介して指示する内容に基いて、ゲームを進行する。即ち、CPU1は、コントローラ22を介してゲームプレーヤから指示される指示内容に基いて、適宜、画像処理の制御、音声処理の制御、内部処理の制御を行う。画像処理の制御とは、2次元若しくは3次元座標データや視点位置データのグラフィックスデータ生成プロセッサ3への供給、グラフィックスデータ生成プロセッサ3が求めたバッファ11の表示エリア上のアドレスデータや輝度データを含む描画命令の発行等である。音声処理の制御とは、音声処理プロセッサ13に対する音声出力コマンドの発行、レベル、リバーブ等の指定である。内部処理の制御とは、例えばコントローラ22の操作に応じた演算等である。
【0038】
B.図1に示したCPU1の有する機能(図2)
【0039】
図2は、図1に示したCPU1の有する機能を示す説明図である。CPU1は、図1に示した記録媒体30から読み出され、メインメモリ5に記憶されたプログラムデータを読むことにより、図2に示す機能を持つ。この図2に示されているように、CPU1の機能は、ボタン操作検出手段1a、視点位置データ設定手段1b、表示範囲情報抽出手段1c、演算手段1d、結果情報設定手段1e、判断手段1h、描画命令発行手段1g、変数設定手段1h、アドレス設定手段1i、アドレス取得手段1j、高さデータ補正手段1k、アンデュレーション出力判断手段1m、アンデュレーション画像描画手段1n、パラメータ管理手段1o、乱数発生手段1p、輝度処理手段1qとで構成される。これらの手段は、夫々項目C〜項目Oにおいて説明する制御の主体となる。
【0040】
C.ゴルフコースの一例(図3A)
【0041】
図3Aは、ゴルフコースの一例を示す説明図であり、この図において、ゴルフコースは、説明の便宜上、マトリクス状に領域が仕切られている。この図3Aに示されているように、ゴルフコースには、ティーグラウンドTgと、グリーンGrとが含まれる。また、ゴルフコース上に示される各縦線と各横線の各交点には、夫々アドレス(x、y)が与えられている。この例では、最小アドレスは(0、0)、最大アドレスは、(200、530)となっている。これらのアドレスデータは、テクスチャ番号データと関連づけられ、記録媒体30に記録されている。
【0042】
D.ゴルフコースから抽出された抽出エリア(図4A)
【0043】
図4Aは、図3に示したゴルフコースから、視点位置データに基いて抽出された抽出エリアAr1を示す説明図である。尚、この図4Aは、図3に示したゴルフコースよりも、コース上に設定されている情報が細かく示されている。この図4Aに示されているように、ゴルフコースは、三角形若しくは四角形の多くのポリゴンで構成される。そして、図4A中に示されている黒い点は、夫々ポリゴンの頂点を示している。この頂点の高さデータも、上述と同様に、テクスチャ番号データと関連づけられ、記録媒体30に記録されている。図1に示したグラフィックスデータ生成プロセッサ3は、高さデータに基いて光源計算を行い、その結果に基いて、各テクスチャの輝度データの値を設定する。ゴルフコースの光源は、ゴルフコースの上に設定されるので、光源との距離は、高さデータが基準となる。
【0044】
E.ゴルフコースのデータテーブル(図4B)
【0045】
図4Bは、ゴルフコースのデータテーブルを示す説明図である。この図4Bに示されているように、1つのゴルフコースに対して1つのデータテーブルが用意されている。そして、1つのデータテーブルは、この図4Bに示されているように、0〜n番までのポリゴン頂点番号データ、この0〜n番までのポリゴン頂点データについて夫々登録されている水平方向アドレスデータx、垂直方向アドレスデータy、高さデータz、輝度データLuからなる。元々テーブルに登録されている高さデータは、ゴルフボールの位置を基準として、随時、補正され、書き換えられる。そして、輝度データLuは、補正された高さデータに基いて、輝度処理手段1qにより演算により求められ、このテーブルに登録される。テーブルに登録された輝度データLuは、既に説明したテクスチャアドレスデータ等と共に、描画命令として、図1に示した描画処理プロセッサ10に供給される。描画処理プロセッサ10は、描画命令中の輝度データの値が示す輝度で、描画すべきデータを表示する。
【0046】
ここで、上記ポリゴン頂点番号データは、図4において黒い点で示した、ポリゴンの頂点のインデックス番号である。また、上記水平及び垂直方向アドレスデータは、図3に示したアドレスx、yである。
【0047】
F.画面表示例(図5)
【0048】
図5は、画面表示例を示す説明図である。この図5に示すように、基本的な画面は、左上及び右上の文字情報の表示エリアと、エリアAr2、Ar3、Ar4と、ゴルファーMa及びそのコースの表示エリア(図中中央)と、ガイドGu1の表示エリアとで構成される。
【0049】
ここで、左上のエリアには、この例に示されるように、打数を示す文字(0STROKE)と、ゴルファーの番号(複数の場合の1人目、2人目の意味である)を示す文字と、残りの距離を示す文字(REST 518y)とからなる。そして、更に、このエリアの真下の領域には、風力を示す文字(WIND 4m)が表示され、その下には風向きを示す矢印Byの画像が表示される。
【0050】
また、エリアAr2には、例えばゴルフクラブの選択、ティーアップ、打撃位置等の設定すべき事項のタイトルが表示され、エリアAr3には、上記設定すべき事項の画像(例えばゴルフクラブ等)が表示される。また、ガイドGu1には、ゴルフボールの飛距離、位置を示すための指示画像Inが表示される。この指示画像Inは、上記設定に応じて随時その表示状態が変更される。また、エリアAr4には、ゴルフボールの画像と地面が表示される。
【0051】
また、画面の中央には、ゴルフクラブCbを持つゴルファーMaの画像と、グリーンGr等のコースの風景が表示されると共に、このゴルファーMaの位置(若しくはボールの位置)から打撃方向に向かって、ガイドGu2が表示される。このガイドGu2は、図3Bに示されるように、2次元平面上においてマトリクス状の形状となっており、多数の直線の集まりによって形成される。このガイドGu2は、図5に示されるように、ゴルファーMaの位置から打撃方向に向かって地形に合致するように、即ち、地形と同様に、疑似3次元表示される。そして、更に、ガイドGu2は、各部の下に位置する地形の高さに応じてその輝度が可変されている。この例では、ガイドGu2は、その真下の地形の高さが高い程、輝度が高く設定され、その真下の地形の高さが低い程、輝度が低く設定される。これにより、ゲームプレーヤは、地形の高低が判別でき、例えばコントローラ22で打撃設定を行う際に、その設定値を強くする等のように、よりゴルフゲーム空間内の地形に応じたゲーム運びを行うことができる。
【0052】
既に説明したように、上記ガイドGu2は、地形を構成するポリゴンの各頂点間を線描画命令に基いて、図1に示した描画処理プロセッサ10が描画した多数の線により形成される。線描画命令中には、各ポリゴン頂点の輝度データが含まれているので、描画処理プロセッサ10は、線の輝度を、始点に対応するポリゴンの頂点の輝度、並びに終点に対応するポリゴンの頂点の輝度に基いて決定する。例えば、始点の輝度が、終点の輝度よりも高いときには、線の輝度は、始点が最も高く、終点に近づくにつれて徐々に低くなるように決定される。一方、始点の輝度が、終点の輝度よりも低いときには、線の輝度は、始点が、最も低く、終点に近づくにつれて徐々に高くなるように決定される。尚、図5においては、作図の都合上、1本の線の内部でのこのようなグラデーションの表現はしていない。
【0053】
図3A及び図4を参照して説明したように、通常、風景の各部分は、高さデータが設定されている。そして、図1に示したグラフィックスデータ生成プロセッサ3は、この高さデータと、視点位置に基いた仮想的な光源の位置に基いて光源計算を行い、その結果に応じて各部の輝度を設定する。よって、風景そのものだけである程度の距離、高低を表現することはできる。しかしながら、光源計算で求めた輝度の違いでコース内での距離や高低を表現するだけでは、これをガイドとした場合に、コントローラ22の操作を適切に行うことができない。そこで、ガイドGu2を表示するようにする。これによれば、同じ長さの直線からなるガイドGu2の各部分が、コース内の高低に応じた明るさ、且つ、距離に応じた長さとなるので、ゴルフコースの距離及び高低を、より分かり易く表現することができる。従って、ゲームプレーヤは、コントローラ22を、よりゲーム空間内のゴルフコースの条件に合致させて操作することができる。
【0054】
G.メインルーチンによる制御(図6〜図8)
【0055】
図6〜図8は、メインルーチンによる制御動作を説明するためのフローチャートである。尚、ステップS1のみ、図1に示したROM6に記憶されているオペレーティングシステムによる制御動作である。他のステップは、記録媒体30から読み出されたゲームプログラムデータによる制御動作である。また、ゲームプログラムデータによる制御の主体は、既に説明したように、図2に示したCPU1の機能としての各手段である。
【0056】
ステップS1では、オペレーティングシステムの命令により、記録媒体ドライバ19が、記録媒体30から画像、音声及びプログラムデータを読み出す。読み出されたデータの内、プログラムデータは、メインメモリ5に記憶される。これにより、CPU1は、図2に示した機能を有する。尚、このとき、画像、即ち、テクスチャデータは、描画処理プロセッサ10のバッファ11に記憶され、夫々テクスチャ番号が割り当てられるものとする。また、音声データは、音声処理プロセッサ13のバッファ14に記憶され、夫々音声番号データが割り当てられるものとする。通常、すべての画像及び音声データが、ステップS1においてバッファ11及び14に保持されることはないが、説明の便宜上、すべての画像及び音声データが、ステップS1においてロードされるものとする。
【0057】
ステップS2では、ボタン操作検出手段1aが、コントローラ22のスタートボタン22aが押された否かを判断し、「YES」であればステップS3に移行する。
【0058】
ステップS3では、描画命令発行手段1gが、セレクト画像の描画を示す描画命令を、図1に示した描画処理プロセッサ10に対して発行する。描画処理プロセッサ10は、上記描画命令に基いて、セレクト画像の画像データを、バッファ11の表示面上に展開する。これにより、テレビジョンモニタ12の表示面上には、セレクト画像が表示される。
【0059】
ステップS4では、ボタン操作手段1aが、コントローラ22のスタートボタン22aが押されたか否かを判断し「YES」であればステップS5に移行する。
【0060】
ステップS5では、CPU1が、セレクトされたゲームにセットする。ここで、「セレクトされる」とは、ゲームプレーヤが、ステップS3で表示されたセレクト画像を参照して、十字キーを用いてゲームを選択し、この後に、スタートボタン22aを押すことを意味する。また、ここで「ゲーム」とは、ゲームそのものの他、例えば対戦型格闘ゲームにおけるキャラクタ等も含む。要するに、ゲームが実際に開始される前の選択事項である。
【0061】
ステップS6では、描画命令発行手段1gが、セレクトされたゲームの初期画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。これにより、描画処理プロセッサ10は、バッファ11の表示エリア上に初期画像の画像データを、展開する。これにより、テレビジョンモニタ12の表示面上には、初期画像が表示される。
【0062】
ステップS7では、変数設定手段1hが、メインメモリ5に保持しているフラグや変数を夫々リセットする。
【0063】
ステップS8では、視点位置データ設定手段1bが、メインメモリ5に保持されている視点位置データEx、Ey、Ezの値を、夫々初期値にセットする。ここで「初期値」とは、例えばゴルフコースのティーグラウンドTgの位置を示すアドレスデータである。
【0064】
ステップS100では、画像表示処理を行う。この画像表示処理ルーチンについては後に詳述する。簡単に言えば、このルーチンにおいては、ステップS8で設定された視点位置データEx、Ey、Ezに応じた画像が、表示される。
【0065】
ステップS9では、演算手段1dが、視点位置データEx、Ey、Ezに変数Rx、Ry、Rz(一定ではない)を、夫々加算する。ここで、視点位置データEx、Ey、Ezは、夫々水平方向アドレス、垂直方向アドレス、及び高さを示す。
【0066】
ステップS10では、判断手段1fが、視点位置データEyが最大値EYmaxを越えたか否かを判断し、「YES」であればステップS11に移行し、「NO」であれば再びステップS100に移行する。上記ステップS100からS10からなるループは、視点位置データの値を変える都度、画像表示処理ルーチンS100により画像表示を行うことで、ゴルフコースを、ゲームプレーヤに案内するように表示するためである。
【0067】
ステップS11では、視点位置データ設定手段1bが、視点位置データEx、Ey、Ezに、夫々初期値をセットする。
【0068】
ステップS100では画像表示処理を行う。
【0069】
ステップS200では、ティーアップ設定処理を行う。このティーアップ設定処理ルーチンS200については後に詳述する。「ティーアップ設定」とは、ティーショットの位置の設定を意味する。
【0070】
ステップS150では、アンデュレーション画像出力処理を行う。アンデュレーション画像出力ルーチンS150については後に詳述する。アンデュレーション画像とは、図5において説明したガイドGu2の画像である。既に説明したように、アンデュレーション画像は、ゴルフゲーム空間内のコースの距離及び高低をよりわかり易くするためのガイドである。このガイドGu2は、高いところに対応する位置ほど、その輝度が高く設定され、遠いところに対応する位置ほど、その長さが短く表示される。尚、他のステップS150も、同じ内容である。
【0071】
ステップS250では、カメラ位置設定処理を行う。「カメラ位置」とは、ゴルフコース及びゴルファーの撮像位置を意味する。このカメラ位置設定処理ルーチンS250については後に詳述する。
【0072】
ステップS300では、方向設定処理を行う。「方向」とは、ゴルファーの体の向きを意味する。この方向設定ルーチンS300については後に詳述する。
【0073】
ステップS12では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればステップS350に移行する。このステップS12は、方向設定ルーチンS300による方向設定を終了するか否かを判断するステップである。即ち、ゲームプレーヤが、第4ボタン22fを押さない限り、方向設定ルーチンS300に移行すると共に、この後、方向設定ルーチンS300で設定された方向設定値Diに基いたアンデュレーション画像の表示が、アンデュレーション画像出力ルーチンS150において行われる。
【0074】
ステップS350では、スタンス設定処理が行われる。「スタンス」とは、ゴルファーの姿勢を意味する。このスタンス設定ルーチンS350については後に詳述する。
【0075】
ステップS400では、クラブ設定処理が行われる。「クラブ」とは、アイアン、ウッド等のゴルフクラブを意味する。このクラブ設定ルーチンS400については後に詳述する。
【0076】
ステップS450では、打撃位置設定処理が行われる。「打撃位置」とは、ゴルフボールに対してクラブのヘッド部分が当たる位置を意味する。この打撃位置設定ルーチンS450については後に詳述する。
【0077】
ステップS500では、打撃処理が行われる。この処理においては、打たれたゴルフボールや背景等の画像処理が主に行われる。この打撃ルーチンS500については後に詳述する。
【0078】
ステップS13では、判断手段1fが、最後のボール位置がホール位置か否かを判断し、「YES」であればステップS13に移行し、「NO」であればステップS14に移行する。ここで最後のボール位置がホール位置か否かを判断するのは、カップ・インした場合と、カップ・インしない場合とでは、その後の処理を変える必要があるからである。
【0079】
ステップS14では、描画命令発行手段1gが、スコア画像の描画を示す描画命令を、描画処理プロセッサ1gに対して発行する。次に、結果情報設定手段1eが、打数等を示す文字データを、描画処理プロセッサ10に供給する。これにより、描画処理プロセッサ1gは、結果情報を反映したスコア画像を、バッファ11の表示エリア上に展開する。これにより、テレビジョンモニタ12の表示面上には、結果の反映されたスコア画像が表示される。そして、この後、再びステップS3に移行する。
【0080】
ステップS15では結果情報設定手段1eが、最後のボール位置までの飛距離を示す文字データを、描画処理プロセッサ10に供給する。これにより、描画処理プロセッサ1gは、最後のボール位置までの飛距離を示す画像データを、バッファ11の表示エリア上に展開する。これにより、最後のボール位置までの飛距離が、画像としてテレビジョンモニタ12に表示される。
【0081】
ステップS16では、視点位置データ設定手段1bが、最後のボール位置データBxn,Byn、Bznを、視点位置データEx、Ey、Ezに夫々代入する。この後、再びステップS100の画像表示処理ルーチンS100に移行する。これによって、最後のボール位置を視点位置とした画像が表示される。
【0082】
H.画像表示ルーチンS100による制御(図9〜図10)
【0083】
図9〜図10は、画像表示ルーチンS100による制御動作を説明するためのフローチャートである。
【0084】
ステップS101では、アドレス設定手段1iが、ゴルフコースの水平方向最小アドレスXmin、垂直方向最小アドレスYmin、水平方向最大アドレスXmax、垂直方向最大アドレスYmaxをセットする。図3に示したゴルフコースを例にとると、最小アドレスは、(0、0)、最大アドレスは、(200、530)となる。以下、x及びXは、水平方向のアドレスであることを意味し、y及びYは、垂直方向のアドレスであることを意味し、z及びZは、高さであることを意味する。
【0085】
ステップS102では、アドレス取得手段1jが、視点位置データEx、Ey、Ezに基いて、表示範囲内の水平方向最小アドレスデータADxmin、垂直方向最小アドレスデータADymin、水平方向最大アドレスデータADxmax垂直方向最大アドレスデータADymaxを、図4Bに示したテーブルから求める。ここで、表示範囲とは、図4Aに示したような抽出エリアAr1を意味する。
【0086】
ステップS103では、変数設定手段1hが、アドレスデータADxに、ゴルフコースの最小アドレスXminを代入する。
【0087】
ステップS104では、変数設定手段1hが、アドレスデータADyに、ゴルフコースの最小アドレスデータYminを代入する。
【0088】
ステップS105では、高さデータ補正手段1kが、高さデータzを、テーブルから読む。
【0089】
ステップS106では、高さデータ補正手段1kの制御の元に、演算手段1dが、ステップS105で読み出された高さデータzから、高さデータEzを減算する。テーブルに登録されている高さデータzは、初期値である。そして、高さデータは、ゴルフボールの置かれているところの高さを基準とする。従って、テーブルに登録されている高さデータzを、ゴルフボールの置かれている位置の高さに基いて、随時修正しなければならない。そこで、このステップS106に示されるように、テーブルから読み出した高さデータzから、視点位置データの高さデータEzを減算するのである。
【0090】
尚、最初の1打が打たれる前は、視点位置データEx、Ey、Ezが用いられるが、最初の1打が打たれた後は、視点位置データEx、Ey、Ezには、ボール位置データBx、By、Bzが代入される。従って、最初の1打が打たれる前は、視点位置データの高さデータEzがテーブルから読み出した高さデータzから減算されるが、最初の1打が打たれた後は、ボール位置データBzが、テーブルから読み出された高さデータzから減算される。
【0091】
ステップS107では、高さデータ補正手段1kが、ステップS106で求められた高さデータADzを、テーブルから読み出された高さデータzの代わりに、その高さデータzが記憶されていたテーブルの記憶位置に書き込む。これにより、テーブルから読み出された高さデータzは、視点位置データEzを基準とした高さデータに修正される。
【0092】
ステップS108では、輝度処理手段1qが、高さデータADzの値に基いて輝度データLuを求める。
【0093】
ステップS109では、判断手段1fが、輝度データLuの値が、輝度データLuの最大値Lumaxよりも大きいか否かを判断し、「YES」であればステップS110に移行し、「NO」であればステップS111に移行する。
【0094】
ステップS110では、輝度処理手段1qが、輝度データLuに輝度データLuの最大値Lumaxを代入する。
【0095】
ステップS111では、判断手段1fが、輝度データLuの値が、輝度データLuの最小値Luminよりも小さいか否かを判断し、「YES」であればステップS112に移行し、「NO」であればステップS113に移行する。
【0096】
ステップS112では、輝度処理手段1qが、輝度データLuの値に輝度データLuの最小値Luminを代入する。
【0097】
ステップS113では、輝度処理手段1qが、対応する輝度データLuを新たに求めた輝度データLuで書き換える。
【0098】
ステップS114では、演算手段1dが、アドレスデータADxに“1”を加算する。
【0099】
ステップS115では、判断手段1fが、アドレスデータADxが最大アドレスデータXmaxよりも大きいか否かを判断し、「YES」であればステップS116に移行し、「NO」であればステップS119に移行する。
【0100】
ステップS116では、変数設定手段1hが、アドレスデータADxに、表示範囲内の最小アドレスデータADxminを代入する。
【0101】
ステップS117では、演算手段1dが、アドレスデータADyに“1”を加算する。
【0102】
ステップS118では、判断手段1fが、アドレスデータADyが、ゴルフコースの最大アドレスデータYmaxよりも大きいか否かを判断し、「YES」であればこの画像表示処理ルーチンS100を抜け、「NO」であればステップS119に移行する。
【0103】
一方、ステップS119では、判断手段1fが、アドレスデータADxが、表示範囲内の最小アドレスデータADxmin以上で、且つ、表示範囲内の最大アドレスデータADxmax以下であるか否かを判断し、「YES」であればステップS120に移行し、「NO」であれば再びステップS105に移行する。
【0104】
ステップS120では、判断手段1fが、アドレスデータADyが、表示範囲内の最小アドレスデータADymin以上で、且つ、表示範囲内の最大アドレスデータADymax以下であるか否かを判断し、「YES」であればステップS121に移行し、「NO」であれば再びステップS105に移行する。
【0105】
ステップS121では、描画命令発行手段1gが、描画命令を、描画処理プロセッサ10に対して発行する。これにより、描画処理プロセッサ10は、視点位置データEx、Ey、Ezに基いた画像データを、バッファ11の表示面上に展開する。よって、テレビジョンモニタ12の表示面上には、指定された画像が表示される。
【0106】
I.アンデュレーション画像出力ルーチンS150(図11〜図12)
【0107】
図11及び図12は、アンデュレーション画像出力ルーチンによる制御動作を説明するためのフローチャートである。アンデュレーション画像は、既に説明したように、ゲームプレーヤが、テレビジョンモニタ12の表示面上に表示されたゴルフコース上での距離や起伏を、感覚的に判別し、これに基いて適切な操作を行うことができるようにするための、ガイド画像である。
【0108】
ステップS151では、ボタン操作検出手段1aが、第1ボタンが押されたか否かを判断し、「YES」であればステップS152に移行し、「NO」であればこのアンデュレーション画像出力ルーチンS150を抜ける。
【0109】
ステップS152では、アンデュレーション出力判断手段1mが、アンデュレーションフラグが“0”か否かを判断し、「YES」であればステップS156に移行し、「NO」であればステップS154に移行する。ここで、アンデュレーションフラグは、図5に示したガイドGu2が表示されているか否かを示すフラグであり、例えば“1”は表示、“0”は非表示である。このステップS152において、上記アンデュレーション出力判断手段1mにより、アンデュレーションフラグが“0”であるものと判断された場合は、ステップS156以降に移行して、アンデュレーション画像が出力される。また、このステップS152において、上記アンデュレーション出力判断手段1mにより、アンデュレーションフラグが“1”であると判断された場合は、ステップS154及びS155において、アンデュレーション画像が消去される。
【0110】
ステップS154では、アンデュレーション出力判断手段1mが、アンデュレーションフラグを“0”にする。
【0111】
ステップS155では、アンデュレーション画像描画手段1nが、描画処理プロセッサ10に対し、アンデュレーション画像の消去命令を発行する。これにより、描画処理プロセッサ10は、バッファ11上への線のデータの書き込みを中止する。これにより、テレビジョンモニタ12の表示面上から、図5に示したガイドGu2の画像が消去される。尚、アンデュレーション画像の消去は、アンデュレーション画像以外の画像の再書き込みで行っても良い。
【0112】
ステップS156では、アンデュレーション出力判断手段1mが、アンデュレーションフラグを“1”にする。
【0113】
ステップS157では、アドレス設定手段1iが、ゴルフコースの最小アドレスデータXmin、Ymin並びに最大アドレスデータXmax、Ymaxをセットする。
【0114】
ステップS158では、アドレス設定手段1iが、ボール位置データBx、Byに基いて、アンデュレーション画像の表示範囲内における最小アドレスADxmin、ADymin、ADxmax、ADymaxを得る。
【0115】
ステップS159では、変数設定手段1hが、アドレスデータADxに最小アドレスデータXminを代入する。
【0116】
ステップS160では、変数設定手段1hが、アドレスデータADyに最小アドレスデータYminを代入する。
【0117】
ステップS161では、高さデータ補正手段1kが、テーブルからアドレスデータADx、ADyが示す高さデータzを読む。
【0118】
ステップS162では、高さデータ補正手段1kが、高さデータ補正手段1kの制御の元に、演算手段1dが、ステップS161で読み出された高さデータzから、高さデータEzを減算する。テーブルに登録されている高さデータは、初期値である。そして、高さデータは、ゴルフボールの置かれているところの高さを基準とする。従って、テーブルに登録されている高さデータzを、ゴルフボールの置かれている位置の高さに基いて、随時修正しなければならない。そこで、このステップS162に示されるように、テーブルから読み出した高さデータzから、視点位置データEzを減算するのである。
【0119】
ステップS163では、高さデータ補正手段1kが、ステップS162で求められた高さデータADzを、テーブルから読み出された高さデータzの代わりに、その高さデータzが記憶されていたテーブルの記憶位置に書き込む。これにより、テーブルから読み出された高さデータzは、視点位置データEzを基準とした高さデータに修正される。
【0120】
ステップS164では、輝度処理手段1qが、高さデータADzの値に基いて輝度データLuを求める。
【0121】
ステップS165では、判断手段1fが、輝度データLuの値が、輝度データLuの最大値Lumaxよりも大きいか否かを判断し、「YES」であればステップS110に移行し、「NO」であればステップS111に移行する。
【0122】
ステップS166では、輝度処理手段1qが、輝度データLuに輝度データLuの最大値Lumaxを代入する。
【0123】
ステップS167では、輝度処理手段1qが、対応する輝度データLuを新たに求めた輝度データLuで書き換える。
【0124】
ステップS168では、演算手段1dが、アドレスデータADxに“1”を加算する。
【0125】
ステップS169では、判断手段1fが、アドレスデータADxが最大アドレスデータXmaxよりも大きいか否かを判断し、「YES」であればステップS170に移行し、「NO」であればステップS173に移行する。
【0126】
ステップS170では、変数設定手段1hが、アドレスデータADxに、表示範囲内の最小アドレスデータADxminを代入する。
【0127】
ステップS171では、演算手段1dが、アドレスデータADyに“1”を加算する。
【0128】
ステップS172では、判断手段1fが、アドレスデータADyが、ゴルフコースの最大アドレスデータYmaxよりも大きいか否かを判断し、「YES」であればこのアンデュレーション画像表示ルーチンS150を抜ける。
【0129】
一方、ステップS173では、判断手段1fが、アドレスデータADxが、表示範囲内の最小アドレスデータADxmin以上で、且つ、表示範囲内の最大アドレスデータADxmax以下であるか否かを判断し、「YES」であればステップS174に移行し、「NO」であれば再びステップS161に移行する。
【0130】
ステップS174では、判断手段1fが、アドレスデータADyが、表示範囲内の最小アドレスデータADymin以上で、且つ、表示範囲内の最大アドレスデータADymax以下であるか否かを判断し、「YES」であればステップS175に移行し、「NO」であれば再びステップS161に移行する。
【0131】
ステップS175では、描画命令発行手段1gが、線描画命令を、描画処理プロセッサ10に対して発行する。これにより、描画処理プロセッサ10は、バッファ11の表示エリア上に、線のデータを書き込む。ここで、ガイドGu2は、図3Bに示したように、マトリクス状の画像データである。しかしながら、ゴルフコースの画像が、視点位置に応じて擬似的に3次元表示されるので、上記ガイドGu2も、同様に、3次元表示される。具体的には、ガイドGu2の表示範囲内のゴルフコースのポリゴンの頂点間を、多数の線で結ぶことにより、ガイドGu2を描画する。そして、ガイドGu2の輝度は、ポリゴンの各頂点の高さに基いて決められる。1本の線は、夫々ポリゴンの頂点に一致する始点と終点とが結ばれることにより描画される。1本の線の輝度は、例えば、始点の輝度及び終点の輝度に基いて、グラデーションがかけられた状態で表現される。既に説明したように、始点の高さが終点の高さよりも高い場合には、輝度が始点から終点に向かって徐々に低くなり、始点の高さが終点の高さよりも低い場合には、輝度が始点から終点に向かって徐々に高くなる。
【0132】
ステップS176では、判断手段1fが、輝度データLuの値が、輝度データLの最小値Luminよりも小さいか否かを判断し、「YES」であればステップS177に移行し、「NO」であればステップS167に移行する。
【0133】
ステップS177では、輝度処理手段1qが、輝度データLuに輝度データLuの最小値Luminを代入する。
【0134】
上記ステップS161〜ステップS163の処理により、高さデータが補正され、この後、アドレスデータADx、ADyが、アンデュレーション画像の表示範囲内の最小アドレスADxmin、ADymin、ADxmax、ADymaxの範囲内にある内は、描画処理が繰り返し行われる。この処理により、ガイドGu2の画像が、テレビジョンモニタ12に表示される。
【0135】
〔アンデュレーション画像を表示することによる効果〕
ゲームプレーヤが、ゴルフゲーム空間内のゴルファーにショットをさせるためには、コントローラ22に対し所定の操作を行う必要がある。操作形態については詳述する。ゴルフボールのゴルフゲーム空間内における移動距離は、コントローラ22の操作状態により異なる。図5に示したように、ゴルフゲーム空間内のゴルフコースには、ゴルフゲーム空間内における距離及び地形が設定されている。例えば図5に示したゴルフコースは、518ヤードの長さを有し、その途中には、バンカーや起伏があるものと設定されている。ゲームプレーヤは、このような情報に基いて、コントローラ22を操作するのである。
【0136】
ところで、ゴルフボールを転がす等のように、比較的近い所にボールを打つ場合においては、距離と起伏をより分かり易く表示する必要がある。ここでいう距離は、ゲームプレーヤに与える感覚的な距離感を意味する。既に説明したように、ゲームプレーヤが、距離と起伏に応じてコントローラ22の操作を行うことができるようにするためである。ゴルフコースの距離と起伏は、表示された画像の色及び明暗によって表現される。ゴルフコースの画像そのものの明暗は、図1に示したグラフィックスデータ生成プロセッサ3により求められた色及び輝度情報により、表現される。
【0137】
しかしながら、ゲームプレーヤに対し、ゴルフコースの起伏及び距離を、ゴルフコースの色及び輝度だけで認識させることは困難である。テレビジョンモニタ12の表示面といった、非常に狭い範囲内で、ゴルフコースといった、実際には非常に大きなものを表現しているからである。言い換えれば、現実の大きさ、距離、起伏を知っているゲームプレーヤに対し、色及び輝度だけでゲーム空間内の大きさ、距離、起伏を認識させることが困難だからである。
【0138】
そこで、本形態においては、図5に示したように、ガイドGu2を、ゲーム空間上に形成されている地形上に重ねて表示するようにしている。既に説明したように、このガイドGu2は、線描画命令によって表示される。このガイドGu2の形状は、図3Bに示されるように、マトリクス状である。そして、図5に示すように、地形上に表示する場合においては、ガイドGu2を構成している線の長さを、視点位置からの距離及び位置に応じて変えるようにしている。しかも、ガイドGu2の輝度は、ガイドGu2の表示されている地形の輝度データLuに基いて変えられている。よって、ゲームプレーヤに対し、ゲーム空間内における感覚的な距離感及び起伏情報を的確に与えることができ、これによって、ゲームプレーヤが、よりコントローラ22の操作を、表示されているゴルフコースに応じて的確に行うことができるといった大きなメリットがある。
【0139】
J.ティーアップ設定ルーチンS200による制御(図13〜図14)
【0140】
図13及び図14は、ティーアップ設定ルーチンS200による制御動作を説明するためのフローチャートである。ここでティーアップの設定とは、ティーショットの位置の設定を意味する。
【0141】
ステップS201では、描画命令発行手段1gが、ガイダンス画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。描画処理プロセッサ10は、ガイダンス画像データをバッファ11の表示エリア上に展開する。これにより、図5に示したテレビジョンモニタ12の表示面上のエリアAr3には、ティーアップを設定するためのガイダンス画像が、右側のエリアには、ガイドGu1が夫々表示される。
【0142】
ステップS202では、描画命令発行手段1gが、初期値に応じた線描画命令を、描画処理プロセッサ10に対して発行する。描画処理プロセッサ10は、線描画命令に応じて、バッファ11上において、始点のアドレスから終点のアドレスに向かって、ラインデータを書き込む。このラインは、図5に示されているガイドGu1上の指示画像Inである。そして、ガイドGu1は、現在選択されているゴルフコースの縮小画像となっている。従って、ゲームユーザは、現在の設定でコントローラ22を介してゴルフゲーム空間内のゴルファーMaにゴルフボールを打たせた場合におけるゴルフボールの弾道、飛距離、停止位置を、予測することができる。
【0143】
ステップS203では、ボタン操作検出手段1aが、十字キーが押されたか否かを判断し、「YES」であればステップS204に移行する。
【0144】
ステップS204では、ボタン操作検出手段1aが、右キーRが押されたか否かを判断し、「YES」であればステップS209に移行し、「NO」であればステップS205に移行する。
【0145】
ステップS205では、ボタン操作検出手段1aが、左キーLが押されたか否かを判断し、「YES」であればステップS206に移行し、「NO」であれば再びステップS203に移行する。
【0146】
ステップS206では、演算手段1dが、ティーアップ設定値Tyから、“1”を減算する。
【0147】
ステップS207では、判断手段1fが、ティーアップ設定値Tyが、ティーアップ設定値の最小値Tyminよりも大きいか否かを判断し、「YES」であればステップS208に移行し、「NO」であればステップS212に移行する。
【0148】
ステップS208では、変数設定手段1hが、ティーアップ設定値Tyに、ティーアップ設定値の最大値Tymaxを、代入する。
【0149】
ステップS209では、演算手段1dが、ティーアップ設定値Tyに、“1”を、加算する。
【0150】
ステップS210では、判断手段1fが、ティーアップ設定値Tyが、ティーアップ設定値の最大値Tymaxよりも大きいか否かを判断し、「YES」であればステップS211に移行し、「NO」であればステップS212に移行する。
【0151】
ステップS211では、変数設定手段1hが、ティーアップ設定値Tyに、ティーアップ設定値の最小値Tyminを代入する。
【0152】
ステップS212では、描画命令発行手段1gが、ティーアップ設定値Tyの値に応じたティーアップ画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。これにより、図5に示したエリアAr3上の画像は、ティーアップ設定値Tyの値に応じた表示状態となる。
【0153】
ステップS213では、描画命令発行手段1gが、線描画命令を、描画処理プロセッサ10に対して発行する。これにより、描画処理プロセッサ10は、バッファ11上において、始点のアドレスから終点のアドレスに向かって、ラインデータを書き込む。従って、テレビジョンモニタ12の表示面上のガイドGu1上のラインInも、ティーアップ設定値Tyの値に応じた表示状態となる。
【0154】
ステップS214では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればステップS215に移行し、「NO」であれば再びステップS203に移行する。
【0155】
ステップS215では、パラメータ管理手段1oが、ティーアップ設定値データTyを、メインメモリ5に記憶する。
【0156】
K.カメラ位置設定ルーチンS250による制御(図15〜図16)
【0157】
図15及び図16は、カメラ位置設定ルーチンS250による制御動作を説明するためのフローチャートである。本形態においては、カメラ位置として、ゲーム空間内において、ゴルファーMaの後方、前方、左側、右側等が設定可能である。カメラ位置を示すカメラ位置設定値は、視点位置データである。よって、カメラ位置設定値に応じた視点位置データが選択され、その視点位置データに対応する画像が出力される。カメラ位置設定値は、十字キーの右キーRまたは左キーLが1回押圧される都度、インクリメント若しくはデクリメントされる。
【0158】
ステップS251では、ボタン操作検出手段1aが、十字キーが押されたか否かを判断し、「YES」であればステップS252に移行する。
【0159】
ステップS252では、ボタン操作検出手段1aが、右キーRが押されたか否かを判断し、「YES」であればステップS257に移行し、「NO」であればステップS253に移行する。
【0160】
ステップS253では、ボタン操作検出手段1aが、左キーLが押されたか否かを判断し、「YES」であればステップS254に移行し、「NO」であれば再びステップS251に移行する。
【0161】
ステップS254では、演算手段1dが、カメラ位置設定値Caから、“1”を減算する。
【0162】
ステップS255では、判断手段1fが、カメラ位置設定値Caが、カメラ位置設定値の最小値Caminよりも大きいか否かを判断し、「YES」であればステップS256に移行し、「NO」であればステップS260に移行する。
【0163】
ステップS256では、変数設定手段1hが、カメラ位置設定値Caに、カメラ位置設定値の最大値Camaxを代入する。
【0164】
ステップS257では、演算手段1dが、カメラ位置設定値Caに、“1”を加算する。
【0165】
ステップS258では、判断手段1fが、カメラ位置設定値Caが、カメラ位置設定値の最大値Camaxよりも大きいか否かを判断し、「YES」であればステップS259に移行し、「NO」であればステップS260に移行する。
【0166】
ステップS259では、変数設定手段1hが、カメラ位置設定値Caに、カメラ位置設定値の最小値Caminを代入する。
【0167】
ステップS260では、変数設定手段1hが、カメラ位置設定値Caの値に応じた視点位置データEx、Ey、Ezを設定する。既に説明したように、カメラ位置設定値Caは、視点位置データである。そして、カメラ位置設定値Caの値に対し、夫々視点位置データがテーブルに登録されている。よって、ここで言う「設定」とは、変数設定手段1hが、カメラ位置設定値Caの値に対応する視点位置データを、テーブルから読み出すことを意味する。
【0168】
ステップS100では、画像表示処理ルーチンによる処理が行われる。ステップS260において設定された視点位置データEx、Ey、Ezに基いた描画処理である。
【0169】
ステップS261では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればこのカメラ位置設定ルーチンS250を抜け、「NO」であれば再びステップS251に移行する。
【0170】
L.方向設定ルーチンS300による制御(図17〜図18)
【0171】
図17及び図18は、方向設定ルーチンS300による制御動作を説明するためのフローチャートである。方向設定値は、ゴルフゲーム空間内のゴルファーの体の向き、即ち、打撃方向を示す角度データである。よって、ゴルフボールは、ゴルフゲーム空間内において、方向設定値に応じた角度データが示す方向に移動する。方向設定値は、十字キーの右キーRまたは左キーLが1回押圧される都度、インクリメント若しくはデクリメントされる。インクリメント、デクリメントの単位は、基準角度データAngである。
【0172】
ステップS301では、描画命令発行手段1gが、ガイダンス画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。これにより、描画処理プロセッサ10は、ガイダンス画像データを、バッファ11の表示エリア上に展開する。これにより、図5に示したテレビジョンモニタ12の表示面上のエリアAr3には、方向を設定するためのガイダンス画像が、右側のエリアには、ガイドGu1が夫々表示される。
【0173】
ステップS302では、描画命令発行手段1gが、初期値に応じた線描画命令を、描画処理プロセッサ10に対して発行する。描画処理プロセッサ10は、線描画命令に応じて、バッファ11上において、始点のアドレスから終点のアドレスに向かって、ラインデータを書き込む。このラインは、既に説明したように、図5に示されているガイドGu1上のラインInである。
【0174】
ステップS303では、ボタン操作検出手段1aが、十字キーが押されたか否かを判断し、「YES」であればステップS304に移行する。
【0175】
ステップS304では、ボタン操作検出手段1aが、右キーRが押されたか否かを判断し、「YES」であればステップS309に移行し、「NO」であればステップS305に移行する。
【0176】
ステップS305では、ボタン操作検出手段1aが、左キーLが押されたか否かを判断し、「YES」であればステップS306に移行し、「NO」であれば再びステップS303に移行する。
【0177】
ステップS306では、演算手段1dが、方向設定値Diから、基準角度データAngを減算する。
【0178】
ステップS307では、判断手段1fが、方向設定値Diが、“0”未満か否かを判断し、「YES」であればステップS308に移行し、「NO」であればステップS312に移行する。
【0179】
ステップS308では、変数設定手段1hが、方向設定値Diに、"360"を、代入する。
【0180】
ステップS309では、演算手段1dが、方向設定値Diに、基準角度データAngを、加算する。
【0181】
ステップS310では、判断手段1fが、方向設定値Diが、"360"よりも大きいか否かを判断し、「YES」であればステップS311に移行し、「NO」であればステップS312に移行する。
【0182】
ステップS311では、変数設定手段1hが、方向設定値Diに、“0”を代入する。
【0183】
ステップS312では、描画命令発行手段1gが、方向設定値Diの値に応じた方向表示用画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。これにより、図5に示したエリアAr3上の画像は、方向設定値Diの値に応じた表示状態となる。
【0184】
ステップS313では、描画命令発行手段1gが、描画処理プロセッサ10に対して、線描画命令を、発行する。これにより、描画処理プロセッサ10は、バッファ11上において、始点のアドレスから終点のアドレスに向かって、ラインデータを書き込む。従って、テレビジョンモニタ12の表示面上のガイドGu1上のラインInも、方向設定値Diの値に応じた表示状態となる。
【0185】
ステップS314では、パラメータ管理手段1pが、方向設定値データDiを、メインメモリ5に記憶する。
【0186】
M.スタンス設定ルーチンS350による制御(図19〜図20)
【0187】
図19及び図20は、スタンス設定ルーチンS350による制御動作を説明するためのフローチャートである。スタンス設定とは、ゴルファーの姿勢を設定することを意味する。
【0188】
ステップS351では、描画命令発行手段1gが、ガイダンス画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。描画処理プロセッサ10は、ガイダンス画像データを、バッファ11の表示エリアに展開する。これにより、図5に示したテレビジョンモニタ12の表示面上のエリアAr3には、スタンスを設定するためのガイダンス画像が、右側のエリアには、ガイドGu1が夫々表示される。
【0189】
ステップS352では、描画命令発行手段1gが、初期値に応じた線描画命令を、描画処理プロセッサ10に対して通知する。描画処理プロセッサ10は、線描画命令に応じて、バッファ11上において、始点のアドレスから終点のアドレスに向かって、ラインデータを書き込む。このラインは、既に説明したように、図5に示されているガイドGu1上のラインInである。
【0190】
ステップS353では、ボタン操作検出手段1aが、十字キーが押されたか否かを判断し、「YES」であればステップS354に移行する。
【0191】
ステップS354では、ボタン操作検出手段1aが、右キーRが押されたか否かを判断し、「YES」であればステップS359に移行し、「NO」であればステップS355に移行する。
【0192】
ステップS355では、ボタン操作検出手段1aが、左キーLが押されたか否かを判断し、「YES」であればステップS356に移行し、「NO」であれば再びステップS353に移行する。
【0193】
ステップS356では、演算手段1dが、スタンス設定値Stから、基準角度データAngを減算する。
【0194】
ステップS357では、判断手段1fが、スタンス設定値Stの値が、スタンス設定値の最小値Stminの値よりも小さいか否かを判断し、「YES」であればステップS358に移行し、「NO」であればステップS362に移行する。
【0195】
ステップS358では、変数設定手段1hが、スタンス設定値Stに、スタンス設定値の最大値Stmaxを、代入する。
【0196】
ステップS359では、演算手段1dが、スタンス設定値Stに、基準角度データAngを、加算する。
【0197】
ステップS360では、判断手段1fが、スタンス設定値Stが、角度データの最大値Angmaxよりも大きいか否かを判断し、「YES」であればステップS361に移行し、「NO」であればステップS362に移行する。
【0198】
ステップS361では、変数設定手段1hが、スタンス設定値Stに、スタンス設定値の最小値Stminを代入する。
【0199】
ステップS362では、描画命令発行手段1gが、スタンス設定値Stの値に応じたスタンス画像の表示を示す描画命令を、描画処理プロセッサ10に対して発行する。これにより、図5に示したテレビジョンモニタ12の表示面上のエリアAr3の画像は、スタンス設定値Stの値に応じた表示状態となる。
【0200】
ステップS363では、描画命令発行手段1gが、描画処理プロセッサ10に対し、ライン描画命令発行命令を、発行する。これにより、描画処理プロセッサ10は、バッファ11上において、始点のアドレスから終点のアドレスに向かって、ラインデータを書き込む。従って、テレビジョンモニタ12の表示面上のガイドGu1上のラインInも、スタンス設定値Stの値に応じた表示状態となる。
【0201】
ステップS364では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればステップS365に移行し、「NO」であれば再びステップS363に移行する。
【0202】
ステップS365では、パラメータ管理手段1oが、スタンス設定値データStを、メインメモリ5に記憶する。
【0203】
N.クラブ設定ルーチンS400による制御(図21〜図22)
【0204】
図21及び図22は、クラブ設定ルーチンS400による制御動作を説明するためのフローチャートである。クラブ設定とは、ゴルフクラブを選択することを意味する。
【0205】
この処理では、クラブ番号データNOが用いられる。クラブ番号データNOの1つの値には、1つのクラブの画像を示すテクスチャアドレスデータが、割り当てられる。これらのデータは、テーブルとして記憶されている。クラブ番号データNOは、十字キーの1回の押圧により、インクリメント若しくはデクリメントされる。そして、クラブ番号データNOの値に応じたテクスチャアドレスデータが、テーブルから読み出され、読み出されたテクスチャアドレスデータが、描画処理プロセッサ10に供給される。描画処理プロセッサ10は、上記テクスチャアドレスデータに対応するクラブの画像データを、バッファ11の非表示エリアから読み出し、読み出したクラブの画像データを、バッファ11の表示エリアに書き込む。従って、図5に示したテレビジョンモニタ12の表示面上のエリアAr3には、クラブの画像が表示される。
【0206】
ステップS401では、描画命令発行手段1gが、ガイダンス画像の表示を示す描画命令を、描画処理プロセッサ10に対して発行する。描画処理プロセッサ10は、ガイダンス画像データを、バッファ11の表示エリア上に展開する。これにより、図5に示したテレビジョンモニタ12の表示面上のエリアAr3には、選択されたゴルフクラブを示す画像が、右側のエリアには、ガイドGu2が夫々表示される。
【0207】
ステップS402では、描画命令発行手段1gが、初期値に応じた線描画命令を、描画処理プロセッサ10に通知する。描画処理プロセッサ10は、線描画命令に応じて、バッファ11上において、始点のアドレスから終点のアドレスに向かって、ラインデータを書き込む。このラインは、図5に示されているガイドGu1上のラインInである。そして、ガイドGu1は、現在選択されているゴルフコースの縮小画像となっている。従って、ゲームユーザは、現在の設定でコントローラ22を介してゴルフゲーム空間内のゴルファーMaに、ゴルフボールを打たせた場合における、ゴルフボールの弾道、飛距離、停止位置を予測することができる。
【0208】
ステップS403では、ボタン操作検出手段1aが、十字キーが押されたか否かを判断し、「YES」であればステップS404に移行する。
【0209】
ステップS404では、ボタン操作検出手段1aが、右キーRが押されたか否かを判断し、「YES」であればステップS404に移行し、「NO」であればステップS405に移行する。
【0210】
ステップS405では、ボタン操作検出手段1aが、左キーLが押されたか否かを判断し、「YES」であればステップS406に移行し、「NO」であれば再びステップS403に移行する。
【0211】
ステップS406では、演算手段1dが、クラブ番号データNOから“1”を減算する。
【0212】
ステップS407では、判断手段1fが、クラブ番号データNOの値が、クラブ番号データNOの最小値NOminの値よりも小さいか否かを判断し、「YES」であればステップS408に移行し、「NO」であればステップS412に移行する。
【0213】
ステップS408では、変数設定手段1hが、クラブ番号データNOに、クラブ番号データNOの最大値NOmaxを、代入する。
【0214】
ステップS409では、演算手段1dが、クラブ番号データNOに、“1”を、加算する。
【0215】
ステップS410では、判断手段1fが、クラブ番号データNOが、クラブ番号の最大値NOmaxよりも大きいか否かを判断し、「YES」であればステップS411に移行し、「NO」であればステップS412に移行する。
【0216】
ステップS411では、変数設定手段1hが、クラブ番号NOに、クラブ番号NOの最大値NOminを代入する。
【0217】
ステップS412では、描画命令発行手段1gが、クラブ番号データNOの値に応じたクラブ画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。これにより、図5に示したテレビジョンモニタ12の表示面上のエリアAr3上の画像は、クラブ番号NOの値に応じたクラブの画像の表示状態となる。
【0218】
ステップS413では、描画命令発行手段1gが、描画処理プロセッサ10に対し、線描画命令を、発行する。これにより、描画処理プロセッサ10は、バッファ11上において、始点のアドレスから終点のアドレスに向かって、ラインデータを書き込む。従って、テレビジョンモニタ12の表示面上のガイドGu1上のラインInも、スタンス設定値Stの値に応じた表示状態となる。
【0219】
ステップS414では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればステップS415に移行し、「NO」であれば再びステップS403に移行する。
【0220】
ステップS415では、パラメータ管理手段1oが、クラブ番号データNOを、メインメモリ5に記憶する。
【0221】
O.打撃位置設定ルーチンS450による制御(図23〜図24)
【0222】
図23及び図24は、打撃位置設定ルーチンS450による制御動作を説明するためのフローチャートである。打撃位置設定とは、打撃の際に、クラブ設定ルーチンS400で選択したクラブのヘッド部分が、ゴルフボールのどの部分に当たるのかを設定することを意味する。ゴルフボールのどの位置であるのかを示すデータは、垂直方向のアドレス値が固定で、水平方向のアドレス値のみが変わるアドレスデータHad、並びに水平方向のアドレス値が固定で、垂直方向のアドレス値が変わるアドレスデータVadからなる。
【0223】
ステップS451では、描画命令発行手段1gが、ゴルフボールの画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。これにより、描画処理プロセッサ10は、ゴルフボールの画像データを、バッファ11の表示エリアに書き込む。ここで、ゴルフボールの画像は、図5に示す表示面上において、略中央の位置に表示される。
【0224】
ステップS452では、水平軸画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。ここで、描画命令中には、バッファ11の表示エリア上のアドレスデータHadが含まれる。これにより、描画処理プロセッサ10は、上記アドレスデータHadの値が示す位置に、水平軸画像データを、書き込む。これにより、図3Cに示されるように、テレビジョンモニタ12の表示面上には、水平軸画像Haが表示される。
【0225】
ステップS453では、演算手段1dが、アドレスデータHadに、“1”を加算する。ステップS454では、ボタン操作検出手段1aがm第4ボタン22fが押されたか否かを判断し、「YES」であればステップS460に移行し、「NO」であればステップS455に移行する。
【0226】
ステップS455では、判断手段1fが、アドレスデータHadの値が、アドレスデータHadの最大値HADmaxよりも大きいか否かを判断し、「YES」であればステップS456に移行し、「NO」であれば再びステップS452に移行する。
【0227】
ステップS456では、演算手段1dが、アドレスデータHadから、“1”を減算する。
【0228】
ステップS457では、判断手段1fが、アドレスデータHadの値が、アドレスデータHadの最小値HADminよりも大きいか否かを判断し、「YES」であればステップS458に移行し、「NO」であれば再びステップS452に移行する。
【0229】
ステップS458では、水平軸画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。ここで、描画命令中には、バッファ11の表示エリア上のアドレスデータHadが含まれる。これにより、描画処理プロセッサ10は、上記アドレスデータHadの値が示す位置に、水平軸画像データを、書き込む。これにより、図3Cに示されるように、テレビジョンモニタ12の表示面上においては、水平軸画像Haが表示される。
【0230】
ステップS459では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればステップS460に移行し、「NO」であれば再びステップS456に移行する。ここで、「NO」と判断して再び上述した処理が繰り返されることにより、表示面上において、図3Cに示される水平軸画像Haが矢印Yhで示すように左右に移動し続ける。第4ボタン22fが押されることにより、ゴルフボールの水平方向での打撃位置が決定される。
【0231】
ステップS460では、パラメータ管理手段1oが、アドレスデータHadを、メインメモリ5に記憶する。
【0232】
ステップS461では、垂直軸画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。ここで、描画命令中には、バッファ11の表示エリア上のアドレスデータVadとが含まれる。これにより、描画処理プロセッサ10は、上記アドレスデータVadの示す位置に、垂直軸画像データを、書き込む。これにより、図3Cに示されるように、テレビジョンモニタ12の表示面上においては、垂直軸画像Vaが表示される。
【0233】
ステップS462では、演算手段1dが、アドレスデータVadに、“1”を加算する。ステップS463では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればステップS469に移行し、「NO」であればステップS464に移行する。
【0234】
ステップS464では、判断手段1fが、アドレスデータVadの値が、アドレスデータVadの最大値VADmaxよりも大きいか否かを判断し、「YES」であればステップS465に移行し、「NO」であれば再びステップS461に移行する。
【0235】
ステップS465では、演算手段1dが、垂直アドレスデータVadから、“1”を減算する。
【0236】
ステップS466では、判断手段1fが、アドレスデータVadの値が、アドレスデータVadの最小値VADminよりも大きいか否かを判断し、「YES」であればステップS467に移行し、「NO」であれば再びステップS461に移行する。
【0237】
ステップS467では、垂直軸画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。ここで、描画命令中には、バッファ11の表示エリア上のアドレスデータVadが含まれる。これにより、描画処理プロセッサ10は、上記アドレスデータVadの値が示す位置に、垂直軸画像データを、書き込む。これにより、図3Cに示されるように、テレビジョンモニタ12の表示面上においては、垂直軸画像Vaが表示される。
【0238】
ステップS468では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればステップS469に移行し、「NO」であれば再びステップS465に移行する。ここで、「NO」と判断して再び上述した処理が繰り返されることにより、表示面上において、図3Cに示される垂直軸画像Vaが矢印Yvで示すように上記に移動し続ける。第4ボタン22fが押されることにより、ゴルフボールの垂直方向での打撃位置が決定される。
【0239】
ステップS469では、パラメータ管理手段1oが、アドレスデータVadを、メインメモリ5に記憶する。そして、この打撃位置設定ルーチンS450を抜ける。
【0240】
P.打撃ルーチンS500による制御(図25〜図26)
【0241】
図25及び図26は、打撃ルーチンS500による制御動作を説明するためのフローチャートである。ここで、「打撃」とは、ゲームプレーヤがコントローラ22を操作することにより、テレビジョンモニタ12の表示面上に表示されたゴルフゲーム空間内のゴルファーMaに、ゴルフボールを打たせることを意味する。この打撃ルーチンでは、ゴルフゲーム空間内のゴルファーMaの打ったゴルフボールが、当該空間内で落下、停止するまでの画像の表示処理が行われる。
【0242】
ステップS501では、描画命令発行手段1gが、図3Dに示す打撃用のガイドGu3の画像の描画を示す描画命令を、描画処理プロセッサ10に対して発行する。描画処理プロセッサ10は、上記描画命令に基いて、図3Dに示すガイド画像データGu3を、バッファ11の表示エリアに書き込む。これによって、図3Dに示すガイドGu3が、テレビジョンモニタ12の表示面上の略中央に表示される。
【0243】
ここで、ガイドGu3について説明する。ガイドGu3は、ゲームプレーヤが、ゴルフゲーム空間内のゴルファーMaに打撃を行わせるためにコントローラを操作する際、自分の操作による打撃の強さ(以下、「エネルギー」と称する)がどのくらいなのかを、ゲームプレーヤに示すための画像である。このガイドGu3は、図3Dに示されるように、ドーナツ型の図形が一部切り欠かれた形状となっている。そして、切り欠き部分の上部には、文字「max」が添えられ、切り欠き部分の下部には、文字「min」が添えられている。「max」は打撃のパワーが最大であることを意味し、「min」は、打撃のパワーが最小であることを意味する。
【0244】
ガイドGu3が表示されている状態で、第4ボタン22fが押されると、その間、ガイドGu3のminの位置からmaxの位置に向かって、ガイドGu3の内部が順次塗りつぶされる。このとき、所定量ずつ、例えば黄色、水色、青、紫、赤のように色分けされて塗りつぶされる。この塗りつぶし部分の先端は、その時点における打撃のエネルギーを示す。従って、第4ボタン22fを押している時間が長ければ長い程、打撃のエネルギーは大きくなる。
【0245】
一方、上記状態で第4ボタン22fが離されると、その時点から、ガイドGu3の塗りつぶし部分が、順次、消える。上述の例の場合においては、ガイドGu3のmaxの位置からminの位置に向かって、赤、紫、青、水色、黄色の順序で、塗りつぶし部分が消える。この塗りつぶし部分の先端は、その時点における打撃のエネルギーを示す。従って、第4ボタン22fを離している時間が長ければ長い程、打撃のエネルギーは小さくなる。一旦、第4ボタン22fが離された後に、再び、第4ボタン22fが押されると、その時点における打撃のエネルギーが確定する。打撃のエネルギーが確定すると、打撃が行われる。以上の説明の対応部分は、フローチャートのS501、S505〜S511である。
【0246】
ステップS502では、乱数発生手段1pが、風の方向WDi及び風力Wpを示す値をランダムに発生する。
【0247】
ステップS503では、描画命令発行手段1gが、風の方向WDi、風力Wpを示す値に応じた文字データ及び矢印の画像の描画を示す描画コマンドを、描画処理プロセッサ10に供給する。描画処理プロセッサ10は、描画命令発行手段1gからの描画命令に基いて、バッファ11の表示エリアに、風力、タイトル及び矢印を示す画像データを夫々書き込む。これにより、図5に示されているように、テレビジョンモニタ12の表示面上には、風の方向を示す矢印By、風力のタイトル(「WIND」)及び風力の値(この例では「4m」)を示す画像が表示される。
【0248】
ステップS504では、パラメータ管理手段1oが、風の方向データWDi及び風力データWpを、メインメモリ5に記憶する。
【0249】
ステップS505では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればステップS506に移行し、「NO」であれば再びステップS501に移行する。
【0250】
ステップS506では、演算手段1dが、打撃エネルギーデータPOWERに、基準値データkを加算する。
【0251】
ステップS507では、描画命令発行手段1gが、描画処理プロセッサ10に対し、上記打撃エネルギーデータPOWERの値に対応する線描画命令を、供給する。ここで、線描画命令は、図3Dに示したガイドGu3の内部、且つ、その外周から内周(若しくは内周から外周)に向かって指定された色で線を引くことを意味する。描画処理プロセッサ10は、線描画命令に基いて、バッファ11に書き込まれているガイドGu3上に、打撃エネルギーデータPOWERの値が示す分だけ、線のデータを書き込む。これにより、テレビジョンモニタ12の表示面上に表示されたガイドGu3内が、所定の色で塗りつぶされる。
【0252】
ステップS508では、ボタン操作手段1aが、第4ボタン22fが離されたか否かを判断し、「YES」であればステップS509に移行し、「NO」であれば再びステップS506に移行する。
【0253】
ステップS509では、演算手段1dが、打撃エネルギーデータPOWERから、基準データkを減算する。
【0254】
ステップS510では、描画命令発行手段1gが、描画処理プロセッサ10に対し、上記打撃エネルギーデータPOWERの値に対応する線描画命令を、供給する。描画処理プロセッサ10は、線描画命令に基いて、バッファ11に書き込まれているガイドGu3上に、打撃エネルギーデータPOWERの値が示す分だけ線のデータを書き込む。これにより、テレビジョンモニタ12の表示面上に表示されたガイドGu3内が、所定の色で塗りつぶされる。尚、このステップS510でのガイドGu3内の塗りつぶしは、打撃エネルギーデータPOWERの値が少なくなっているので、テレビジョンモニタ12の表示面上においては、塗りつぶされている領域が、徐々に少なくなっていくように見える。
【0255】
ステップS511では、ボタン操作検出手段1aが、第4ボタン22fが押されたか否かを判断し、「YES」であればステップS512に移行し、「NO」であれば再びステップS509に移行する。ここで、第4ボタン22fが押されると、この時点における打撃エネルギーデータPOWERが、確定する。
【0256】
ステップS512では、演算手段1dが、打数データHiに“1”を加算する。そして、パラメータ管理手段1oが、当該打数データHiを、メインメモリ5に記憶する。
【0257】
ステップS513では、描画命令発行手段1gが、ゴルファーMaの画像の描画を示す描画命令を、順次、描画処理プロセッサ10に供給する。描画処理プロセッサ10は、描画命令に基いて、バッファ11の表示エリア上に、順次ゴルファーMaの画像を展開する。これにより、テレビジョンモニタ12の表示面上において、ゴルファーMaがゴルフボールを打ち終えるまでの、一連のアニメーションが実行される。
【0258】
ステップS514では、演算手段1dが、ボール位置Bx、By、Bz、打撃エネルギーデータPOWER、ティーアップデータTy、方向データDi、スタンスデータSt、クラブ番号データNO、アドレスデータHad及びVad、風の方向データWDi、風力データWpに基いて、単位時間毎のボール位置Bx、By、Bzを、全て求める。ここで、単位時間毎とは、例えばNTSCのテレビジョン方式においては、30フレーム/秒である。よって、この場合は、1フレーム毎のボールの位置が予め求められる。
【0259】
ボールが停止するまでの時間は、上記各パラメータによって異なる。従って、1フレーム毎のボールの位置を求め、そのボールの位置に応じた画像を1フレーム毎に表示するものとすると、ボールが停止するまでのフレーム数も異なる。ボールが停止するまでのフレーム数は、nmaxとして、メインメモリ5に記憶される。
【0260】
ステップS515では、演算手段1dが、変数nに、fを加算する。ここで、fは、例えば1フレームを意味する。
【0261】
ステップS516では、判断手段1fが、変数nが、nの最大値nmaxよりも大きいか否かを判断し、「YES」であればステップS517に移行し、「NO」であればステップS518に移行する。ここで、nmaxは、既に説明したように、ゴルフボールが停止するまでのフレーム数である。
【0262】
ステップS517では、変数設定手段1hが、変数nに“0”を代入する。
【0263】
ステップS518では、描画命令発行手段1gが、ボール位置データBxn、Byn、Bznに応じたボールの描画を示す描画命令を、描画処理プロセッサ10に供給する。
【0264】
ステップS519では、演算手段1dが、変数nに、fを加算する。
【0265】
ステップS520では、判断手段1fが、変数nが、最大値nmaxよりも大きいか否かを判断し、「YES」であればこの打撃ルーチンS500を抜け、「NO」であればステップS521に移行する。
【0266】
ステップS521では、変数設定手段1hが、ボール位置データBxn、Byn、Bznを、視点位置データEx、Ey、Ezに代入する。
【0267】
S100では、画像表示処理ルーチンS100による処理を行う。ステップS519からステップS100までの処理は、打たれたゴルフボールの飛んでいる状態を再現する処理である。ボール位置は、フレーム毎に刻一刻と移り変わる。よって、ボール位置データBxn、Byn、Bznを、視点位置データEx、Ey、Ez代入することにより、視点も刻一刻と変わる。視点が刻一刻と変わるので、背景画像も刻一刻と変わる。これにより、テレビジョンモニタ12の表示面上においては、いわゆるリプレイ画像が表示される。
【0268】
上述せる本実施形態によれば、地形を示す画像情報と、移動物体の画像情報とを表示手段の表示面上に表示し、上記移動物体を、操作手段の操作状態と、上記地形の地形情報とに基いて、上記表示手段の表示面上において移動するようにした地形情報を用いるゲームシステムにおいて、上記表示手段の表示面上に、複数の線で構成されるガイドを表示すると共に、当該ガイドを構成する線の輝度及び長さを、上記地形の地形情報に基いて設定するので、地形の画像情報のみで表すことのできない地形情報を、ゲームプレーヤに分かり易くガイドすることができるという効果がある。
【0269】
また、上記実施形態において、上記地形を示す画像情報は、上記表示手段の表示面上において疑似3次元表示され、上記ガイドは、2次元平面上において、マトリクス状に配置された複数の線で構成されると共に、上記表示手段の表示面上に疑似3次元表示された地形上に、疑似3次元表示されるので、ガイドと地形の表示状態をマッチングさせることができ、これによって、よりゲームプレーヤに分かり易くガイドすることができるという効果がある。
【0270】
また、上記実施形態において、上記ゲームシステムは、ゴルフゲームシステムであり、上記地形を示す画像情報は、ゴルフコースの画像情報であり、上記移動物体は、ゴルフボールの画像情報である。よって、ゲームプレーヤが、ゴルフゲーム空間上におけるゴルフゲームを、より本物のゴルフゲームを行う感覚で行うことができるという効果がある。
【0271】
また、上記実施形態において、上記地形の画像情報は、多数のポリゴンで構成されるものであり、上記ガイドは、上記ポリゴンの頂点間に描画される複数の線で構成されるので、地形の頂点と、ガイドの始点及び終点とを一致させることにより、地形に沿ってガイドを表示することができ、地形の状態をより正確にガイドできるという効果がある。
【0272】
また、上記実施形態において、上記地形情報は、頂点の高さを示す情報であり、上記ガイドを形成する線の輝度は、各線の始点及び終点に対応する地形情報の頂点の高さの値に応じて設定されるので、ガイドによる地形の高低の表現をより的確に行うことができ、これにより、より、ゲームプレーヤに対するガイドを良好に行うことができるという効果がある。
【0273】
また、上記実施形態において、上記移動物体の移動方向を予め設定すると共に、設定された上記移動物体の移動方向に応じて上記地形の画像情報及び上記ガイドを疑似3次元表示するので、移動物体の移動方向に対応したガイド表示ができ、これによって、ゲームプレーヤに対し、より適切なガイドを行うことができるという効果がある。
【図面の簡単な説明】
【図1】 本発明の一実施の形態を示すゲームシステムの構成図である。
【図2】 図1に示したCPU1が有する機能を示す機能ブロック図である。
【図3】 ゴルフコースの一例を示す説明図である。
【図4】 図3に示したゴルフコースから抽出された一部のエリア及びテーブルを示す説明図である。
〔図4A〕 図3に示したゴルフコースから抽出された抽出エリアAr1を示す説明図である。
〔図4B〕 図3に示したゴルフコースの各部のポリゴン頂点の座標、高さ、輝度データからなるテーブルを示す説明図である。
【図5】 画面表示例を示す説明図である。
【図6】 ゲームプログラムのメインルーチンによる制御動作を説明するためのフローチャートである。
【図7】 ゲームプログラムのメインルーチンによる制御動作を説明するためのフローチャートである。
【図8】 ゲームプログラムのメインルーチンによる制御動作を説明するためのフローチャートである。
【図9】 画像表示ルーチンS100による制御動作を説明するためのフローチャートである。
【図10】 画像表示ルーチS100による制御動作を説明するためのフローチャートである。
【図11】 アンデュレーション画像表示ルーチンS150による制御動作を説明するためのフローチャートである。
【図12】 アンデュレーション画像表示ルーチンS150による制御動作を説明するためのフローチャートである。
【図13】 ティーアップ設定ルーチンS200による制御動作を説明するためのフローチャートである。
【図14】 ティーアップ設定ルーチンS200による制御動作を説明するためのフローチャートである。
【図15】 カメラ位置設定ルーチンS250による制御動作を説明するためのフローチャートである。
【図16】 カメラ位置設定ルーチンS250による制御動作を説明するためのフローチャートである。
【図17】 方向設定ルーチンS300による制御動作を説明するためのフローチャートである。
【図18】 方向設定ルーチンS300による制御動作を説明するためのフローチャートである。
【図19】 スタンス設定ルーチンS350による制御動作を説明するためのフローチャートである。
【図20】 スタンス設定ルーチンS350による制御動作を説明するためのフローチャートである。
【図21】 クラブ設定ルーチンS400による制御動作を説明するためのフローチャートである。
【図22】 クラブ設定ルーチンS400による制御動作を説明するためのフローチャートである。
【図23】 打撃位置設定ルーチンS450による制御動作を説明するためのフローチャートである。
【図24】 打撃位置設定ルーチンS450による制御動作を説明するためのフローチャートである。
【図25】 打撃ルーチンS500による制御動作を説明するためのフローチャートである。
【図26】 打撃ルーチンS500による制御動作を説明するためのフローチャートである。
【符号の説明】
1 CPU、1a ボタン操作検出手段、1b 始点位置データ設定手段、1c 表示範囲情報抽出手段、1d 演算手段、1e 結果情報設定手段、1f 判断手段、1g 描画命令発行手段、1h 変数設定手段、1i アドレス設定手段、1j アドレス取得手段、1k 高さデータ補正手段、1m アンデュレーション出力判断手段、1n アンデュレーション画像描画手段、1o パラメータ管理手段、1p 乱数発生手段、1q 輝度処理手段、2 バス、3 グラフィックスデータ生成プロセッサ、4,20 インターフェース回路、5 メインメモリ、6 ROM、7 伸張回路、8 パラレルポート、9 シリアルポート、10 描画処理プロセッサ、11,14,18 バッファ、13 音声処理プロセッサ、15 増幅回路、16 スピーカ、17 デコーダ、19 記録媒体ドライバ、21 メモリ、22 コントローラ。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a game system and a recording medium suitable for being applied to a game system using a cassette type recording medium using an optical disk, a magnetic disk, a semiconductor memory, and the like on which program data is recorded.
[0002]
[Prior art]
Many game systems have been proposed. A system composed of a home-use machine and a television monitor, a business-use machine, a personal computer or a system composed of a workstation, a display, and an audio output device. Each of these systems includes a controller for operation by the player, a recording medium on which game program data is recorded, a CPU that performs control for generating sound and images based on the game program data, and an image. It comprises a processor for generating, a processor for generating audio, a CRT for displaying images, and a speaker for outputting audio. As the recording medium, there are many CD-ROMs, semiconductor memories, cassettes incorporating semiconductor memories, and the like. The configuration of the game system is as described above.
[0003]
Next, the game screen configuration will be described. There are many types of games, but the game screen changes most roughly according to the operation of the controller, and changes adaptively depending on the operation object image and the operation state of the operation object. It consists of a background image. When this background image is further classified, it is used only to give a visual change to the game player, that is, it is used as a condition for obtaining a simple background and a result given to the game player, such as a score. Can be divided into An example of the latter is a background image of a course in a golf game, for example.
[0004]
Usually, in a golf game, an image showing a golf course and an image showing a golfer are displayed on the display surface of a television monitor, whereby a golf game space is formed on the display surface. Then, according to the operation of the controller by the game player, the golfer on the golf game space is visually moved, and a ball is hit by the club of the golfer. The hit ball visually flies in the depth direction in the golf game space. That is, in the golf game space, the same thing as golf actually performed by a human is visually performed. In simple terms, a golf game in a so-called video game is a golf game in which golf is visually performed by appropriately changing an image to be displayed on a television monitor according to the operation of a controller of a game player. is there.
[0005]
The golf course image is associated with the golf course height data. Then, how much the golf ball moves in the golf game space is calculated from the operation of the controller by the game player and the height data of the golf course, and the calculation result is displayed as an image. For example, if the golf player operates the controller so that the golf player hits the golf ball weakly toward a very high position in the golf game space when the golf ball is at a very low position in the green, The golf ball in the golf game space does not move to the position intended by the game player. The reason why the height data associated with each part of the course image is used is to give a game player playing a golf game a feeling closer to that of actual golf.
[0006]
[Problems to be solved by the invention]
By the way, in the game in which the height data is associated with each position of the background like the above-described golf game, it is necessary to accurately display the height of the course so that the game player can appropriately perform the operation. . This is because the game player cannot properly operate the controller unless the level of the course is expressed in any form.
[0007]
The present invention has been made in consideration of such points, and in a game in which height data is associated with each vertex of the background, an operation guide is provided to the game player simply and accurately. The purpose is to do.
[0008]
[Means for Solving the Problems]
The present invention is a golf game system for displaying a golf course, wherein a line is displayed between arbitrary vertices existing within a predetermined range of the golf course, and the luminance of each line corresponds to the starting point thereof. It is set according to the relationship between the height of the golf course and the height of the golf course corresponding to the end point thereof.
[0009]
Further, the present invention is a recording medium recording a program for operating a game system to display a golf course, displaying a line between any vertices existing within a predetermined range of the golf course, The recording medium stores a program for setting the luminance of each line according to the relationship between the height of the golf course corresponding to the start point and the height of the golf course corresponding to the end point.
[0010]
One of the other inventions displays image information indicating the terrain and image information of the moving object on the display surface of the display means, and displays the moving object with the operating state of the operating means, the terrain information of the terrain, and And a guide display method in a game system using terrain information that is moved on the display surface of the display means, wherein a guide composed of a plurality of lines is displayed on the display surface of the display means. In addition, the brightness and length of the lines constituting the guide are set based on the topographic information of the topography.
[0011]
One of the other inventions displays image information indicating the terrain and image information of the moving object on the display surface of the display means, and displays the moving object with the operating state of the operating means, the terrain information of the terrain, and And a guide display method in a game system using terrain information that is moved on the display surface of the display means, wherein a guide composed of a plurality of lines is displayed on the display surface of the display means. In addition, the brightness and length of the lines constituting the guide are set based on the topographic information of the topography.
[0012]
In the invention described above, the image information indicating the topography is displayed in a pseudo three-dimensional manner on the display surface of the display means, and the guide is composed of a plurality of lines arranged in a matrix on the two-dimensional plane. In addition, pseudo three-dimensional display is performed on the terrain displayed pseudo three-dimensionally on the display surface of the display means.
[0013]
In the above invention, the game system is a golf game system, the image information indicating the topography is image information of a golf course, and the moving object is image information of a golf ball. In the above invention, the topographic image information is composed of a large number of polygons, and the guide is composed of a plurality of lines drawn between the vertices of the polygons.
[0014]
In the invention described above, the topographic information is information indicating the height of the vertex, and the brightness of the line forming the guide depends on the value of the height of the top of the topographic information corresponding to the start point and the end point of each line. Is set. In the above invention, the moving direction of the moving object is set in advance, and the terrain image information and the guide are displayed in a pseudo three-dimensional manner according to the set moving direction of the moving object.
[0015]
In the above invention, the luminance value of each line is set so that the luminance gradually decreases from the start point toward the end point when the height of the start point is higher than the end point. The topographical information according to claim 1, wherein when the height of the starting point is lower than the height of the ending point, the luminance is set so as to gradually increase from the starting point toward the ending point.
A moving object hitting position setting method used in a game system in which a player hits a moving object on a game space and moves the moving object on the game space by operating an operation means, The moving object is fixedly displayed on the game space, the horizontal position setting image is displayed so as to move in the horizontal direction at least on the moving object, and the horizontal direction when the player presses the corresponding button of the operation means. The horizontal position of the position setting image is stored, the vertical position setting image is displayed so as to move in the vertical direction on at least the moving object, and the vertical direction when the player presses the corresponding button of the operation means. The vertical position of the position setting image is stored, and when the player hits the moving object on the game space by operating the operation means, the moving object is stored. The striking position, and the position represented by the horizontal and vertical position.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to FIGS.
[0017]
In the description of the embodiment of the present invention, the following item descriptions are described at the head of each item, and each item will be described in the following order.
[0018]
A. Game system configuration (Figure 1)
B. Functions of the CPU 1 shown in FIG. 1 (FIG. 2)
C. An example of a golf course (FIG. 3A)
D. Extraction area extracted from golf course (FIG. 4A)
E. Golf course data table (Fig. 4B)
F. Golf screen display example (Fig. 5)
G. Control by main routine (Figs. 6-8)
H. Control by image display routine S100 (FIGS. 9 to 10)
I. Unduration image output routine S150 (FIGS. 11 to 12)
J. et al. Control by tee-up setting routine S200 (FIGS. 13 to 14)
K. Control by camera position setting routine S250 (FIGS. 15 to 16)
L. Control by direction setting routine S300 (FIGS. 17 to 18)
M.M. Control by stance setting routine S350 (FIGS. 19 to 20)
N. Control by club setting routine S400 (FIGS. 21 to 22)
O. Control by the striking position setting routine S450 (FIGS. 23 to 24)
P. Control by the striking routine S500 (FIGS. 25 to 26)
[0019]
A. Game system configuration (Figure 1)
[0020]
FIG. 1 is a configuration diagram showing a configuration example of a game system as an embodiment of the present invention.
[0021]
[Connection and configuration]
The game system shown in FIG. 1 includes a game machine main body and a recording medium 30 on which program data is recorded. In the game machine main body, a bus 2 including an address, data, and control bus is connected to the CPU 1, and a graphics data generation processor 3, an interface circuit 4, a main memory 5, a ROM 6, an expansion circuit 7, and a parallel port are connected to the bus 2. 8, a serial port 9, a rendering processor 10 and a buffer 11, an audio processor 13 and a buffer 14, a decoder 17 and a buffer 18, an interface circuit 20 and a memory 21 are connected to the rendering processor 10 and a television monitor. 12, a speaker 16 is connected to the audio processor 13 via the amplifier circuit 14, a recording medium driver 19 is connected to the decoder 17, and a controller 22 is connected to the interface circuit 20.
[0022]
Here, the form of the game system differs depending on the application. That is, when the game system is configured for home use, the television monitor 12 and the speaker 16 are separate from the game machine main body. When the game system is configured for business use, all the components shown in FIG. 1 are housed in a single casing. When the game system is configured with a personal computer or workstation as the core, the television monitor 12 corresponds to the display for the computer, and the drawing processor 10, the audio processor 13, The decompression circuit 7 corresponds to a part of program data recorded on the recording medium 30 or hardware on an expansion board mounted in an expansion slot of a computer, respectively, the interface circuit 4, the parallel port 8, and the The serial port 9 and the interface circuit 20 correspond to hardware on an expansion board mounted in an expansion slot of the computer. The buffers 11, 14, and 18 correspond to the areas of the main memory 5 or an expansion memory (not shown), respectively. In this embodiment, a case where the game system is configured for home use will be described as an example.
[0023]
Next, each component shown in FIG. 1 will be described in more detail. The graphics data generation processor 3 functions as a coprocessor of the CPU 1. That is, the graphics data generation processor 3 performs coordinate conversion and light source calculation, for example, calculation of a fixed-point format matrix or vector by parallel processing. The main processing of the graphics data generation processor 3 is based on the coordinate data of each vertex in the two-dimensional or three-dimensional plane of the image data supplied from the CPU 1, the movement amount data, and the rotation amount data. For example, a process of obtaining an address on the display area of the target image and returning the address data to the CPU 1 again, a process of calculating the luminance of the image according to the distance from the virtually set light source, and the like.
[0024]
The interface circuit 4 is for an interface of a peripheral device such as a pointing device such as a mouse or a trackball. The ROM 6 stores program data as an operating system of the game system. In terms of a personal computer, this corresponds to BIOS (Basic Input Output System).
[0025]
The decompression circuit 7 performs decompression processing on a compressed image that has been compressed by intra coding conforming to MPEG (Moving Picture Engineering Group) or JPEG (Joint Picture Engineering Group). The decompression process includes a decoding process (decoding of data encoded by VLC: Variable Length Code), an inverse quantization process, an IDCT (Inverse Discrete Course Transform) process, an intra image restoration process, and the like.
[0026]
The drawing processor 10 performs drawing processing on the buffer 11 based on a drawing command issued by the CPU 1. The buffer 11 includes a display area and a non-display area. The display area is a development area for data to be displayed on the display surface of the television monitor 12. The non-display area is a storage area for texture data, color palette data, and the like. Here, the texture data is two-dimensional image data. The color palette data is data for designating a color such as texture data. These data are stored in advance in the non-display area of the buffer 11 by the CPU 1 once from the recording medium 30 or divided into a plurality of times in accordance with the progress of the game.
[0027]
Examples of the drawing command include a drawing command for drawing a line, a drawing command for drawing a stereoscopic image using a polygon, and a drawing command for drawing a normal two-dimensional image. Here, the polygon is a polygonal two-dimensional image, and in this embodiment, a triangle or a quadrangle is used.
[0028]
A drawing command for drawing a line includes line drawing start and end addresses, color, and data indicating line drawing. This line drawing command is issued directly to the drawing processor 10 by the CPU 1.
[0029]
The drawing command for drawing a stereoscopic image using polygons is polygon vertex address data on the display area of the buffer 11, texture address data indicating the storage position of the texture data to be pasted on the polygon on the buffer 11, and texture data. Color pallet address data indicating the storage position of the color pallet data indicating the color in the buffer 11 and luminance data indicating the luminance of the texture. Among these data, the polygon vertex address data on the display area is obtained by the graphics data generation processor 3 from the polygon vertex coordinate data in the three-dimensional space from the CPU 1 to the movement amount data and the rotation amount data from the CPU 1. Based on the coordinate data in the x and y directions among the polygon vertex coordinate data newly obtained by coordinate conversion. Also, the luminance data is determined by the graphics data generation processor 3 based on the distance from the position indicated by the polygon vertex coordinate data after the coordinate conversion from the CPU 1 to the light source that is virtually arranged. .
[0030]
The polygon vertex address data indicates an address on the display area of the buffer 11. The drawing processor 10 writes the corresponding texture data in the display area range of the buffer 11 indicated by 3 or 4 polygon vertex address data. This process is generally called “texture pasting” or the like.
[0031]
One object is composed of a large number of polygons. The CPU 1 holds the coordinate data of each polygon in the three-dimensional space on the main memory 5. When the object is moved on the display surface by the operation of the controller 22, in other words, when expressing the movement of the object itself or changing the position (viewpoint position) where the object is viewed, the following processing is performed. Is called. That is, the CPU 1 gives the graphics data generation processor 3 the three-dimensional coordinate data of the vertices of each polygon, the movement amount data and the rotation amount data of each polygon stored in the main memory 5. The graphics data generation processor 3 sequentially converts the three-dimensional coordinate data after the movement and rotation of each polygon based on the three-dimensional coordinate data of the vertices of each polygon and the movement amount data and rotation amount data of each polygon. Ask. The three-dimensional coordinate data of each polygon thus obtained is converted into two-dimensional coordinate data, and the horizontal and vertical coordinate data is used as address data on the display area of the buffer 11, that is, polygon vertex address data. This is supplied to the drawing processor 10. The drawing processor 10 writes the texture data indicated by the pre-assigned texture address data on the triangular or quadrangular display area of the buffer 11 indicated by the 3 or 4 polygon vertex address data. As a result, an object in which texture data is pasted on a large number of polygons is displayed on the display surface of the television monitor 12.
[0032]
The drawing command for drawing a normal two-dimensional image includes vertex address data, texture address data, color palette address data indicating the storage position of the color palette data indicating the color of the texture data on the buffer 11, and the luminance of the texture. Brightness data shown. Among these data, the vertex address data is converted by the graphics data generation processor 3 from the vertex coordinate data on the two-dimensional plane from the CPU 1 based on the movement amount data and the rotation amount data from the CPU 1. It is the coordinate data obtained. Hereinafter, the drawing process is described in a simplified manner such as “issue a drawing command”.
[0033]
The audio processor 13 stores the ADPCM data read from the recording medium 30 in the buffer 14 and uses the ADPCM data stored in the buffer 14 as a sound source. Then, the voice processor 13 reads out ADPCM data with a clock having a frequency of 44.1 KHz, for example. The audio processor 13 performs processing such as pitch conversion, noise addition, envelope setting, level setting, and reverb addition on the ADPCM data read from the buffer 14. When the audio data read from the recording medium 30 is PCM data, it is converted into ADPCM data by the audio processor 13. Further, the processing by the program data for the PCM data is directly performed on the main memory 5. The PCM data processed on the main memory 5 is supplied to the audio processor 13 and converted into ADPCM data. After the above-described various processes are performed, the PCM data is output as audio from the speaker 16.
[0034]
The recording medium driver 19 is, for example, a hard disk drive, an optical disk drive, a flexible disk drive, a silicon disk drive, a cassette medium reader, or the like. The recording medium 30 is, for example, a hard disk, an optical disk, a flexible disk, a semiconductor memory, or the like. The recording medium driver 19 reads images, sounds, and program data from the recording medium 30 and supplies the read data to the decoder 17. The decoder 17 performs error correction processing by ECC (Error Correction Code) on the reproduction data from the recording medium driver 19 and supplies the data subjected to the error correction processing to the main memory 5 or the audio processor 13.
[0035]
The memory 21 includes, for example, a holder and a card type memory. The card-type memory is for holding various parameters of the game, such as holding the state at the end time. The controller 22 includes a cross key including a left key L, a right key R, an up key U, and a down key D, a left button 22L, a right button 22R, a start button 22a, a select button 22b, a first button 22c, and a second button 22d. , A third button 22e and a fourth button 22f. The cross key is used by the game player to give a command indicating up, down, left, and right to the CPU 1. The start button 22 a is used by the game player to instruct the CPU 1 to start game program data loaded from the recording medium 30. The select button 22b is for the game player to instruct the CPU 1 to make various selections regarding the game program data loaded from the recording medium 30 to the main memory 5. The functions of the left key L, the right key R, and the first to fourth buttons 22c, 22d, 22e, and 22f differ depending on the game program data loaded from the recording medium 30.
[0036]
[Operation]
A power switch (not shown) is turned on, and the game system is powered on. At this time, if the recording medium 30 is loaded in the recording medium driver 19, the CPU 1 reads program data from the recording medium 30 to the recording medium driver 19 based on the operating system stored in the ROM 6. Instruct. As a result, the recording medium driver 19 reads the image, sound, and program data from the recording medium 30. The read image, sound and program data are supplied to the decoder 17 where error correction processing is performed. The image data that has been subjected to error correction processing in the decoder 17 is supplied to the expansion circuit 7 via the bus 2, where it is supplied to the drawing processor 10 after being subjected to the expansion processing described above. The data is written in the non-display area of the buffer 11 by the processor 10.
[0037]
The audio data that has been subjected to the error correction processing in the decoder 17 is supplied to the main memory 5 or the audio processing processor 13 and written into the main memory 5 or the buffer 14. The program data that has been subjected to error correction processing in the decoder 17 is supplied to the main memory 5 and written to the main memory 5. Thereafter, the CPU 1 proceeds with the game based on the game program data stored in the main memory 5 and the content instructed by the game player via the controller 22. That is, the CPU 1 appropriately controls image processing, audio processing, and internal processing based on the instruction content instructed by the game player via the controller 22. The control of image processing includes the supply of two-dimensional or three-dimensional coordinate data and viewpoint position data to the graphics data generation processor 3, address data and luminance data on the display area of the buffer 11 obtained by the graphics data generation processor 3. For example, drawing commands including. The voice processing control is the issuing of a voice output command to the voice processor 13, designation of level, reverb, and the like. The internal process control is, for example, calculation according to the operation of the controller 22.
[0038]
B. Functions of the CPU 1 shown in FIG. 1 (FIG. 2)
[0039]
FIG. 2 is an explanatory diagram showing functions of the CPU 1 shown in FIG. The CPU 1 has the function shown in FIG. 2 by reading the program data read from the recording medium 30 shown in FIG. 1 and stored in the main memory 5. As shown in FIG. 2, the function of the CPU 1 is as follows: button operation detection means 1a, viewpoint position data setting means 1b, display range information extraction means 1c, calculation means 1d, result information setting means 1e, determination means 1h, Drawing command issuing means 1g, variable setting means 1h, address setting means 1i, address acquisition means 1j, height data correction means 1k, unduration output determination means 1m, unduration image drawing means 1n, parameter management means 1o, random number generation means 1p and luminance processing means 1q. These means are the main subjects of control described in item C to item O, respectively.
[0040]
C. An example of a golf course (FIG. 3A)
[0041]
FIG. 3A is an explanatory view showing an example of a golf course. In this figure, the golf course is divided into regions in a matrix for convenience of explanation. As shown in FIG. 3A, the golf course includes a tee ground Tg and a green Gr. Further, addresses (x, y) are given to the intersections of the vertical lines and horizontal lines shown on the golf course, respectively. In this example, the minimum address is (0, 0) and the maximum address is (200, 530). These address data are associated with the texture number data and recorded on the recording medium 30.
[0042]
D. Extraction area extracted from golf course (FIG. 4A)
[0043]
4A is an explanatory diagram showing an extraction area Ar1 extracted from the golf course shown in FIG. 3 based on viewpoint position data. In FIG. 4A, the information set on the course is shown more finely than the golf course shown in FIG. As shown in FIG. 4A, the golf course is composed of many triangular or quadrangular polygons. The black dots shown in FIG. 4A indicate the vertices of the polygons. The vertex height data is also associated with the texture number data and recorded on the recording medium 30 as described above. The graphics data generation processor 3 shown in FIG. 1 performs light source calculation based on the height data, and sets the luminance data value of each texture based on the result. Since the light source of the golf course is set on the golf course, the height data is used as a reference for the distance from the light source.
[0044]
E. Golf course data table (Fig. 4B)
[0045]
FIG. 4B is an explanatory diagram illustrating a data table of a golf course. As shown in FIG. 4B, one data table is prepared for one golf course. As shown in FIG. 4B, one data table includes polygon vertex number data from 0 to n and horizontal address data registered for the polygon vertex data from 0 to n. x, vertical address data y, height data z, and luminance data Lu. The height data originally registered in the table is corrected and rewritten as needed with reference to the position of the golf ball. The luminance data Lu is obtained by calculation by the luminance processing means 1q based on the corrected height data and registered in this table. The luminance data Lu registered in the table is supplied to the drawing processor 10 shown in FIG. 1 as a drawing command together with the texture address data described above. The drawing processor 10 displays data to be drawn with the luminance indicated by the value of the luminance data in the drawing command.
[0046]
Here, the polygon vertex number data is an index number of a vertex of a polygon indicated by a black dot in FIG. The horizontal and vertical address data are the addresses x and y shown in FIG.
[0047]
F. Screen display example (Figure 5)
[0048]
FIG. 5 is an explanatory diagram showing a screen display example. As shown in FIG. 5, the basic screen includes an upper left and upper right character information display area, areas Ar2, Ar3, Ar4, a golfer Ma and its course display area (center in the figure), and a guide Gu1. Display area.
[0049]
Here, in the upper left area, as shown in this example, a character indicating the number of strokes (0 STROKE), a character indicating the golfer's number (meaning the first and second persons in the case of a plurality), and the remaining And a character (REST 518y) indicating the distance. Further, a character (WIND 4m) indicating wind force is displayed in a region directly below this area, and an image of an arrow By indicating the wind direction is displayed below the character.
[0050]
In addition, in the area Ar2, for example, titles of items to be set such as golf club selection, tee-up, and hitting position are displayed, and in the area Ar3, images of the items to be set (for example, golf clubs) are displayed. Is done. The guide Gu1 displays an instruction image In for indicating the flight distance and position of the golf ball. The display state of the instruction image In is changed at any time according to the setting. In the area Ar4, an image of the golf ball and the ground are displayed.
[0051]
In the center of the screen, an image of the golfer Ma having the golf club Cb and a course scenery such as green Gr are displayed. From the position of the golfer Ma (or the position of the ball) toward the hitting direction, A guide Gu2 is displayed. As shown in FIG. 3B, the guide Gu2 has a matrix shape on a two-dimensional plane, and is formed by a collection of a large number of straight lines. As shown in FIG. 5, the guide Gu2 is displayed in a pseudo three-dimensional manner so as to match the terrain from the position of the golfer Ma toward the batting direction, that is, similarly to the terrain. Further, the brightness of the guide Gu2 is varied according to the height of the terrain located below each part. In this example, the guide Gu2 is set to have a higher luminance as the height of the terrain just below it is higher, and the luminance is set to be lower as the height of the terrain directly below is lower. Thus, the game player can determine the level of the terrain. For example, when the batting setting is made by the controller 22, the game player carries the game according to the terrain in the golf game space, such as increasing the setting value. be able to.
[0052]
As already described, the guide Gu2 is formed by a large number of lines drawn by the drawing processor 10 shown in FIG. 1 between the vertices of the polygons constituting the terrain based on the line drawing command. Since the line drawing command includes luminance data of each polygon vertex, the drawing processor 10 determines the luminance of the line, the luminance of the polygon vertex corresponding to the start point, and the polygon vertex corresponding to the end point. Determine based on brightness. For example, when the luminance at the start point is higher than the luminance at the end point, the luminance of the line is determined such that the start point is the highest and gradually decreases as the end point is approached. On the other hand, when the luminance at the start point is lower than the luminance at the end point, the luminance of the line is determined such that the start point is the lowest and gradually increases as the end point is approached. In FIG. 5, for the sake of drawing, such gradation is not expressed within one line.
[0053]
As described with reference to FIGS. 3A and 4, height data is usually set for each part of the landscape. Then, the graphics data generation processor 3 shown in FIG. 1 performs light source calculation based on the height data and the position of the virtual light source based on the viewpoint position, and sets the brightness of each part according to the result. To do. Therefore, a certain distance and height can be expressed only by the scenery itself. However, the controller 22 cannot be appropriately operated when this is used as a guide only by expressing the distance and height in the course by the difference in luminance obtained by the light source calculation. Therefore, the guide Gu2 is displayed. According to this, each part of the guide Gu2 made of a straight line of the same length has brightness according to the height in the course and length according to the distance, so that the distance and height of the golf course can be understood more clearly. It can be expressed easily. Therefore, the game player can operate the controller 22 in accordance with the conditions of the golf course in the game space.
[0054]
G. Control by main routine (Figs. 6-8)
[0055]
6 to 8 are flowcharts for explaining the control operation by the main routine. Note that only step S1 is a control operation by the operating system stored in the ROM 6 shown in FIG. The other step is a control operation based on the game program data read from the recording medium 30. Further, as described above, the main body of control by the game program data is each means as a function of the CPU 1 shown in FIG.
[0056]
In step S <b> 1, the recording medium driver 19 reads the image, sound, and program data from the recording medium 30 according to an operating system command. Of the read data, the program data is stored in the main memory 5. Thus, the CPU 1 has the function shown in FIG. At this time, the image, that is, the texture data is stored in the buffer 11 of the rendering processor 10 and is assigned a texture number. The audio data is stored in the buffer 14 of the audio processor 13 and is assigned audio number data. Normally, not all image and audio data are held in the buffers 11 and 14 in step S1, but for convenience of explanation, it is assumed that all image and audio data are loaded in step S1.
[0057]
In step S2, the button operation detection unit 1a determines whether or not the start button 22a of the controller 22 has been pressed. If “YES”, the process proceeds to step S3.
[0058]
In step S3, the drawing command issuing unit 1g issues a drawing command indicating drawing of the select image to the drawing processor 10 shown in FIG. The drawing processor 10 develops the image data of the selected image on the display surface of the buffer 11 based on the drawing command. Thereby, a select image is displayed on the display surface of the television monitor 12.
[0059]
In step S4, the button operating means 1a determines whether or not the start button 22a of the controller 22 has been pressed. If “YES”, the process proceeds to step S5.
[0060]
In step S5, the CPU 1 sets the selected game. Here, “selected” means that the game player selects a game using the cross key with reference to the selected image displayed in step S3, and then presses the start button 22a. . Here, the “game” includes, in addition to the game itself, for example, a character in a battle game. In short, it is a choice before the game is actually started.
[0061]
In step S6, the drawing command issuing unit 1g issues a drawing command indicating drawing of the initial image of the selected game to the drawing processor 10. As a result, the drawing processor 10 develops the image data of the initial image on the display area of the buffer 11. As a result, an initial image is displayed on the display surface of the television monitor 12.
[0062]
In step S7, the variable setting unit 1h resets the flags and variables held in the main memory 5, respectively.
[0063]
In step S8, the viewpoint position data setting unit 1b sets the values of the viewpoint position data Ex, Ey, Ez held in the main memory 5 to initial values. Here, the “initial value” is address data indicating the position of a tee ground Tg of a golf course, for example.
[0064]
In step S100, an image display process is performed. This image display processing routine will be described in detail later. In short, in this routine, images corresponding to the viewpoint position data Ex, Ey, Ez set in step S8 are displayed.
[0065]
In step S9, the computing means 1d adds variables Rx, Ry, Rz (not constant) to the viewpoint position data Ex, Ey, Ez, respectively. Here, the viewpoint position data Ex, Ey, Ez indicate a horizontal direction address, a vertical direction address, and a height, respectively.
[0066]
In step S10, the determination unit 1f determines whether or not the viewpoint position data Ey exceeds the maximum value EYmax. If “YES”, the process proceeds to step S11, and if “NO”, the process proceeds to step S100 again. . The loop consisting of the above steps S100 to S10 is for displaying the golf course so as to guide the game player by displaying the image by the image display processing routine S100 every time the value of the viewpoint position data is changed.
[0067]
In step S11, the viewpoint position data setting unit 1b sets initial values for the viewpoint position data Ex, Ey, and Ez, respectively.
[0068]
In step S100, an image display process is performed.
[0069]
In step S200, a tee-up setting process is performed. The tee-up setting processing routine S200 will be described in detail later. “Tee-up setting” means setting a tee shot position.
[0070]
In step S150, an unduration image output process is performed. The unduration image output routine S150 will be described in detail later. The unduration image is an image of the guide Gu2 described in FIG. As already described, the undulation image is a guide for making the distance and height of the course in the golf game space easier to understand. The guide Gu2 is set to have a higher brightness as the position corresponds to a higher place, and the length is shorter as the position corresponds to a far place. The other step S150 has the same contents.
[0071]
In step S250, camera position setting processing is performed. “Camera position” means an imaging position of a golf course and a golfer. This camera position setting processing routine S250 will be described in detail later.
[0072]
In step S300, a direction setting process is performed. “Direction” means the direction of the golfer's body. The direction setting routine S300 will be described in detail later.
[0073]
In step S12, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the process proceeds to step S350. This step S12 is a step of determining whether or not to end the direction setting by the direction setting routine S300. That is, as long as the game player does not press the fourth button 22f, the process proceeds to the direction setting routine S300, and thereafter, the display of the unduration image based on the direction setting value Di set in the direction setting routine S300 is This is performed in the duration image output routine S150.
[0074]
In step S350, a stance setting process is performed. “Stance” means a golfer's posture. The stance setting routine S350 will be described in detail later.
[0075]
In step S400, a club setting process is performed. “Club” means a golf club such as an iron or wood. The club setting routine S400 will be described in detail later.
[0076]
In step S450, hitting position setting processing is performed. The “striking position” means a position where the club head portion hits the golf ball. The impact position setting routine S450 will be described in detail later.
[0077]
In step S500, a batting process is performed. In this processing, image processing such as a hit golf ball and a background is mainly performed. The striking routine S500 will be described in detail later.
[0078]
In step S13, the determination unit 1f determines whether or not the last ball position is a hole position. If “YES”, the process proceeds to step S13, and if “NO”, the process proceeds to step S14. Here, the reason for determining whether or not the last ball position is the hole position is that it is necessary to change the subsequent processing depending on whether the cup-in is performed or not.
[0079]
In step S14, the drawing command issuing unit 1g issues a drawing command indicating drawing of the score image to the drawing processor 1g. Next, the result information setting unit 1 e supplies character data indicating the number of strokes to the drawing processor 10. Thereby, the drawing processor 1g develops the score image reflecting the result information on the display area of the buffer 11. As a result, a score image reflecting the result is displayed on the display surface of the television monitor 12. Thereafter, the process proceeds to step S3 again.
[0080]
In step S15, the result information setting unit 1e supplies character data indicating the flight distance to the last ball position to the drawing processor 10. Thus, the drawing processor 1g develops image data indicating the flight distance to the last ball position on the display area of the buffer 11. Thereby, the flight distance to the last ball position is displayed on the television monitor 12 as an image.
[0081]
In step S16, the viewpoint position data setting unit 1b substitutes the last ball position data Bxn, Byn, Bzn for the viewpoint position data Ex, Ey, Ez, respectively. Thereafter, the process proceeds to the image display processing routine S100 in step S100 again. As a result, an image with the last ball position as the viewpoint position is displayed.
[0082]
H. Control by image display routine S100 (FIGS. 9 to 10)
[0083]
9 to 10 are flowcharts for explaining the control operation by the image display routine S100.
[0084]
In step S101, the address setting means 1i sets the horizontal minimum address Xmin, the vertical minimum address Ymin, the horizontal maximum address Xmax, and the vertical maximum address Ymax of the golf course. Taking the golf course shown in FIG. 3 as an example, the minimum address is (0, 0) and the maximum address is (200, 530). Hereinafter, x and X mean a horizontal address, y and Y mean a vertical address, and z and Z mean a height.
[0085]
In step S102, the address acquisition unit 1j determines, based on the viewpoint position data Ex, Ey, Ez, the horizontal minimum address data ADxmin, the vertical minimum address data ADymin, and the horizontal maximum address data ADxmax within the display range. Data ADymax is obtained from the table shown in FIG. 4B. Here, the display range means the extraction area Ar1 as shown in FIG. 4A.
[0086]
In step S103, the variable setting unit 1h substitutes the minimum golf course address Xmin for the address data ADx.
[0087]
In step S104, the variable setting means 1h substitutes the minimum address data Ymin of the golf course for the address data ADy.
[0088]
In step S105, the height data correction unit 1k reads the height data z from the table.
[0089]
In step S106, the calculation means 1d subtracts the height data Ez from the height data z read in step S105 under the control of the height data correction means 1k. The height data z registered in the table is an initial value. The height data is based on the height at which the golf ball is placed. Therefore, the height data z registered in the table must be corrected as needed based on the height of the position where the golf ball is placed. Therefore, as shown in step S106, the height data Ez of the viewpoint position data is subtracted from the height data z read from the table.
[0090]
The viewpoint position data Ex, Ey, Ez are used before the first hit, but after the first hit, the viewpoint position data Ex, Ey, Ez includes the ball position. Data Bx, By, Bz is substituted. Therefore, before the first hit, the height data Ez of the viewpoint position data is subtracted from the height data z read from the table, but after the first hit, the ball position data Bz is subtracted from the height data z read from the table.
[0091]
In step S107, the height data correction unit 1k replaces the height data ADz obtained in step S106 with the height data z read from the table in the table in which the height data z is stored. Write to memory location. Thereby, the height data z read from the table is corrected to height data based on the viewpoint position data Ez.
[0092]
In step S108, the luminance processing unit 1q obtains luminance data Lu based on the value of the height data ADz.
[0093]
In step S109, the determination unit 1f determines whether or not the value of the luminance data Lu is larger than the maximum value Lumax of the luminance data Lu. If “YES”, the process proceeds to step S110, and “NO” is determined. If so, the process proceeds to step S111.
[0094]
In step S110, the luminance processing unit 1q substitutes the maximum value Lumax of the luminance data Lu for the luminance data Lu.
[0095]
In step S111, the determination unit 1f determines whether or not the value of the luminance data Lu is smaller than the minimum value Lumin of the luminance data Lu. If “YES”, the process proceeds to step S112, and “NO”. If so, the process proceeds to step S113.
[0096]
In step S112, the luminance processing unit 1q substitutes the minimum value Lumin of the luminance data Lu for the value of the luminance data Lu.
[0097]
In step S113, the luminance processing unit 1q rewrites the corresponding luminance data Lu with newly obtained luminance data Lu.
[0098]
In step S114, the computing means 1d adds “1” to the address data ADx.
[0099]
In step S115, the determination unit 1f determines whether or not the address data ADx is larger than the maximum address data Xmax. If “YES”, the process proceeds to step S116, and if “NO”, the process proceeds to step S119. .
[0100]
In step S116, the variable setting unit 1h substitutes the minimum address data ADxmin within the display range for the address data ADx.
[0101]
In step S117, the computing means 1d adds “1” to the address data ADy.
[0102]
In step S118, the determination unit 1f determines whether or not the address data ADy is larger than the maximum address data Ymax of the golf course. If “YES”, the image display processing routine S100 is exited, and “NO”. If there is, the process proceeds to step S119.
[0103]
On the other hand, in step S119, the determination unit 1f determines whether or not the address data ADx is not less than the minimum address data ADxmin in the display range and not more than the maximum address data ADxmax in the display range, and “YES”. If so, the process proceeds to step S120. If “NO”, the process proceeds to step S105 again.
[0104]
In step S120, the determination unit 1f determines whether the address data ADy is greater than or equal to the minimum address data ADymin within the display range and less than or equal to the maximum address data ADymax within the display range. If it is “NO”, the process proceeds to step S105 again.
[0105]
In step S121, the drawing command issuing unit 1g issues a drawing command to the drawing processor 10. As a result, the drawing processor 10 develops image data based on the viewpoint position data Ex, Ey, Ez on the display surface of the buffer 11. Therefore, the designated image is displayed on the display surface of the television monitor 12.
[0106]
I. Unduration image output routine S150 (FIGS. 11 to 12)
[0107]
11 and 12 are flowcharts for explaining the control operation by the unduration image output routine. As described above, the undulation image is determined by the game player by sensibly determining the distance and undulation on the golf course displayed on the display surface of the television monitor 12 and performing an appropriate operation based on this. It is a guide image for enabling to perform.
[0108]
In step S151, the button operation detection unit 1a determines whether or not the first button has been pressed. If “YES”, the process proceeds to step S152, and if “NO”, the unduration image output routine S150 is executed. Exit.
[0109]
In step S152, the unduration output determining unit 1m determines whether or not the unduration flag is “0”. If “YES”, the process proceeds to step S156, and if “NO”, the process proceeds to step S154. Here, the unduration flag is a flag indicating whether or not the guide Gu2 shown in FIG. 5 is displayed. For example, “1” is displayed and “0” is not displayed. In this step S152, when the unduration output determining means 1m determines that the unduration flag is “0”, the process proceeds to step S156 and subsequent steps, and an unduration image is output. In step S152, if the unduration output determination unit 1m determines that the unduration flag is “1”, the unduration image is deleted in steps S154 and S155.
[0110]
In step S154, the unduration output determination unit 1m sets the unduration flag to “0”.
[0111]
In step S155, the unduration image drawing unit 1n issues an unduration image deletion command to the drawing processor 10. As a result, the drawing processor 10 stops writing line data on the buffer 11. Thereby, the image of the guide Gu2 shown in FIG. 5 is erased from the display surface of the television monitor 12. Note that the erasure of the undulation image may be performed by rewriting an image other than the undulation image.
[0112]
In step S156, the unduration output determination unit 1m sets the unduration flag to “1”.
[0113]
In step S157, the address setting means 1i sets the minimum address data Xmin and Ymin and the maximum address data Xmax and Ymax of the golf course.
[0114]
In step S158, the address setting unit 1i obtains the minimum address ADxmin, ADymin, ADxmax, ADymax within the display range of the unduration image based on the ball position data Bx, By.
[0115]
In step S159, the variable setting unit 1h substitutes the minimum address data Xmin for the address data ADx.
[0116]
In step S160, the variable setting unit 1h substitutes the minimum address data Ymin for the address data ADy.
[0117]
In step S161, the height data correction unit 1k reads the height data z indicated by the address data ADx and ADy from the table.
[0118]
In step S162, the height data correction unit 1k subtracts the height data Ez from the height data z read in step S161 under the control of the height data correction unit 1k. The height data registered in the table is an initial value. The height data is based on the height at which the golf ball is placed. Therefore, the height data z registered in the table must be corrected as needed based on the height of the position where the golf ball is placed. Therefore, as shown in step S162, the viewpoint position data Ez is subtracted from the height data z read from the table.
[0119]
In step S163, the height data correcting unit 1k replaces the height data ADz obtained in step S162 with the height data z read from the table in the table in which the height data z is stored. Write to memory location. Thereby, the height data z read from the table is corrected to height data based on the viewpoint position data Ez.
[0120]
In step S164, the luminance processing unit 1q obtains the luminance data Lu based on the value of the height data ADz.
[0121]
In step S165, the determination unit 1f determines whether or not the value of the luminance data Lu is larger than the maximum value Lumax of the luminance data Lu. If “YES”, the process proceeds to step S110, and “NO” is determined. If so, the process proceeds to step S111.
[0122]
In step S166, the luminance processing unit 1q substitutes the maximum value Lumax of the luminance data Lu for the luminance data Lu.
[0123]
In step S167, the luminance processing unit 1q rewrites the corresponding luminance data Lu with the newly obtained luminance data Lu.
[0124]
In step S168, the computing means 1d adds “1” to the address data ADx.
[0125]
In step S169, the determination unit 1f determines whether the address data ADx is larger than the maximum address data Xmax. If “YES”, the process proceeds to step S170, and if “NO”, the process proceeds to step S173. .
[0126]
In step S170, the variable setting unit 1h substitutes the minimum address data ADxmin within the display range for the address data ADx.
[0127]
In step S171, the computing means 1d adds “1” to the address data ADy.
[0128]
In step S172, the determination means 1f determines whether or not the address data ADy is larger than the maximum address data Ymax of the golf course. If “YES”, the process exits the unduration image display routine S150.
[0129]
On the other hand, in step S173, the determination unit 1f determines whether the address data ADx is not less than the minimum address data ADxmin in the display range and not more than the maximum address data ADxmax in the display range, and “YES”. If so, the process proceeds to step S174, and if “NO”, the process proceeds to step S161 again.
[0130]
In step S174, the determination unit 1f determines whether the address data ADy is not less than the minimum address data ADymin in the display range and not more than the maximum address data ADymax in the display range. If it is “NO”, the process proceeds again to step S161.
[0131]
In step S175, the drawing command issuing unit 1g issues a line drawing command to the drawing processor 10. As a result, the drawing processor 10 writes line data on the display area of the buffer 11. Here, the guide Gu2 is image data in a matrix form as shown in FIG. 3B. However, since the image of the golf course is displayed in a pseudo three-dimensional manner according to the viewpoint position, the guide Gu2 is also displayed in a three-dimensional manner. Specifically, the guide Gu2 is drawn by connecting the vertices of the polygons of the golf course within the display range of the guide Gu2 with many lines. The luminance of the guide Gu2 is determined based on the height of each vertex of the polygon. One line is drawn by connecting a start point and an end point that coincide with the vertices of the polygon. The luminance of one line is expressed in a state where gradation is applied based on the luminance of the start point and the luminance of the end point, for example. As described above, when the height of the start point is higher than the height of the end point, the luminance gradually decreases from the start point to the end point, and when the height of the start point is lower than the height of the end point, the luminance Gradually increases from the start point to the end point.
[0132]
In step S176, the determination unit 1f determines whether or not the value of the luminance data Lu is smaller than the minimum value Lumin of the luminance data L. If “YES”, the process proceeds to step S177, and “NO” is determined. If so, the process proceeds to step S167.
[0133]
In step S177, the luminance processing unit 1q substitutes the minimum value Lumin of the luminance data Lu for the luminance data Lu.
[0134]
The height data is corrected by the processing in steps S161 to S163, and thereafter, the address data ADx and ADy are within the minimum addresses ADxmin, ADymin, ADxmax, and ADymax within the display range of the unduration image. The drawing process is repeatedly performed. By this processing, an image of the guide Gu2 is displayed on the television monitor 12.
[0135]
[Effects of displaying an unduration image]
In order for the game player to cause a golfer in the golf game space to make a shot, it is necessary to perform a predetermined operation on the controller 22. The operation mode will be described in detail. The moving distance of the golf ball in the golf game space varies depending on the operation state of the controller 22. As shown in FIG. 5, the distance and terrain in the golf game space are set for the golf course in the golf game space. For example, the golf course shown in FIG. 5 has a length of 518 yards, and is set to have a bunker or undulation in the middle. The game player operates the controller 22 based on such information.
[0136]
By the way, when the ball is hit at a relatively close place such as rolling the golf ball, it is necessary to display the distance and the undulation more easily. The distance here means a sense of distance given to the game player. This is because the game player can operate the controller 22 according to the distance and the undulations as described above. The distance and undulation of the golf course are expressed by the color and brightness of the displayed image. The brightness and darkness of the golf course image itself is expressed by the color and luminance information obtained by the graphics data generation processor 3 shown in FIG.
[0137]
However, it is difficult for the game player to recognize the undulation and distance of the golf course only by the color and brightness of the golf course. This is because a very large object such as a golf course is actually expressed within a very narrow range such as the display surface of the television monitor 12. In other words, it is difficult for a game player who knows the actual size, distance, and undulations to recognize the size, distance, and undulations in the game space only by color and brightness.
[0138]
Therefore, in this embodiment, as shown in FIG. 5, the guide Gu2 is displayed so as to be superimposed on the terrain formed in the game space. As already described, this guide Gu2 is displayed by a line drawing command. The shape of the guide Gu2 is a matrix as shown in FIG. 3B. As shown in FIG. 5, when displaying on the terrain, the length of the line constituting the guide Gu2 is changed according to the distance from the viewpoint position and the position. Moreover, the luminance of the guide Gu2 is changed based on the luminance data Lu of the terrain on which the guide Gu2 is displayed. Therefore, it is possible to accurately give a sense of distance and undulation information in the game space to the game player, so that the game player can further operate the controller 22 according to the displayed golf course. There is a big merit that it can be done accurately.
[0139]
J. et al. Control by tee-up setting routine S200 (FIGS. 13 to 14)
[0140]
13 and 14 are flowcharts for explaining the control operation by the tee-up setting routine S200. Here, the setting of the tee-up means setting of the position of the tee shot.
[0141]
In step S <b> 201, the drawing command issuing unit 1 g issues a drawing command indicating drawing of the guidance image to the drawing processor 10. The drawing processor 10 expands the guidance image data on the display area of the buffer 11. Thereby, a guidance image for setting tee-up is displayed in the area Ar3 on the display surface of the television monitor 12 shown in FIG. 5, and a guide Gu1 is displayed in the right area.
[0142]
In step S202, the drawing command issuing unit 1g issues a line drawing command corresponding to the initial value to the drawing processor 10. The drawing processor 10 writes line data from the start point address to the end point address on the buffer 11 in response to the line drawing command. This line is the instruction image In on the guide Gu1 shown in FIG. The guide Gu1 is a reduced image of the currently selected golf course. Therefore, the game user can predict the trajectory, the flight distance, and the stop position of the golf ball when the golf player hits the golf player Ma in the golf game space through the controller 22 with the current setting.
[0143]
In step S203, the button operation detection unit 1a determines whether or not the cross key is pressed. If “YES”, the process proceeds to step S204.
[0144]
In step S204, the button operation detection unit 1a determines whether or not the right key R is pressed. If “YES”, the process proceeds to step S209, and if “NO”, the process proceeds to step S205.
[0145]
In step S205, the button operation detection unit 1a determines whether or not the left key L is pressed. If “YES”, the process proceeds to step S206, and if “NO”, the process proceeds to step S203 again.
[0146]
In step S206, the computing means 1d subtracts “1” from the tee-up setting value Ty.
[0147]
In step S207, the determination unit 1f determines whether or not the tee-up setting value Ty is larger than the minimum value Tymin of the tee-up setting value. If “YES”, the process proceeds to step S208, and “NO”. If there is, the process proceeds to step S212.
[0148]
In step S208, the variable setting unit 1h substitutes the maximum value Tymax of the tee-up setting value for the tee-up setting value Ty.
[0149]
In step S209, the computing means 1d adds “1” to the tee-up setting value Ty.
[0150]
In step S210, the determination unit 1f determines whether or not the tee-up setting value Ty is larger than the maximum value Tymax of the tee-up setting value. If “YES”, the process proceeds to step S211 and “NO”. If there is, the process proceeds to step S212.
[0151]
In step S211, the variable setting unit 1h substitutes the minimum value Tymin of the tee-up setting value for the tee-up setting value Ty.
[0152]
In step S212, the drawing command issuing unit 1g issues a drawing command indicating drawing of a tee-up image corresponding to the value of the tee-up setting value Ty to the drawing processor 10. As a result, the image on the area Ar3 shown in FIG. 5 is displayed according to the value of the tee-up setting value Ty.
[0153]
In step S213, the drawing command issuing unit 1g issues a line drawing command to the drawing processor 10. As a result, the drawing processor 10 writes line data on the buffer 11 from the start point address to the end point address. Therefore, the line In on the guide Gu1 on the display surface of the television monitor 12 is also in a display state according to the value of the tee-up setting value Ty.
[0154]
In step S214, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the process proceeds to step S215, and if “NO”, the process proceeds to step S203 again.
[0155]
In step S215, the parameter management unit 1o stores the tee-up set value data Ty in the main memory 5.
[0156]
K. Control by camera position setting routine S250 (FIGS. 15 to 16)
[0157]
15 and 16 are flowcharts for explaining the control operation by the camera position setting routine S250. In this embodiment, as the camera position, the back, front, left side, right side, etc. of the golf player Ma can be set in the game space. The camera position setting value indicating the camera position is viewpoint position data. Therefore, viewpoint position data corresponding to the camera position setting value is selected, and an image corresponding to the viewpoint position data is output. The camera position setting value is incremented or decremented each time the right key R or the left key L of the cross key is pressed once.
[0158]
In step S251, the button operation detection unit 1a determines whether or not the cross key is pressed. If “YES”, the process proceeds to step S252.
[0159]
In step S252, the button operation detection unit 1a determines whether or not the right key R is pressed. If “YES”, the process proceeds to step S257, and if “NO”, the process proceeds to step S253.
[0160]
In step S253, the button operation detection unit 1a determines whether or not the left key L is pressed. If “YES”, the process proceeds to step S254, and if “NO”, the process proceeds to step S251 again.
[0161]
In step S254, the calculation unit 1d subtracts “1” from the camera position setting value Ca.
[0162]
In step S255, the determination unit 1f determines whether or not the camera position setting value Ca is larger than the minimum camera position setting value Camin. If “YES”, the process proceeds to step S256, and “NO”. If there is, the process proceeds to step S260.
[0163]
In step S256, the variable setting unit 1h substitutes the maximum camera position setting value Camax for the camera position setting value Ca.
[0164]
In step S257, the calculation unit 1d adds “1” to the camera position setting value Ca.
[0165]
In step S258, the determination unit 1f determines whether or not the camera position setting value Ca is larger than the maximum camera position setting value Camax. If “YES”, the process proceeds to step S259, and “NO”. If there is, the process proceeds to step S260.
[0166]
In step S259, the variable setting unit 1h substitutes the minimum camera position setting value Camin for the camera position setting value Ca.
[0167]
In step S260, the variable setting unit 1h sets the viewpoint position data Ex, Ey, Ez according to the camera position setting value Ca. As already described, the camera position setting value Ca is viewpoint position data. Then, viewpoint position data is registered in the table for each camera position setting value Ca. Therefore, “setting” here means that the variable setting unit 1h reads viewpoint position data corresponding to the value of the camera position setting value Ca from the table.
[0168]
In step S100, processing by an image display processing routine is performed. This is a drawing process based on the viewpoint position data Ex, Ey, Ez set in step S260.
[0169]
In step S261, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the camera position setting routine S250 is exited. If “NO”, the process returns to step S251. Transition.
[0170]
L. Control by direction setting routine S300 (FIGS. 17 to 18)
[0171]
17 and 18 are flowcharts for explaining the control operation by the direction setting routine S300. The direction setting value is angle data indicating the direction of the golfer's body in the golf game space, that is, the hitting direction. Therefore, the golf ball moves in the direction indicated by the angle data corresponding to the direction setting value in the golf game space. The direction setting value is incremented or decremented each time the right key R or the left key L of the cross key is pressed once. The increment / decrement unit is reference angle data Ang.
[0172]
In step S301, the drawing command issuing unit 1g issues a drawing command indicating drawing of the guidance image to the drawing processor 10. Thereby, the drawing processor 10 develops the guidance image data on the display area of the buffer 11. Thereby, a guidance image for setting the direction is displayed in the area Ar3 on the display surface of the television monitor 12 shown in FIG. 5, and a guide Gu1 is displayed in the right area.
[0173]
In step S302, the drawing command issuing unit 1g issues a line drawing command corresponding to the initial value to the drawing processor 10. The drawing processor 10 writes line data on the buffer 11 from the start point address to the end point address in response to the line drawing command. As described above, this line is the line In on the guide Gu1 shown in FIG.
[0174]
In step S303, the button operation detection unit 1a determines whether or not the cross key is pressed. If “YES”, the process proceeds to step S304.
[0175]
In step S304, the button operation detection unit 1a determines whether or not the right key R is pressed. If “YES”, the process proceeds to step S309, and if “NO”, the process proceeds to step S305.
[0176]
In step S305, the button operation detection unit 1a determines whether or not the left key L is pressed. If “YES”, the process proceeds to step S306, and if “NO”, the process proceeds to step S303 again.
[0177]
In step S306, the calculation means 1d subtracts the reference angle data Ang from the direction setting value Di.
[0178]
In step S307, the determination unit 1f determines whether or not the direction setting value Di is less than “0”. If “YES”, the process proceeds to step S308, and if “NO”, the process proceeds to step S312.
[0179]
In step S308, the variable setting unit 1h substitutes “360” for the direction setting value Di.
[0180]
In step S309, the calculation unit 1d adds the reference angle data Ang to the direction setting value Di.
[0181]
In step S310, the determination unit 1f determines whether or not the direction setting value Di is larger than “360”. If “YES”, the process proceeds to step S311, and if “NO”, the process proceeds to step S312. To do.
[0182]
In step S311, the variable setting unit 1h substitutes “0” for the direction setting value Di.
[0183]
In step S312, the drawing command issuing unit 1g issues a drawing command indicating drawing of the direction display image according to the value of the direction setting value Di to the drawing processor 10. As a result, the image on the area Ar3 shown in FIG. 5 is displayed according to the direction setting value Di.
[0184]
In step S313, the drawing command issuing unit 1g issues a line drawing command to the drawing processor 10. As a result, the drawing processor 10 writes line data on the buffer 11 from the start point address to the end point address. Accordingly, the line In on the guide Gu1 on the display surface of the television monitor 12 is also in a display state corresponding to the value of the direction setting value Di.
[0185]
In step S314, the parameter management unit 1p stores the direction setting value data Di in the main memory 5.
[0186]
M.M. Control by stance setting routine S350 (FIGS. 19 to 20)
[0187]
19 and 20 are flowcharts for explaining the control operation by the stance setting routine S350. The stance setting means setting a golfer's posture.
[0188]
In step S351, the drawing command issuing unit 1g issues a drawing command indicating drawing of the guidance image to the drawing processing processor 10. The drawing processor 10 expands the guidance image data in the display area of the buffer 11. Accordingly, a guidance image for setting a stance is displayed in the area Ar3 on the display surface of the television monitor 12 shown in FIG. 5, and a guide Gu1 is displayed in the right area.
[0189]
In step S352, the drawing command issuing unit 1g notifies the drawing processor 10 of a line drawing command corresponding to the initial value. The drawing processor 10 writes line data from the start point address to the end point address on the buffer 11 in response to the line drawing command. As described above, this line is the line In on the guide Gu1 shown in FIG.
[0190]
In step S353, the button operation detection unit 1a determines whether or not the cross key is pressed. If “YES”, the process proceeds to step S354.
[0191]
In step S354, the button operation detection unit 1a determines whether or not the right key R is pressed. If “YES”, the process proceeds to step S359, and if “NO”, the process proceeds to step S355.
[0192]
In step S355, the button operation detection unit 1a determines whether or not the left key L is pressed. If “YES”, the process proceeds to step S356, and if “NO”, the process proceeds to step S353 again.
[0193]
In step S356, the computing means 1d subtracts the reference angle data Ang from the stance set value St.
[0194]
In step S357, the determination unit 1f determines whether or not the value of the stance setting value St is smaller than the minimum value Stmin of the stance setting value. If “YES”, the process proceeds to step S358, and “NO ", The process proceeds to step S362.
[0195]
In step S358, the variable setting unit 1h substitutes the maximum value Stmax of the stance setting value for the stance setting value St.
[0196]
In step S359, the calculation means 1d adds the reference angle data Ang to the stance set value St.
[0197]
In step S360, the determination unit 1f determines whether or not the stance set value St is larger than the maximum value Angmax of the angle data. If “YES”, the process proceeds to step S361, and if “NO”, the process proceeds to step S361. The process proceeds to S362.
[0198]
In step S361, the variable setting unit 1h substitutes the minimum value Stmin of the stance setting value for the stance setting value St.
[0199]
In step S362, the drawing command issuing unit 1g issues a drawing command indicating the display of the stance image corresponding to the value of the stance setting value St to the drawing processing processor 10. Thereby, the image of the area Ar3 on the display surface of the television monitor 12 shown in FIG. 5 is in a display state according to the value of the stance setting value St.
[0200]
In step S363, the drawing command issuing unit 1g issues a line drawing command issuing command to the drawing processor 10. As a result, the drawing processor 10 writes line data on the buffer 11 from the start point address to the end point address. Therefore, the line In on the guide Gu1 on the display surface of the television monitor 12 is also in a display state according to the value of the stance set value St.
[0201]
In step S364, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the process proceeds to step S365, and if “NO”, the process proceeds to step S363 again.
[0202]
In step S365, the parameter management unit 1o stores the stance set value data St in the main memory 5.
[0203]
N. Control by club setting routine S400 (FIGS. 21 to 22)
[0204]
21 and 22 are flowcharts for explaining the control operation by the club setting routine S400. Club setting means selecting a golf club.
[0205]
In this process, club number data NO is used. Texture address data indicating an image of one club is assigned to one value of the club number data NO. These data are stored as a table. The club number data NO is incremented or decremented by pressing the cross key once. Then, texture address data corresponding to the value of the club number data NO is read from the table, and the read texture address data is supplied to the drawing processor 10. The drawing processor 10 reads the club image data corresponding to the texture address data from the non-display area of the buffer 11 and writes the read club image data to the display area of the buffer 11. Accordingly, a club image is displayed in the area Ar3 on the display surface of the television monitor 12 shown in FIG.
[0206]
In step S401, the drawing command issuing unit 1g issues a drawing command indicating the display of the guidance image to the drawing processing processor 10. The drawing processor 10 expands the guidance image data on the display area of the buffer 11. Thereby, an image indicating the selected golf club is displayed in the area Ar3 on the display surface of the television monitor 12 shown in FIG. 5, and a guide Gu2 is displayed in the right area.
[0207]
In step S402, the drawing command issuing unit 1g notifies the drawing processor 10 of a line drawing command corresponding to the initial value. The drawing processor 10 writes line data from the start point address to the end point address on the buffer 11 in response to the line drawing command. This line is the line In on the guide Gu1 shown in FIG. The guide Gu1 is a reduced image of the currently selected golf course. Therefore, the game user can predict the trajectory, flight distance, and stop position of the golf ball when the golf player hits the golf player Ma in the golf game space through the controller 22 with the current settings.
[0208]
In step S403, the button operation detection unit 1a determines whether or not the cross key is pressed. If “YES”, the process proceeds to step S404.
[0209]
In step S404, the button operation detection unit 1a determines whether or not the right key R is pressed. If “YES”, the process proceeds to step S404, and if “NO”, the process proceeds to step S405.
[0210]
In step S405, the button operation detection unit 1a determines whether or not the left key L is pressed. If “YES”, the process proceeds to step S406, and if “NO”, the process proceeds to step S403 again.
[0211]
In step S406, the computing means 1d subtracts “1” from the club number data NO.
[0212]
In step S407, the determination unit 1f determines whether or not the value of the club number data NO is smaller than the minimum value NOmin of the club number data NO. If “YES”, the process proceeds to step S408. If "NO", the process proceeds to step S412.
[0213]
In step S408, the variable setting unit 1h substitutes the maximum value NOmax of the club number data NO for the club number data NO.
[0214]
In step S409, the computing means 1d adds “1” to the club number data NO.
[0215]
In step S410, the determination unit 1f determines whether or not the club number data NO is larger than the maximum number NOmax of the club number. If “YES”, the process proceeds to step S411, and if “NO”, the step is performed. The process proceeds to S412.
[0216]
In step S411, the variable setting unit 1h substitutes the maximum value NOmin of the club number NO for the club number NO.
[0217]
In step S412, the drawing command issuing unit 1g issues a drawing command indicating drawing of a club image according to the value of the club number data NO to the drawing processor 10. As a result, the image on the area Ar3 on the display surface of the television monitor 12 shown in FIG. 5 becomes the display state of the club image corresponding to the value of the club number NO.
[0218]
In step S413, the drawing command issuing unit 1g issues a line drawing command to the drawing processor 10. As a result, the drawing processor 10 writes line data on the buffer 11 from the start point address to the end point address. Therefore, the line In on the guide Gu1 on the display surface of the television monitor 12 is also in a display state according to the value of the stance set value St.
[0219]
In step S414, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the process proceeds to step S415, and if “NO”, the process proceeds to step S403 again.
[0220]
In step S415, the parameter management unit 1o stores the club number data NO in the main memory 5.
[0221]
O. Control by the striking position setting routine S450 (FIGS. 23 to 24)
[0222]
23 and 24 are flowcharts for explaining the control operation by the striking position setting routine S450. The hitting position setting means setting which part of the golf ball the head part of the club selected in the club setting routine S400 hits when hitting. In the data indicating the position of the golf ball, the address value Had in which only the address value in the vertical direction is fixed and the address value in the horizontal direction is fixed, and the address value in the vertical direction is fixed. It consists of changing address data Vad.
[0223]
In step S451, the drawing command issuing unit 1g issues a drawing command indicating drawing of an image of the golf ball to the drawing processor 10. As a result, the drawing processor 10 writes the golf ball image data in the display area of the buffer 11. Here, the golf ball image is displayed at a substantially central position on the display surface shown in FIG.
[0224]
In step S452, a drawing command indicating drawing of the horizontal axis image is issued to the drawing processor 10. Here, the drawing command includes address data Had on the display area of the buffer 11. Thereby, the drawing processor 10 writes the horizontal axis image data at the position indicated by the value of the address data Had. Thereby, as shown in FIG. 3C, the horizontal axis image Ha is displayed on the display surface of the television monitor 12.
[0225]
In step S453, the computing means 1d adds “1” to the address data Had. In step S454, the button operation detection unit 1a determines whether or not the mth button 22f has been pressed. If “YES”, the process proceeds to step S460, and if “NO”, the process proceeds to step S455.
[0226]
In step S455, the determination unit 1f determines whether or not the value of the address data Had is larger than the maximum value HADmax of the address data Had. If “YES”, the process proceeds to step S456, and “NO” is determined. If so, the process proceeds to step S452.
[0227]
In step S456, the computing means 1d subtracts “1” from the address data Had.
[0228]
In step S457, the determination unit 1f determines whether the value of the address data Had is larger than the minimum value HADmin of the address data Had. If “YES”, the process proceeds to step S458, and “NO” is determined. If so, the process proceeds to step S452.
[0229]
In step S458, a drawing command indicating drawing of the horizontal axis image is issued to the drawing processor 10. Here, the drawing command includes address data Had on the display area of the buffer 11. Thereby, the drawing processor 10 writes the horizontal axis image data at the position indicated by the value of the address data Had. Thereby, as shown in FIG. 3C, the horizontal axis image Ha is displayed on the display surface of the television monitor 12.
[0230]
In step S459, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the process proceeds to step S460, and if “NO”, the process proceeds to step S456 again. Here, when the determination is “NO” and the above-described processing is repeated again, the horizontal axis image Ha shown in FIG. 3C continues to move to the left and right as indicated by the arrow Yh on the display surface. When the fourth button 22f is pressed, the hit position in the horizontal direction of the golf ball is determined.
[0231]
In step S460, the parameter management unit 1o stores the address data Had in the main memory 5.
[0232]
In step S461, a drawing command indicating drawing of a vertical axis image is issued to the drawing processor 10. Here, the drawing command includes address data Vad on the display area of the buffer 11. As a result, the drawing processor 10 writes the vertical axis image data at the position indicated by the address data Vad. Thereby, as shown in FIG. 3C, the vertical axis image Va is displayed on the display surface of the television monitor 12.
[0233]
In step S462, the computing means 1d adds “1” to the address data Vad. In step S463, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the process proceeds to step S469, and if “NO”, the process proceeds to step S464.
[0234]
In step S464, the determination unit 1f determines whether or not the value of the address data Vad is larger than the maximum value VADmax of the address data Vad. If “YES”, the process proceeds to step S465, and “NO” is determined. If so, the process proceeds to step S461 again.
[0235]
In step S465, the computing means 1d subtracts “1” from the vertical address data Vad.
[0236]
In step S466, the determination unit 1f determines whether or not the value of the address data Vad is larger than the minimum value VADmin of the address data Vad. If “YES”, the process proceeds to step S467, and “NO” is determined. If so, the process proceeds to step S461 again.
[0237]
In step S467, a drawing command indicating drawing of the vertical axis image is issued to the drawing processor 10. Here, the drawing command includes address data Vad on the display area of the buffer 11. Thereby, the drawing processor 10 writes the vertical axis image data at the position indicated by the value of the address data Vad. Thereby, as shown in FIG. 3C, the vertical axis image Va is displayed on the display surface of the television monitor 12.
[0238]
In step S468, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the process proceeds to step S469, and if “NO”, the process proceeds to step S465 again. Here, by determining “NO” and repeating the above-described process again, the vertical axis image Va shown in FIG. 3C continues to move on the display surface as indicated by the arrow Yv. When the fourth button 22f is pressed, the hit position in the vertical direction of the golf ball is determined.
[0239]
In step S469, the parameter management unit 1o stores the address data Vad in the main memory 5. Then, the strike position setting routine S450 is exited.
[0240]
P. Control by the striking routine S500 (FIGS. 25 to 26)
[0241]
25 and 26 are flowcharts for explaining the control operation by the striking routine S500. Here, “striking” means that the golf player hits a golf ball Ma in the golf game space displayed on the display surface of the television monitor 12 by operating the controller 22 by the game player. . In this hitting routine, an image display process is performed until the golf ball hit by the golfer Ma in the golf game space falls and stops in the space.
[0242]
In step S501, the drawing command issuing unit 1g issues a drawing command indicating drawing of the image of the batting guide Gu3 shown in FIG. 3D to the drawing processor 10. The drawing processor 10 writes the guide image data Gu3 shown in FIG. 3D in the display area of the buffer 11 based on the drawing command. As a result, the guide Gu3 shown in FIG. 3D is displayed at the approximate center on the display surface of the television monitor 12.
[0243]
Here, the guide Gu3 will be described. When the game player operates the controller to cause the golfer Ma in the golf game space to perform a hit, the guide Gu3 indicates how much the hitting strength (hereinafter referred to as “energy”) by his / her operation is. This is an image for showing to the game player. As shown in FIG. 3D, the guide Gu3 has a shape in which a donut-shaped figure is partially cut away. The character “max” is attached to the upper portion of the cutout portion, and the character “min” is attached to the lower portion of the cutout portion. “Max” means that the hitting power is maximum, and “min” means that the hitting power is minimum.
[0244]
When the fourth button 22f is pressed while the guide Gu3 is displayed, the inside of the guide Gu3 is sequentially filled from the min position of the guide Gu3 toward the max position. At this time, it is painted in a predetermined amount, such as yellow, light blue, blue, purple, and red. The tip of the filled portion indicates the energy of hitting at that time. Therefore, the longer the time that the fourth button 22f is pressed, the greater the energy of hitting.
[0245]
On the other hand, when the fourth button 22f is released in the above state, the filled portions of the guide Gu3 disappear sequentially from that point. In the case of the above example, the filled portions disappear in the order of red, purple, blue, light blue, and yellow from the position of max of the guide Gu3 toward the position of min. The tip of the filled portion indicates the energy of hitting at that time. Therefore, the longer the time for which the fourth button 22f is released, the smaller the energy of hitting. When the fourth button 22f is pressed again after the fourth button 22f is released, the energy of hitting at that time is determined. When the energy of the hit is fixed, the hit is made. Corresponding portions of the above description are S501 and S505 to S511 of the flowchart.
[0246]
In step S502, the random number generation means 1p randomly generates values indicating the wind direction WDi and the wind force Wp.
[0247]
In step S503, the drawing command issuing unit 1g supplies the drawing processing processor 10 with drawing data indicating drawing of character data and an arrow image according to values indicating the wind direction WDi and the wind power Wp. The drawing processor 10 writes image data indicating wind power, a title, and an arrow in the display area of the buffer 11 based on the drawing command from the drawing command issuing unit 1g. As a result, as shown in FIG. 5, on the display surface of the television monitor 12, an arrow By indicating the direction of the wind, the title of the wind (“WIND”), and the value of the wind (in this example, “4 m )) Is displayed.
[0248]
In step S504, the parameter management unit 1o stores the wind direction data WDi and the wind data Wp in the main memory 5.
[0249]
In step S505, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the process proceeds to step S506, and if “NO”, the process proceeds to step S501 again.
[0250]
In step S506, the calculation means 1d adds the reference value data k to the impact energy data POWER.
[0251]
In step S507, the drawing command issuing unit 1g supplies the drawing processor 10 with a line drawing command corresponding to the value of the hit energy data POWER. Here, the line drawing command means that a line is drawn with a specified color from the outer periphery to the inner periphery (or from the inner periphery to the outer periphery) of the guide Gu3 shown in FIG. 3D. Based on the line drawing command, the drawing processor 10 writes line data on the guide Gu3 written in the buffer 11 as much as the value of the impact energy data POWER. Thereby, the inside of the guide Gu3 displayed on the display surface of the television monitor 12 is filled with a predetermined color.
[0252]
In step S508, the button operating means 1a determines whether or not the fourth button 22f has been released. If “YES”, the process proceeds to step S509, and if “NO”, the process proceeds to step S506 again.
[0253]
In step S509, the calculation means 1d subtracts the reference data k from the impact energy data POWER.
[0254]
In step S510, the drawing command issuing unit 1g supplies the drawing processor 10 with a line drawing command corresponding to the value of the hit energy data POWER. Based on the line drawing command, the drawing processor 10 writes the line data on the guide Gu3 written in the buffer 11 by the amount indicated by the value of the impact energy data POWER. Thereby, the inside of the guide Gu3 displayed on the display surface of the television monitor 12 is filled with a predetermined color. Note that the filling in the guide Gu3 in step S510 has a smaller value of the impact energy data POWER, so that the painted area gradually decreases on the display surface of the television monitor 12. Looks like going.
[0255]
In step S511, the button operation detection unit 1a determines whether or not the fourth button 22f has been pressed. If “YES”, the process proceeds to step S512, and if “NO”, the process proceeds to step S509 again. Here, when the fourth button 22f is pressed, the impact energy data POWER at this time is fixed.
[0256]
In step S512, the computing means 1d adds “1” to the hit number data Hi. The parameter management means 1o stores the hit number data Hi in the main memory 5.
[0257]
In step S513, the drawing command issuing unit 1g sequentially supplies a drawing command indicating drawing of the image of the golf player Ma to the drawing processor 10. The drawing processor 10 sequentially develops the image of the golfer Ma on the display area of the buffer 11 based on the drawing command. As a result, a series of animations until the golf player Ma finishes hitting the golf ball on the display surface of the television monitor 12 is executed.
[0258]
In step S514, the calculation means 1d determines that the ball position Bx, By, Bz, impact energy data POWER, tee-up data Ty, direction data Di, stance data St, club number data NO, address data Had and Vad, and wind direction data WDi. Based on the wind power data Wp, all ball positions Bx, By, Bz per unit time are obtained. Here, the unit time is, for example, 30 frames / second in the NTSC television system. Therefore, in this case, the position of the ball for each frame is obtained in advance.
[0259]
The time until the ball stops depends on the above parameters. Therefore, if the position of the ball for each frame is obtained and an image corresponding to the position of the ball is displayed for each frame, the number of frames until the ball stops is also different. The number of frames until the ball stops is stored in the main memory 5 as nmax.
[0260]
In step S515, the computing means 1d adds f to the variable n. Here, f means, for example, one frame.
[0261]
In step S516, the determination unit 1f determines whether or not the variable n is larger than the maximum value nmax of n. If “YES”, the process proceeds to step S517, and if “NO”, the process proceeds to step S518. To do. Here, nmax is the number of frames until the golf ball stops, as already described.
[0262]
In step S517, the variable setting unit 1h substitutes “0” for the variable n.
[0263]
In step S518, the drawing command issuing unit 1g supplies the drawing processing processor 10 with a drawing command indicating drawing of the ball according to the ball position data Bxn, Byn, Bzn.
[0264]
In step S519, the computing means 1d adds f to the variable n.
[0265]
In step S520, the determination unit 1f determines whether or not the variable n is larger than the maximum value nmax. If “YES”, the blow routine S500 is exited, and if “NO”, the process proceeds to step S521. .
[0266]
In step S521, the variable setting unit 1h substitutes the ball position data Bxn, Byn, Bzn for the viewpoint position data Ex, Ey, Ez.
[0267]
In S100, the processing by the image display processing routine S100 is performed. The processing from step S519 to step S100 is processing for reproducing the state in which the hit golf ball is flying. The ball position changes every frame. Therefore, by replacing the ball position data Bxn, Byn, Bzn with the viewpoint position data Ex, Ey, Ez, the viewpoint changes every moment. Since the viewpoint changes every moment, the background image also changes every moment. Thereby, a so-called replay image is displayed on the display surface of the television monitor 12.
[0268]
According to the present embodiment described above, the image information indicating the terrain and the image information of the moving object are displayed on the display surface of the display means, and the operating state of the operating means and the terrain information of the terrain are displayed on the moving object. In the game system using the terrain information adapted to move on the display surface of the display means, a guide composed of a plurality of lines is displayed on the display surface of the display means, and the guide Since the brightness and length of the lines constituting the terrain are set based on the terrain information of the terrain, the terrain information that cannot be expressed only by the terrain image information can be easily understood by the game player. is there.
[0269]
In the above embodiment, the image information indicating the topography is displayed in a pseudo three-dimensional manner on the display surface of the display means, and the guide is composed of a plurality of lines arranged in a matrix on the two-dimensional plane. In addition, since the pseudo three-dimensional display is performed on the terrain displayed on the display surface of the display means, the display state of the guide and the terrain can be matched. There is an effect that the guide can be easily understood.
[0270]
In the embodiment, the game system is a golf game system, the image information indicating the terrain is image information of a golf course, and the moving object is image information of a golf ball. Therefore, there is an effect that the game player can play a golf game on the golf game space with a sense of playing a more real golf game.
[0271]
In the embodiment, the topographic image information is composed of a large number of polygons, and the guide is composed of a plurality of lines drawn between the tops of the polygons. By matching the start point and the end point of the guide, the guide can be displayed along the terrain, and the terrain state can be guided more accurately.
[0272]
In the above embodiment, the topographic information is information indicating the height of the vertex, and the luminance of the line forming the guide is the height value of the top of the topographic information corresponding to the start point and the end point of each line. Since it is set accordingly, it is possible to more accurately express the topography of the terrain by the guide, and there is an effect that it is possible to better guide the game player.
[0273]
In the embodiment, the moving direction of the moving object is set in advance, and the terrain image information and the guide are displayed in a pseudo three-dimensional manner according to the set moving direction of the moving object. Guide display corresponding to the moving direction can be performed, and this provides an effect that more appropriate guide can be given to the game player.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a game system showing an embodiment of the present invention.
FIG. 2 is a functional block diagram illustrating functions of a CPU 1 shown in FIG.
FIG. 3 is an explanatory diagram showing an example of a golf course.
4 is an explanatory diagram showing a partial area and table extracted from the golf course shown in FIG. 3. FIG.
[FIG. 4A] It is explanatory drawing which shows extraction area Ar1 extracted from the golf course shown in FIG.
FIG. 4B is an explanatory diagram showing a table made up of coordinates, heights, and luminance data of polygon vertices of each part of the golf course shown in FIG.
FIG. 5 is an explanatory diagram showing a screen display example.
FIG. 6 is a flowchart for explaining a control operation by a main routine of the game program.
FIG. 7 is a flowchart for explaining a control operation by a main routine of the game program.
FIG. 8 is a flowchart for explaining a control operation by a main routine of the game program.
FIG. 9 is a flowchart for explaining a control operation by an image display routine S100.
FIG. 10 is a flowchart for explaining a control operation by the image display routine S100.
FIG. 11 is a flowchart for explaining a control operation by an unduration image display routine S150.
FIG. 12 is a flowchart for illustrating a control operation by an unduration image display routine S150.
FIG. 13 is a flowchart for illustrating a control operation by a tee-up setting routine S200.
FIG. 14 is a flowchart for illustrating a control operation by a tee-up setting routine S200.
FIG. 15 is a flowchart for explaining a control operation by a camera position setting routine S250.
FIG. 16 is a flowchart for explaining a control operation by a camera position setting routine S250.
FIG. 17 is a flowchart for illustrating a control operation by a direction setting routine S300.
FIG. 18 is a flowchart for illustrating a control operation by a direction setting routine S300.
FIG. 19 is a flowchart for illustrating a control operation by a stance setting routine S350.
FIG. 20 is a flowchart for illustrating a control operation by a stance setting routine S350.
FIG. 21 is a flowchart for illustrating a control operation by club setting routine S400.
FIG. 22 is a flowchart for illustrating a control operation by club setting routine S400.
FIG. 23 is a flowchart for explaining a control operation by a striking position setting routine S450.
FIG. 24 is a flowchart for explaining a control operation by a striking position setting routine S450.
FIG. 25 is a flowchart for explaining a control operation by the striking routine S500.
FIG. 26 is a flowchart for illustrating a control operation by a hitting routine S500.
[Explanation of symbols]
1 CPU, 1a button operation detection means, 1b start point position data setting means, 1c display range information extraction means, 1d calculation means, 1e result information setting means, 1f determination means, 1g drawing command issuing means, 1h variable setting means, 1i address Setting means, 1j address acquisition means, 1k height data correction means, 1m unduration output judgment means, 1n unduration image drawing means, 1o parameter management means, 1p random number generation means, 1q luminance processing means, 2 bus, 3 graphics Data generation processor, 4, 20 interface circuit, 5 main memory, 6 ROM, 7 decompression circuit, 8 parallel port, 9 serial port, 10 drawing processing processor, 11, 14, 18 buffer, 13 sound processing processor, 15 amplification circuit, 16 speakers, 17 decoders, 1 9 recording medium driver, 21 memory, 22 controller.

Claims (2)

ポリゴンで構成されるゴルフコースの画像情報とゴルフボールの画像情報とを、表示手段の表示面上に表示し、前記ゴルフコースの画像情報の所定範囲内に存在する前記ポリゴンの頂点間に線を表示すると共に、各線の輝度を、前記ゴルフボールの位置の高さを基準とした、その始点に対応する前記ポリゴンの頂点の高さと、その終点に対応する前記ポリゴンの頂点の高さと、に応じて設定することを特徴とするゲームシステム。 The golf course image information and golf ball image information composed of polygons are displayed on the display surface of the display means, and a line is placed between the vertices of the polygon existing within a predetermined range of the golf course image information. and displays, each line of the luminance, with reference to the height position of the golf ball, the height of the apex of the polygon corresponding to the starting point, the height of the apex of the polygon corresponding to the end point, depending on the A game system characterized by setting. ポリゴンで構成されるゴルフコースの画像情報とゴルフボールの画像情報とを、表示手段の表示面上に表示し、前記ゴルフコースの画像情報の所定範囲内に存在する前記ポリゴンの頂点間に線を表示すると共に、各線の輝度を、前記ゴルフボールの位置の高さを基準とした、その始点に対応する前記ポリゴンの頂点の高さと、その終点に対応する前記ポリゴンの頂点の高さと、に応じて設定するようゲームシステムを動作させるためのプログラムを記録した、前記ゲームシステムにより読み取り可能な記録媒体。 The golf course image information and golf ball image information composed of polygons are displayed on the display surface of the display means, and a line is placed between the vertices of the polygon existing within a predetermined range of the golf course image information. and displays, each line of the luminance, with reference to the height position of the golf ball, the height of the apex of the polygon corresponding to the starting point, the height of the apex of the polygon corresponding to the end point, depending on the A recording medium readable by the game system, on which a program for operating the game system to be set is recorded.
JP2002234497A 2002-08-12 2002-08-12 Golf game system and recording medium Expired - Fee Related JP3656845B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002234497A JP3656845B2 (en) 2002-08-12 2002-08-12 Golf game system and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002234497A JP3656845B2 (en) 2002-08-12 2002-08-12 Golf game system and recording medium

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP34562299A Division JP3410409B2 (en) 1999-12-06 1999-12-06 Guide display method, game system and recording medium in game system using topographic information

Publications (2)

Publication Number Publication Date
JP2003079950A JP2003079950A (en) 2003-03-18
JP3656845B2 true JP3656845B2 (en) 2005-06-08

Family

ID=19196366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002234497A Expired - Fee Related JP3656845B2 (en) 2002-08-12 2002-08-12 Golf game system and recording medium

Country Status (1)

Country Link
JP (1) JP3656845B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100856927B1 (en) 2003-12-31 2008-10-01 주식회사 엔트리브소프트 Method and apparatus for indicating the gradient of green in golf game for computer and computer-readable recording medium writing program for executing the method
US7847808B2 (en) * 2006-07-19 2010-12-07 World Golf Tour, Inc. Photographic mapping in a simulation
KR101019858B1 (en) 2010-06-28 2011-03-04 (주) 골프존 Image processing device, image processing method and virtual golf simulation device using same

Also Published As

Publication number Publication date
JP2003079950A (en) 2003-03-18

Similar Documents

Publication Publication Date Title
EP0807903B1 (en) Video game system using terrain profile information
EP0830881B1 (en) Simulative golf video game system
US8147305B2 (en) Attacking a virtual enemy by corresponding input to output sound
JP2000102672A (en) Game video device, change of visual point on game scene in video game, and readable recording medium memorizing visual point changing program on game scene in video game
JP2001273517A (en) Game system and computer-readable recording medium recording game program
JP4756632B2 (en) GAME PROGRAM AND GAME DEVICE
JP4521020B2 (en) GAME PROGRAM, GAME DEVICE, AND GAME CONTROL METHOD
JP4129651B2 (en) Image processing apparatus, game apparatus, image processing method, and recording medium
JP2006314705A (en) Game program and game device
JP3386803B2 (en) Image processing program, computer-readable storage medium storing image processing program, image processing method, and image processing apparatus
US7023434B2 (en) Image processing apparatus and image processing program
JP3561517B1 (en) Image display control program, image display control method, and video game apparatus
JP3410409B2 (en) Guide display method, game system and recording medium in game system using topographic information
JP3656845B2 (en) Golf game system and recording medium
JP4264308B2 (en) Image processing apparatus and image processing program
US20250242258A1 (en) One or more non-transitory computer-readable media, information processing system, information processing apparatus, and information processing method
KR100771758B1 (en) Computer readable medium recorded image display control program, image display control method, and video game device
JP3053590B2 (en) Method of expressing distance and height on display space, method of displaying guide in game system using terrain information, method of setting hitting position of moving object, game system, and recording medium
JP2004242706A (en) Game program and game device
US8348734B2 (en) Game system and storage medium for storing game program
JP2003093736A (en) Hitting position setting method for mobile object, game system, and storage medium
JP3539839B2 (en) Cursor display method, game system, and recording medium in pseudo-three-dimensionally displayed field
JP3045692B2 (en) Golf simulation video game apparatus, guide display method in golf simulation video game, and storage medium storing guide display program
JP2005103117A (en) GAME DEVICE AND GAME PROGRAM
JP3912658B2 (en) Image processing apparatus, image processing method, game apparatus using the same, and storage medium

Legal Events

Date Code Title Description
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: 20050301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050302

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090318

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090318

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090318

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090318

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100318

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110318

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110318

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120318

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130318

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140318

Year of fee payment: 9

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

LAPS Cancellation because of no payment of annual fees