(57)【要約】【課題】  仮想空間の自然な雰囲気を損なうことなく、傾斜面等を的確に表現する。【解決手段】  座標表示オブジェクト（２０００）は十字形であり、水平面等間隔の配置に対応して、ボール（１０９４）とカップの間に配列される。仮想空間は画面の右向きにＸ軸、上向きにＹ軸、奥行き方向にＺ軸が設定され、座標表示オブジェクト２０００はＸ、Ｚ座標において、碁盤目に配列されつつ、コースの地面の沿うようにＹ座標が設定される。  傾斜表示オブジェクト（３０００）は、Ｘ軸方向またはＺ軸方向に隣接する座標表示オブジェクト（２０００）の対の傾斜度、すなわちＹ座標の差に基づいて設定される速度で、座標表示オブジェクト（２０００）の対の間を、下り方向に移動する。【選択図】  図２
2005245525.tif 000002
【特許請求の範囲】
【請求項１】
三次元仮想空間内にオブジェクトと視点を配置し、該視点から見たある視方向における前記オブジェクトの画像を生成する、コンピュータで実行可能な画像処理プログラムであって、
前記画像処理プログラムは、
前記仮想空間内に配置されたオブジェクトの表面に沿って、前記視方向に対応する視野内に複数の制御点を設定する第１のステップと、
前記オブジェクト表面における隣接するふたつの制御点間の高低差の値、隣接するふたつの制御点を結ぶ直線の傾きの値、またはある制御点における隣接する制御点に向かう方向の勾配等をそれぞれ総称して傾斜値とするとき、前記制御点のそれぞれについて前記オブジェクト表面における傾斜値を算出する第２のステップと、
前記傾斜値が所定値より大きいか否かを判定する第３のステップと、
前記所定値より大きいと判定された制御点または隣接する制御点との間における前記オブジェクト表面に重ねて、前記オブジェクト表面が傾斜していることを示す傾斜表示オブジェクトを表示する第４のステップと、
少なくとも前記視点の位置または視方向が変更されるたびに、前記第１から第４のステップを実行させる第５のステップと、
を有することを特徴とする画像処理プログラム。
【請求項２】
三次元仮想空間内にオブジェクトと視点を配置し、該視点から見たある視方向における前記オブジェクトの画像を生成する、コンピュータで実行可能な画像処理プログラムであって、
前記画像処理プログラムは、
前記仮想空間内に配置されたオブジェクトの表面に沿って、前記視方向に対応する視野内に複数の制御点を設定する第１のステップと、
前記制御点のそれぞれに対し、当該制御点または当該制御点と隣接する制御点との間における前記オブジェクト表面に重ねて傾斜表示オブジェクトを予め配置する第２のステップと、
前記オブジェクト表面における隣接するふたつの制御点間の高低差の値、隣接するふたつの制御点の間を結ぶ直線の傾きの値、またはある制御点における隣接する制御点に向かう方向の勾配等をそれぞれ総称して傾斜値とするとき、前記制御点のそれぞれについて傾斜値を算出する第３のステップと、
前記傾斜値が所定値より大きいか否かを判定する第４のステップと、
前記所定値より大きいと判定された傾斜値を有する制御点に関連付けて配置された傾斜表示オブジェクトを表示状態に変更する第５のステップと、
少なくとも前記視点の位置または視方向が変更されるたびに、前記第１から第５のステップを実行させる第６のステップと、
を有することを特徴とする画像処理プログラム。
【請求項３】
前記三次元仮想空間における高さ方向において相対的に高い位置にあるオブジェクト表面に設定された制御点から相対的に低い位置にあるオブジェクト表面に設定された制御点に向かって前記傾斜表示オブジェクトを移動表示させるステップをさらに有することを特徴とする請求項１または２記載の画像処理プログラム。
【請求項４】
前記傾斜値に対応した速度を設定するステップをさらに有し、前記傾斜表示オブジェクトを前記設定された速度で移動表示させることを特徴とする請求項３記載の画像処理プログラム。
【請求項５】
前記傾斜表示オブジェクトは前記傾斜値に対応した長さに生成されることを特徴とする請求項１記載の画像処理プログラム。
【請求項６】
請求項１乃至５のいずれか記載の画像処理プログラムがコンピュータ上で実行可能に記録された記録媒体。
【請求項７】
ＣＰＵと、画像表示プログラムを格納する記憶手段と、前記記憶手段から読みだされた前記表示プログラムをＣＰＵの制御下で実行し、三次元仮想空間に配置されたオブジェクトをある視点からある視方向に見た画像データを生成する画像処理手段と、画像処理手段からの画像データに基づきディスプレイに画像を表示する手段とを有する情報処理装置であって、
前記画像処理手段は、前記画像表示プログラムの実行により、
三次元仮想空間にオブジェクトと視点を配置する第１の手段と、
前記視点の位置または視方向が変更されるたびに、前記仮想空間内に配置されたオブジェクトの表面に沿って、前記視方向に対応する視野内に複数の制御点を設定する第２の手段と、
前記オブジェクト表面における隣接するふたつの制御点間の高低差の値、隣接するふたつの制御点の間を結ぶ直線の傾きの値、またはある制御点における隣接する制御点に向かう方向の勾配等をそれぞれ総称して傾斜値とするとき、前記制御点のそれぞれについて傾斜値を算出する第３の手段と、
前記傾斜値が所定値より大きいか否かを判定する第４の手段と、
前記所定値より大きいと判定された制御点または隣接する制御点との間における前記オブジェクト表面に重ねて、前記オブジェクトの表面が傾斜していることを示す傾斜表示オブジェクトを配置する第５の手段と、
前記視点からみた前記視野内にある前記オブジェクトおよび前記オブジェクトに重ねて配置された前記傾斜値が前記所定値より大きいと判定された制御点に関連付けて配置された傾斜表示オブジェクトを表示する表示データを生成する第６の手段
として機能することを特徴とする情報処理装置。
【請求項８】
ＣＰＵと、画像表示プログラムを格納する記憶手段と、前記記憶手段から読みだされた前記表示プログラムをＣＰＵの制御下で実行し、三次元仮想空間に配置されたオブジェクトをある視点からある視方向に見た画像データを生成する画像処理手段と、画像処理手段からの画像データに基づきディスプレイに画像を表示する手段とを有する情報処理装置であって、
前記画像処理手段は、前記画像表示プログラムにより、
三次元仮想空間にオブジェクトと視点を配置する第１の手段と、
少なくとも前記視点の位置または視方向が変更されるたびに、前記仮想空間内に配置されたオブジェクトの表面に沿って、前記視方向に対応する視野内に複数の制御点を設定する第２の手段と、
前記制御点のそれぞれに対し、当該制御点または当該制御点と隣接する制御点との間における前記オブジェクト表面に重ねて、前記オブジェクトの表面が傾斜していることを示す傾斜表示オブジェクトを予め配置する第３の手段と、
前記オブジェクト表面における隣接するふたつの制御点間の高低差の値、隣接するふたつの制御点を結ぶ直線の傾きの値、またはある制御点における隣接する制御点に向かう方向の勾配等をそれぞれ総称して傾斜値とするとき、前記制御点のそれぞれについて傾斜値を算出する第４の手段と、
前記傾斜値が所定値より大きいか否かを判定する第５の手段と、
前記所定値より大きいと判定された傾斜値を有する制御点に対応付けられて配置された傾斜表示オブジェクトを表示状態に変更する第６の手段と、
前記視点からみた前記視野内にある前記オブジェクトおよび前記オブジェクトに重ねて配置された表示状態にある傾斜表示オブジェクトを表示する表示データを生成する第７の手段
として機能することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間中の傾斜面等の状況を表現し得る画像表示プログラムおよび情報処理装置に関する。
【背景技術】
【０００２】
例えばゴルフゲームにおいてコースなどの地形ののアンジュレーション（傾斜）を表現するためには地形を３次元的に表示するが、表示された３次元画像だけでは実際のゴルフのようにプレーヤに対して細かい傾斜等が把握しにくいため、ゴルフをプレーする際の自然な雰囲気が表現される必要がある。
【０００３】
そこで、特許文献１のゴルフゲームでは、プレーヤの視線に略沿った情景をにおいて、傾斜面表面にグリッド線を表示し、グリッド間を傾斜度に応じた速度で粒子を移動させて、傾斜度を表現している。
【０００４】
【特許文献１】特許第３３８６８０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、一般的な３次元表示のゴルフゲームでは遠近感により奥行方向に向かってグリッド線が密集して見える傾向にあり、また、特許文献１のゴルフゲームでは傾斜の有無によらず粒子が配置されているので、識別が容易でなく、更に、緩い傾斜面においては粒子の移動速度がきわめて遅いため、静止している粒子との識別も困難であり明確な傾斜度表現にはならなかった。
【０００６】
本発明はこのような従来の問題点を解消すべく創案されたもので、仮想空間の自然な雰囲気を損なうことなく、傾斜面等の傾斜表示を明確に表現することを目的とする。
【発明の効果】
【０００７】
本発明によれば、効果的に不要な表示を行わないように制御するので、仮想空間の自然な雰囲気を損なうことなく、傾斜面等の傾斜表示を明確に表現し得る。
【課題を解決するための手段】
【０００８】
本発明は、三次元仮想空間内にオブジェクトと視点を配置し、該視点から見たある視方向における前記オブジェクトの画像を生成する、コンピュータで実行可能な画像処理プログラムであって、前記仮想空間内に配置されたオブジェクトの表面に沿って、前記視方向に対応する視野内に複数の制御点を設定する第１のステップと、前記オブジェクト表面における隣接するふたつの制御点間の高低差の値、隣接するふたつの制御点を結ぶ直線の傾きの値、またはある制御点における隣接する制御点に向かう方向の勾配等をそれぞれ総称して傾斜値とするとき、前記制御点のそれぞれについて前記オブジェクト表面における傾斜値を算出する第２のステップと、前記傾斜値が所定値より大きいか否かを判定する第３のステップと、前記所定値より大きいと判定された制御点または隣接する制御点との間における前記オブジェクト表面に重ねて、前記オブジェクト表面が傾斜していることを示す傾斜表示オブジェクトを表示する第４のステップと、少なくとも前記視点の位置または視方向が変更されるたびに、前記第１から第４のステップを実行させる第５のステップとを有する。これによって、仮想空間の自然な雰囲気を損なうことなく、傾斜面等の傾斜表示を明確に表現し得る。
【０００９】
本発明は、三次元仮想空間内にオブジェクトと視点を配置し、該視点から見たある視方向における前記オブジェクトの画像を生成する、コンピュータで実行可能な画像処理プログラムであって、前記仮想空間内に配置されたオブジェクトの表面に沿って、前記視方向に対応する視野内に複数の制御点を設定する第１のステップと、前記制御点のそれぞれに対し、当該制御点または当該制御点と隣接する制御点との間における前記オブジェクト表面に重ねて傾斜表示オブジェクトを予め配置する第２のステップと、前記オブジェクト表面における隣接するふたつの制御点間の高低差の値、隣接するふたつの制御点の間を結ぶ直線の傾きの値、またはある制御点における隣接する制御点に向かう方向の勾配等をそれぞれ総称して傾斜値とするとき、前記制御点のそれぞれについて傾斜値を算出する第３のステップと、前記傾斜値が所定値より大きいか否かを判定する第４のステップと、前記所定値より大きいと判定された傾斜値を有する制御点に関連付けて配置された傾斜表示オブジェクトを表示状態に変更する第５のステップと、少なくとも前記視点の位置または視方向が変更されるたびに、前記第１から第５のステップを実行させる第６のステップとを有する。これによって、仮想空間の自然な雰囲気を損なうことなく、不要な表示を省略しつつ、傾斜面等の傾斜表示を明確に表現し得る。
【００１０】
本発明に係る画像処理プログラムにおいて、前記三次元仮想空間における高さ方向において相対的に高い位置にあるオブジェクト表面に設定された制御点から相対的に低い位置にあるオブジェクト表面に設定された制御点に向かって前記傾斜表示オブジェクトを移動表示させるステップをさらに設けてもよい。これによって傾斜方向が明らかになる。
【００１１】
本発明に係る画像処理プログラムにおいて、前記傾斜値に対応した速度を設定するステップをさらに有し、前記傾斜表示オブジェクトを前記設定された速度で移動表示させてもよい。これによって傾斜値がより明瞭に表示される。
【００１２】
本発明は、ＣＰＵと、画像表示プログラムを格納する記憶手段と、前記記憶手段から読みだされた前記表示プログラムをＣＰＵの制御下で実行し、三次元仮想空間に配置されたオブジェクトをある視点からある視方向に見た画像データを生成する画像処理手段と、画像処理手段からの画像データに基づきディスプレイに画像を表示する手段とを有する情報処理装置であって、前記画像処理手段は、前記画像表示プログラムの実行により、三次元仮想空間にオブジェクトと視点を配置する第１の手段と、前記視点の位置または視方向が変更されるたびに、前記仮想空間内に配置されたオブジェクトの表面に沿って、前記視方向に対応する視野内に複数の制御点を設定する第２の手段と、前記オブジェクト表面における隣接するふたつの制御点間の高低差の値、隣接するふたつの制御点の間を結ぶ直線の傾きの値、またはある制御点における隣接する制御点に向かう方向の勾配等をそれぞれ総称して傾斜値とするとき、前記制御点のそれぞれについて傾斜値を算出する第３の手段と、前記傾斜値が所定値より大きいか否かを判定する第４の手段と、前記所定値より大きいと判定された制御点または隣接する制御点との間における前記オブジェクト表面に重ねて、前記オブジェクトの表面が傾斜していることを示す傾斜表示オブジェクトを配置する第５の手段と、前記視点からみた前記視野内にある前記オブジェクトおよび前記オブジェクトに重ねて配置された前記傾斜値が前記所定値より大きいと判定された制御点に関連付けて配置された傾斜表示オブジェクトを表示する表示データを生成する第６の手段として機能する。これによって、仮想空間の自然な雰囲気を損なうことなく、傾斜面等の傾斜表示を明確に表現し得る。
【００１３】
本発明は、ＣＰＵと、画像表示プログラムを格納する記憶手段と、前記記憶手段から読みだされた前記表示プログラムをＣＰＵの制御下で実行し、三次元仮想空間に配置されたオブジェクトをある視点からある視方向に見た画像データを生成する画像処理手段と、画像処理手段からの画像データに基づきディスプレイに画像を表示する手段とを有する情報処理装置であって、前記画像処理手段は、前記画像表示プログラムにより、三次元仮想空間にオブジェクトと視点を配置する第１の手段と、少なくとも前記視点の位置または視方向が変更されるたびに、前記仮想空間内に配置されたオブジェクトの表面に沿って、前記視方向に対応する視野内に複数の制御点を設定する第２の手段と、前記制御点のそれぞれに対し、当該制御点または当該制御点と隣接する制御点との間における前記オブジェクト表面に重ねて、前記オブジェクトの表面が傾斜していることを示す傾斜表示オブジェクトを予め配置する第３の手段と、前記オブジェクト表面における隣接するふたつの制御点間の高低差の値、隣接するふたつの制御点を結ぶ直線の傾きの値、またはある制御点における隣接する制御点に向かう方向の勾配等をそれぞれ総称して傾斜値とするとき、前記制御点のそれぞれについて傾斜値を算出する第４の手段と、前記傾斜値が所定値より大きいか否かを判定する第５の手段と、前記所定値より大きいと判定された傾斜値を有する制御点に対応付けられて配置された傾斜表示オブジェクトを表示状態に変更する第６の手段と、前記視点からみた前記視野内にある前記オブジェクトおよび前記オブジェクトに重ねて配置された表示状態にある傾斜表示オブジェクトを表示する表示データを生成する第７の手段として機能する。これによって、仮想空間の自然な雰囲気を損なうことなく、傾斜面等の傾斜表示を明確に表現し得る。
【発明を実施するための最良の形態】
【００１４】
次に本発明に係る画像表示プログラムおよび情報処理装置の最良の形態を図面に基づいて説明する。
【実施例１】
【００１５】
［情報処理装置］
図１において、情報処理装置１００は、全体を制御するＣＰＵ３０１と、情報処理装置１００を起動させるためのプログラムを格納するブートロム３０４と、ＣＰＵ３０１によって実行されるプログラムやデータを格納するシステムメモリ３０２とを有し、ゴルフゲーム等のプログラムを実行するパーソナルコンピュータやゲーム装置、携帯電話等の通信装置に適用されている。
【００１６】
ＣＰＵ３０１によって実行されるプログラムやデータには、ゲームを制御するプログラムやデータのほか、表示すべき画像を生成、制御するためのプログラムやデータも含まれる。
【００１７】
表示する画像を生成するためには、システムメモリ内に、表示するオブジェクトを構成する３次元ローカル座標データを有するポリゴンデータを格納しておき、ＣＰＵやジオメトリプロセッサ（図示しない）によって、これを３次元仮想空間のワールド座標系に配置してローカル座標をワールド座標系に変換する。
【００１８】
更に、ワールド座標系に、遊戯者の操作やゲームの進行に伴って生成される視点座標を設定して、この視点から所定の画角でみたオブジェクトを、視点座標を原点とした視点座標系に変換して、この変換されたオブジェクトの視点座標をレンダリングプロセッサ１０７に送信する。
【００１９】
レンダリングプロセッサ１０７は、送られてきたオブジェクトの視点座標に対して、光源処理などの補間処理や、グラフィックメモリ１０８に格納されたテクスチャデータをオブジェクトに貼り付けてオブジェクトの表面にディテールを施し、３次元の立体オブジェクトから、表示手段１１２に表示するために２次元平面にオブジェクト（ポリゴン）を投影して２次元座標データに変換して、Ｚ座標の深さが浅いポリゴン即ち視点座標に近いポリゴンから優先的に表示するようにして２次元画像を生成し、これをＣＲＴや液晶表示装置等の表示手段１１２に出力する。
【００２０】
情報処理装置１００には、操作入力スイッチ１０５、ゴルフクラブ型コントローラ１１５、タッチパネル１１６等の入力手段が設けられ、ゴルフクラブ１０９２（図２〜図４）の操作はゴルフクラブ型コントローラ１１５によって行う。
【００２１】
タッチパネル１１６は表示手段１１２の表示面に沿って設けられている。タッチパネル１１６は、手指等の指示体をタッチパネル１１６に接触させ、指示体の接触する圧力を変えたり、接触位置を適宜移動させることによって指示体の接触情報が変化し多様な入力が可能になっている。
【００２２】
情報処理装置１００には、音声を生成するサウンドプロセッサ１０９と、生成される音声のデータを記憶するサウンドメモリ１１０とが設けられ、サウンドプロセッサ１０９はサウンドメモリ１１０に記憶されたデータに基づいて音声のデジタル信号を生成し、スピーカ１１３やヘッドフォン（図示省略）によって音声を出力する。
【００２３】
情報処理装置１００には、プログラムデータ記憶装置や記憶媒体１０３が設けられ、これら記憶媒体１０３に格納されたゲームプログラムやデータがシステムメモリ１０２、グラフィックメモリ１０８、サウンドメモリ１１０に読み込まれる。
【００２４】
記憶媒体１０３に格納されたデータには、ゲームに関する情報が含まれる。
【００２５】
これら記憶媒体には、ＣＤ-ＲＯＭやＤＶＤ-ＲＯＭのような光学式に読み取り可能な媒体や、マスクＲＯＭやフラッシュメモリのような電気的に読み取り可能な媒体も含まれる。
【００２６】
情報処理装置１００には、通信インターフェース１１１およびモデム１１４が設けられ、ＬＡＮやモデム１１４を介してネットワークＩＮに接続されている。
【００２７】
情報処理装置１００の以上の構成要素はバスに接続され、バスアービタ１０６によってプログラムやデータの各構成要素間の入出力が制御されている。
【００２８】
図２〜図４において、ゴルフゲームに関連して表示手段１１２に表示される画像には、例えば、ゴルフコースの情景ＢＧの中に、プレーヤ１０００、クラブ１０９２、ボール１０９４、がそれぞれ仮想３次元空間内に配置された後に表示される。
【００２９】
さらに、同画像には、モード切替ボタン１０４０、打点設定アイコン１０６０、各ホールの仕様１０７０、プレーヤ名１０７２、トータルスコア１０７４、トータルポイント１０７６、クラブ表示１０７８、プレイ時間表示１０８０、ショット表示１０８２、プレーヤエネルギ表示１０８４、説明表示１０８６がそれぞれ重ならないようにＢＧやプレーヤ１０００などより手前、すなわち画面の最も手前に表示される。
【００３０】
打点設定アイコン１０６０は、クラブ１０９２によって打つべきボール１０９４の位置、すなわちボール１０９４の下側、右側、左側、上側の、どの程度中心からずれた位置を打つかを設定する。
【００３１】
カップ位置指示オブジェクト１０５０は、３次元仮想空間内に設定されないが、２次元平面上の表示位置は、ボール１０９４の真正面にカップ１０９０が表示される視点の場合、このボール１０９４とカップ１０９０を表示面の２次元平面上で結ぶ直線上に表示され、カップ１０９０が見えない状況においても、カップ１０９０の方向が示される。
【００３２】
ゴルフゲームにおいては、カップ１０９０（またはカップ位置指示オブジェクト１０５０）はターゲットとなるオブジェクトであり、ボール１０９４はカップ１０９０を目標として、ユーザが操作し移動させる移動オブジェクトである。そのためこれら移動オブジェクト１０９４およびターゲットオブジェクト１０９０（または１０５０）の位置関係は特に明瞭に認識されるべきであり、後述する座標表示オブジェクト２０００は、移動オブジェクト１０９４とターゲットオブジェクト１０９０とを結ぶ直線上に常に１つ以上配列、表示される。従って、座標表示オブジェクト２０００の配列をたどれば、移動オブジェクト１０９４を移動させる（打つ）方向を容易に認識でき、操作性が高まる。
【００３３】
ボール（移動オブジェクト１０９４）の真正面にカップ（ターゲットオブジェクト１０９０）が位置しない場合は、視点とカップを結ぶ直線上に表示される。また、ボール１０９４の真正面にカップ１０９０がある無いに関わらず視点とカップを結ぶ直線上に表示されるように制御しても良い。
【００３４】
更に、カップ位置指示オブジェクト１０５０は、カップ１０９０の２次元平面上の表示位置に対して、Ｘ座標を共通に、Ｙ座標を例えば上方向に所定位置移動させた位置に表示し、視方向を変化させたときに、この表示条件を変えずにカップ位置指示オブジェクト１０５０を表示するようにしてもよい。
【００３５】
各ホールの仕様１０７０には何番ホールかの表示および距離が表示され、ショット表示１０８２には例えば「ＮＯＲＭＡＬ」等が表示され、プレーヤエネルギー表示１０８４にはプレーヤ１０００の保有するエネルギーが星マーク個数で表示される。このエネルギー表示は、遊戯者のプレイの失敗やボールの打数によって減っていき、エネルギーがゼロになるとゲームオーバーになる。説明表示１０８６には、画面上での操作方法が示される。
【００３６】
［傾斜度表示概要］
図２〜図４はパットを打つ状況を表示しており、アンジュレーションが重要である。このため、画面には、地面の傾斜度を表示するために、座標表示オブジェクト２０００および傾斜表示オブジェクト３０００が表示される。
【００３７】
座標表示オブジェクト２０００は水平面上における所定座標に対応して地面に表示され、各座標表示オブジェクトに表示位置は、後述する「制御点」として予め算出される。
【００３８】
図２〜図４の画面切替は、モード切替ボタン１０４０の操作その他によって実行し得る。
【００３９】
座標表示オブジェクト２０００は十字形であり、水平面等間隔の配置に対応して、ボール１０９４とカップ１０９０の間に配列される。仮想３次元空間は画面の左右方向にＸ軸、上下方向にＹ軸、奥行き方向にＺ軸が設定され、座標表示オブジェクト２０００はＸ、Ｚ座標平面において、地面等のオブジェクトの表面の高さ方向のＹ座標位置に碁盤目状に配列される。
【００４０】
傾斜表示オブジェクト３０００は、Ｘ軸方向またはＺ軸方向に隣接する座標表示オブジェクト２０００の対の傾斜度、すなわちＹ座標の差に基づいて設定される速度で、座標表示オブジェクト２０００の対の間を、下り方向に移動する。
【００４１】
隣接する座標表示オブジェクト２０００は離間して配列され、傾斜表示オブジェクト３０００は、その移動過程において、座標表示オブジェクト２０００と重ならない状態が存在する。このため傾斜表示オブジェクト３０００の表示は明瞭である。
【００４２】
図５において、座標表示オブジェクト２０００の位置に頂点を有する矩形ＡＢＣＤ（制御点Ａ，Ｂ，Ｃ，Ｄ）を想定し、水平な辺ＣＤに対して、頂点Ｂが高く設置され、頂点Ａが頂点Ｂよりも高く設定されたものとする。また頂点Ａ、Ｂ、Ｃ、Ｄの座標をＡ（Ｘａ,Ｙａ,Ｚａ）、Ｂ（Ｘｂ,Ｙｂ,Ｚｂ）、Ｃ（Ｘｃ,Ｙｃ,Ｚｃ）、Ｄ（Ｘｄ,Ｙｄ,Ｚｄ）とする。
【００４３】
矩形ＡＢＣＤの水平面への投影は正方形であり、Ｘａ＝Ｘｃ、Ｘｂ＝Ｘｄ、Ｚａ＝Ｚｂ、Ｚｃ＝Ｚｄ、Ｘａ−Ｘｂ＝Ｘｃ−Ｘｄ、Ｚａ−Ｚｃ＝Ｚｂ−Ｚｄである。
【００４４】
頂点Ａ、Ｂ、頂点Ｃ、Ｄの位置に設定される座標表示オブジェクト２０００はＸ方向に隣接し、頂点Ａ、Ｃ、頂点Ｂ、Ｄの位置に設定される座標表示オブジェクト２０００は、Ｚ方向に隣接する。
【００４５】
ここでＹ座標Ｙａ、Ｙｂ、Ｙｃ、Ｙｄを比較すると、Ｙａ＞Ｙｂ＞Ｙｃ＝Ｙｄであり、プログラムとしては、頂点Ａから頂点Ｂに向かって下り勾配、頂点Ｂから頂点Ｄに向かって下り勾配、頂点Ａから頂点Ｃに向かって下り勾配と判定される。
【００４６】
図６−１に示すように、仮想空間において、頂点Ａ、Ｂ、Ｃ、Ｄの座標位置が非表示の制御点１５００Ａ、１５００Ｂ、１５００Ｃ、１５００Ｄとして配置され、図６−２に示すように、制御点１５００Ａ、１５００Ｂ、１５００Ｃ、１５００Ｄ上に、座標表示オブジェクト２０００Ａ、２０００Ｂ、２０００Ｃ、２０００Ｄが表示される。
【００４７】
そして、各制御点１５００Ａ、１５００Ｂ、１５００Ｃ、１５００Ｄの高低差に基いて、座標表示オブジェクト２０００Ａから２０００Ｂに向かって傾斜表示オブジェクト３０００ＡＢが表示され、座標表示オブジェクト２０００Ｂから２０００Ｄに向かって傾斜表示オブジェクト３０００ＢＤが表示され、座標表示オブジェクト２０００Ａから２０００Ｃに向かって傾斜表示オブジェクト３０００ＡＣが表示される。
【００４８】
なお傾斜度のみを表示するためには座標表示オブジェクト２０００は必須ではなく、この際に座標表示オブジェクト２０００の表示を省略してもよい。
【００４９】
このような表示処理の省略により処理負荷を軽減し、処理速度を向上し得る。
【００５０】
傾斜表示オブジェクト３０００ＡＢ、３０００ＢＤ、３０００ＡＣは、それぞれ高低差（Ｙａ−Ｙｂ）、（Ｙｂ−Ｙｄ）、（Ｙａ−Ｙｃ）に比例した速度で、ＡＢ方向、ＢＤ方向、ＡＣ方向に移動する。
【００５１】
図７において、傾斜表示オブジェクト３０００ＡＢの表示は、（７Ａ）〜（７Ｆ）のように変化する。図７では座標表示オブジェクト２０００Ａから２０００Ｂに向かって移動する傾斜表示オブジェクト３０００ＡＢについて、代表的に説明する。
（７Ａ）  傾斜表示オブジェクト３０００ＡＢが座標表示オブジェクト２０００Ａに重なった状態で出現する。ただし、傾斜表示オブジェクト３０００ＡＢは略透明である。
（７Ｂ）  傾斜表示オブジェクト３０００ＡＢが座標表示オブジェクト２０００Ｂに向かって移動を開始する。このとき傾斜表示オブジェクト３０００ＡＢは徐々に明瞭に表示されてくる。（７Ｂ）では白抜き矢印によって、やや明瞭になった状態を示している。
（７Ｃ）  傾斜表示オブジェクト３０００ＡＢはさらに座標表示オブジェクト２０００Ｂに向かって移動し、より明瞭に表示される。（７Ｃ）では、例えば黒塗りなどの略不透明な矢印によって、明瞭になった状態を示している。
（７Ｄ）  傾斜表示オブジェクト３０００ＡＢが座標表示オブジェクト２０００Ｂに接近する段階では、傾斜表示オブジェクト３０００ＡＢは明瞭に表示される。（７Ｄ）では（７Ｃ）と同様、黒塗り矢印によって、明瞭な傾斜表示オブジェクト３０００ＡＢを示している。
（７Ｅ）  傾斜表示オブジェクト３０００ＡＢが座標表示オブジェクト２０００Ｂに重なり始めた段階では、傾斜表示オブジェクト３０００ＡＢは徐々に透明になる。（７Ｅ）では（７Ｂ）と同様、白抜き矢印によって、透明になり始めた状態を示している。
（７Ｆ）  傾斜表示オブジェクト３０００ＡＢが座標表示オブジェクト２０００Ｂに重なった瞬間、傾斜表示オブジェクト３０００ＡＢは（７Ｅ）と同様のやや透明の状態である。その後、傾斜表示オブジェクト３０００ＡＢは消失し、（７Ａ）の状態に戻る。
【００５２】
以上の傾斜表示オブジェクト３０００ＡＢ表示により、傾斜度が明瞭に表示されるとともに、座標表示オブジェクト２０００Ａ、２０００Ｂの表示を阻害することがない。このためアンジュレーションの表現が常時安定かつ鮮明である。
【００５３】
［画像表示プログラム：移動速度に基く傾斜表示オブジェクト表示］
図８において、図１の情報処理装置によって実行される画像表示プログラムの実施例１をゴルフゲームに適用したゲームプログラムは以下の各ステップによって実行される。
【００５４】
ステップＳ８０１：まず、ボール１０９４の座標（ＸＢ,ＹＢ，ＺＢ）およびカップ１０９０の座標（ＸＣ,ＹＣ,ＺＣ）を取得し、ステップＳ８０２に進む。
【００５５】
ステップＳ８０２：ボール１０９４とカップ１０９０の間に傾斜表示オブジェクト３０００を表示するために、複数の制御点１５００Ａ〜１５００Ｄ等のＸ−Ｚ座標を算出する。
【００５６】
制御点１５００Ａ〜１５００Ｄ等のＸ−Ｚ座標としては、例えば、ボールのＸ−Ｚ座標（ＸＢ,ＺＢ）からＸ座標正負方向に所定個数、所定間隔で、Ｚ方向に制御点の列を設定し、各列においては、座標ＺＢ、ＺＣ間に所定個数の制御点を配列する。
【００５７】
制御点は、上記のようにボールとカップの間の座標を特定してその間に配置するほか、ボールやカップなどの目標物を必要としないソフトウェアの場合は、視点とその視点から見る視方向と地面などのオブジェクトの交点を求め、そこから所定の範囲に配置するようにしてもよく、３次元仮想空間に配置された地面などのオブジェクトの表面に沿って、視方向に対応する視野内に配置されるようにさえ出来ればよい。
【００５８】
ステップＳ８０３：ステップＳ８０２に続いて、各制御点の座標位置で、地面の高さに対応したＹ座標を算出する。
【００５９】
ステップＳ８０４：ステップＳ８０２、Ｓ８０３で算出された制御点上に座標表示オブジェクト２０００を表示する。
【００６０】
このように、制御点のＸ−Ｚ面への投影は、対辺がボール１０９４、カップ１０９０をとおる長方形内に碁盤目状に配列され、それぞれの座標位置で、地面の高さに対応したＹ座標を設定すれば、画面上で目視したときに、傾斜度が鮮明に表示される。
【００６１】
また座標表示オブジェクト２０００は制御点上に碁盤目状に配列され、それぞれの座標位置で、地面の高さに対応したＹ座標を反映しているので、画面上で目視したときに、アンジュレーションが鮮明に表示される。
【００６２】
ステップＳ８０５：ステップＳ８０４に続いて、Ｘ方向、Ｚ方向に隣接する制御点のＹ座標の差（高低差）を算出する。これによって、隣接制御点間の傾斜度が算出される。
【００６３】
また、互いの制御点のＹ座標同士を差を算出して比較することによって、どちらの制御点がＹ座標方向に対して高い位置にあるか求めることが出来る。
【００６４】
ステップＳ８０６：ステップＳ８０５で算出された傾斜度に基いて、制御点間を移動する傾斜表示オブジェクト３０００の移動速度を算出する。移動速度は、例えばＸ方向、Ｚ方向について、所定の定数を傾斜度に乗じて算出される。Ｘ方向、Ｙ方向の定数は、視点位置等に応じて、適宜設定される。
【００６５】
また、移動速度は、傾斜度の最低を「０度」最大を「９０度」として、速度の最低を「０」、最大が「１」となるような値として算出しても良い。
【００６６】
ステップＳ８０７：１個の傾斜表示オブジェクト３０００を処理対象とし、処理対象の傾斜表示オブジェクト３０００についてステップＳ８０６で算出した移動速度が所定値より大きいか否かを判定する。移動速度が所定値より大きいときはステップＳ８０８に進み、移動速度が所定値以下のときはステップＳ８０９にジャンプする。
【００６７】
所定の値は、移動速度が「０」即ち傾斜が無い場合か、「０に近い値」が望ましい。
【００６８】
これによって、移動速度が比較的速い傾斜表示オブジェクト３０００のみが表示され、傾斜度が極めて緩い部分や傾斜度の無い部分の傾斜度表示が省略されるので、画面構成がすっきりし、アンジュレーションをより明瞭に示すことができる。
【００６９】
ステップＳ８０８：処理対象の傾斜表示オブジェクト３０００を初期位置に設定し、移動表示を開始する。初期位置は、例えば座標表示オブジェクト２０００または制御点の間の中央位置か、Ｙ座標方向に対して高い位置にある座標表示オブジェクト２０００または制御点と重なる位置に設定する。
【００７０】
ステップＳ８０９：全ての傾斜表示オブジェクト３０００について移動速度を算出したか否かを判断する。未処理の傾斜表示オブジェクト３０００が残っているときはステップＳ８０６に戻り、全ての傾斜表示オブジェクト３０００の処理が終了したときはそのまま処理を終了する。
【００７１】
［画像表示プログラム：高低差に基く傾斜表示オブジェクト表示］
次に、図１の情報処理装置によって実行される画像表示プログラムを一部変更した例を図面に基づいて説明する。
【００７２】
図９は画像表示プログラムの例を示すフローチャートである。
【００７３】
図８の画像表示プログラムでは、傾斜表示オブジェクト３０００の表示、非表示を移動速度に基いて判定したが、図９では隣接制御点間の高低差（Ｙ座標差）に基いて判定する。
【００７４】
図中ステップＳ９０１〜Ｓ９０５、Ｓ９０８、Ｓ９０９はステップＳ８０１〜Ｓ８０５、Ｓ８０８、Ｓ８０９と同様であるので説明を省略する。
【００７５】
図９において、画像表示プログラムは以下の各ステップによって実行される。
【００７６】
ステップＳ９０６：ステップＳ９０５で算出された高低差が所定値より大きいか否かを判定する。高低差が所定値より大きいとはステップＳ９０７に進み、高低差が所定値以下のときはステップＳ９０９にジャンプする。
【００７７】
ステップＳ９０７：ステップＳ９０５で算出された高低差に基いて、傾斜表示オブジェクト３０００の移動速度を算出し、ステップＳ９０８に進む。
【００７８】
図９の画像表示プログラムでは、高低差が小さいときに移動速度の計算を省略し得るので、図８の画像表示プログラムに比較して演算量を減少し得る。
【実施例２】
【００７９】
図１０および１１に、座標表示オブジェクトおよび傾斜表示オブジェクトの、地面などの情景ＢＧ（オブジェクト）に対する表示位置の設定制御の他の方法を説明する。
【００８０】
図１１のように、カップ１０９０が視点ＥＹに対して地平線ＨＺより離れた位置に存在する場合、カップ１０９０は死角領域内（斜線で示す。）に含まれるので、視点ＥＹからは見えなくなる。
【００８１】
このような状態では、プレーヤキャラクタ１０００の位置からボール１０９４をカップ１０９０に移動させようとすると、座標表示オブジェクト２０００や傾斜表示オブジェクト３０００が地面ＢＧに沿って表示される場合は、地平線ＨＺからカップ１０９０までの地面ＢＧの傾斜（勾配）が確認できなくなるので、正確にボール１０９４をカップ１０９０に導くことが困難になる。
【００８２】
この場合の座標表示オブジェクト２０００および傾斜表示オブジェクト３０００の表示位置の設定を、以下の通り行う。
【００８３】
オブジェクト（地面）ＢＧに対して制御点１５００を配置し、必要に応じて傾斜表示オブジェクト３０００を生成する実施例１と同様のステップを実行する。
【００８４】
次に、視点ＥＹから見た視野角ＥＡ内のオブジェクト表面に配置された制御点について、視点座標位置と制御点の配置座標位置の間にオブジェクトが存在するか否か判定する。
【００８５】
判定方法は、例えば視点ＥＹと制御点１５００を結ぶ直線上の座標がオブジェクト表面の座標に含まれるか否かを判定する。
【００８６】
この判定によって、制御点１５００がオブジェクトＢＧの陰に隠れていると判定されると、隠れている制御点１５００に対して、視点ＥＹと制御点１５００がオブジェクトＢＧによって遮られない位置まで制御点１５００のＹ座標を変更した位置に座標表示オブジェクト２０００を表示する。
【００８７】
更に、これに隣接する、同様にＹ座標を変更した位置または制御点との間（またはその位置の上）に傾斜表示オブジェクト３０００を表示する。
【００８８】
このようにすることで、図１１のように死角領域に存在する制御点１５００に対応する座標表示オブジェクト２０００や傾斜表示オブジェクト３０００をプレーヤ１０００に認識させることが可能になる。
【００８９】
以上の実施例では、仮想空間上に傾斜表示オブジェクトを配置するが、この時点では透明表示やマスク処理等の設定を行い画像として表示させず、傾斜度または高低差が所定値より大きいか否かを判定し、大きいと判定された場合にこれら設定を解除して画像として表示させるようにしても良い。
【００９０】
また、傾斜度等の傾斜の値の算出方法は上記の実施例に限らず、例えば、地面等のオブジェクト面がポリゴンで構成されている場合は、制御点におけるポリゴンの法線ベクトルを算出して、これを傾斜の値として使用するステップや、地面等のオブジェクト面がＮＵＲＢＳ曲面や曲線などのｎ次の関数で表せられる場合は、制御点におけるｎ次の関数の微分値を計算するステップを実行することで傾斜の値を算出することが可能である。
【００９１】
また、座標表示オブジェクト２０００を十字形、傾斜表示オブジェクト３０００を矢印で表現したが、他の任意の記号、図形を採用し得る。
また、制御点を配置したときに予め傾斜表示オブジェクトを全ての制御点に対応させて３次元仮想空間内に配置しておき、傾斜の値の算出後、これが所定の値より大きいか否か判定して、大きい場合の対応する傾斜表示オブジェクトを画像表示の対象にする或いは予め透明の設定をしておき不透明表示にするように表示を制御しても良い。
【００９２】
更に、図１２にあるように、座標表示オブジェクトを傾斜度または高低差に応じた移動速度で移動表示させる以外に、傾斜度または高低差に応じて座標表示オブジェクトの長さなどの形状を変化させるようにして表示しても良い。
【００９３】
こうすることで、移動速度に基づいて座標表示オブジェクト表示位置を随時算出する処理が不要となり、コンピュータの処理の負荷を軽減できる効果がある。
【００９４】
図１２では、座標表示オブジェクト２０００Ａ、２０００Ｂ間で表示される傾斜表示オブジェクト３０００を構成するポリゴンのローカル座標における頂点（Ｈ，Ｉ，Ｊ，Ｋ，Ｍ，Ｎ，Ｏ）のうち、Ｈ，Ｉに対してＪ，Ｋ，Ｍ，Ｎ，Ｏの例えばＸ座標の値を変更することによって、座標表示オブジェクトの長さＬがＬ１やＬ２のように変化する。
【００９５】
これによって、傾斜度または高低差に応じて座標表示オブジェクトの長さが変化する。
【００９６】
情報処理装置は図１の構成に限定されるものではなく、汎用コンピュータや携帯型コンピュータ、携帯電話などの情報処理端末をゲーム装置のようなゲーム処理端末として適用することも可能である。
【００９７】
汎用コンピュータをゲーム装置とし、本発明に係るゲームシステムを構成する際には、ユーザがゲームを実行するためのプログラムの各ステップを汎用コンピュータに実行させるためプログラムコードを含むコンピュータ実行可能なプログラムを、汎用コンピュータに読み込ませる。
【００９８】
汎用コンピュータがゲームを実行するためのプログラムは、汎用コンピュータに内蔵されたＲＯＭや、汎用コンピュータが読み取り得る記憶媒体から読み込まれ、あるいはネットワークを通じてサーバ等から読み込まれる。
【００９９】
さらに、本発明はゴルフゲームのみならず、傾斜を有する面上で移動オブジェクトをターゲットオブジェクトに向かって移動させる任意のゲームに適用できる。例えば、地形などの表示物体の表面の傾斜度が地形効果としてゲームの進行が変化する戦略シミュレーションゲーム、プレーヤキャラクタと対戦相手キャラクタとの当たり判定やキャラクタの移動速度に変化を与える格闘ゲームやアクションゲーム、乗り物を操作するドライブゲームやレーシングゲーム等にも適用される。さらにゲームのみならず傾斜表示を要するＣＡＤ等の任意の画像表示に適用できる。
【図面の簡単な説明】
【０１００】
【図１】本発明に係る情報処理装置の実施例を示すブロック図である。（実施例１）
【図２】図１の情報処理装置において表示される画面を示す図である。（実施例１）
【図３】図１の情報処理装置において表示される他の画面を示す図である。（実施例１）
【図４】図１の情報処理装置において表示されるさらに他の画面を示す図である。（実施例１）
【図５】図１の情報処理装置で表示すべき傾斜面を示す図である。（実施例１）
【図６−１】図５の傾斜面に対応する制御点配置を示す図である。（実施例１）
【図６−２】図６−１の傾斜面に対応する座標表示オブジェクトを示す図である。（実施例１）
【図７】図５の傾斜面で表示されるベクトル指標の動きを図である。（実施例１）
【図８】図１の情報処理装置で実施される画像表示プログラムの実施例１を示すフローチャートである。（実施例１）
【図９】図１の情報処理装置で実施される画像表示プログラムの実施例２を示すフローチャートである。（実施例１）
【図１０】図１の情報処理装置において表示されるさらに他の画面を示す図である。（実施例２）
【図１１】図１の情報処理装置において表示されるさらに他の画面を示す図である。（実施例２）
【図１２】図１の情報処理装置において表示されるさらに他の画面を示す図である。（実施例２）
【符号の説明】
【０１０１】
１００  ゲーム装置
１０１  ＣＰＵ
１０２  システムメモリ
１０３  記憶装置
１０４  ＢＯＯＴ  ＲＯＭ
１０５  操作入力スイッチ
１０６  バスアービタ
１０７  レンダリングプロセッサ
１０８  グラフィックメモリ
１０９  サウンドプロセッサ
１１０  サウンドメモリ
１１１  通信Ｉ／Ｆ
１１２  ＣＲＴ
１１３  スピーカ
１１４  モデム
１１５  バット型コントローラ
１１６  タッチパネル
【図１】
2005245525.tif 000003
【図２】
2005245525.tif 000004
【図３】
2005245525.tif 000005
【図４】
2005245525.tif 000006
【図５】
2005245525.tif 000007
【図６−１】
2005245525.tif 000008
【図６−２】
2005245525.tif 000009
【図７】
2005245525.tif 000010
【図８】
2005245525.tif 000011
【図９】
2005245525.tif 000012
【図１０】
2005245525.tif 000013
【図１１】
2005245525.tif 000014
【図１２】
2005245525.tif 000015