JP3792541B2 - 3次元モデル表示プログラムおよび3次元モデル表示装置 - Google Patents

3次元モデル表示プログラムおよび3次元モデル表示装置 Download PDF

Info

Publication number
JP3792541B2
JP3792541B2 JP2001171867A JP2001171867A JP3792541B2 JP 3792541 B2 JP3792541 B2 JP 3792541B2 JP 2001171867 A JP2001171867 A JP 2001171867A JP 2001171867 A JP2001171867 A JP 2001171867A JP 3792541 B2 JP3792541 B2 JP 3792541B2
Authority
JP
Japan
Prior art keywords
line
vector
projection
perspective projection
image
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
JP2001171867A
Other languages
English (en)
Other versions
JP2002366975A (ja
Inventor
聖一 鎌田
富士夫 佐藤
由岐夫 平山
啓輔 今泉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2001171867A priority Critical patent/JP3792541B2/ja
Priority to US09/983,941 priority patent/US6700578B2/en
Publication of JP2002366975A publication Critical patent/JP2002366975A/ja
Application granted granted Critical
Publication of JP3792541B2 publication Critical patent/JP3792541B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Instructional Devices (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は仮想3次元空間内の3次元モデルを表示させる3次元モデル表示プログラムおよび3次元モデル表示装置に関し、特に視線ベクトルを上下に移動させることができる3次元モデル表示プログラムおよび3次元モデル表示装置に関する。
【0002】
【従来の技術】
近年、3次元モデルをコンピュータに表示することが盛んに行われている。たとえば、建物を設計した際に、その建物を表す3次元モデルを作成する。建物を表す3次元モデルをコンピュータの画面に表示すれば、その建物の外観を容易に把握することができる。しかも、3次元モデルを表示させる際の視点を、ユーザの操作入力に応じて移動できるようにすれば、任意の視点から建物の3次元モデルを表示させることができる。
【0003】
3次元モデルをコンピュータの2次元平面に表示させる際には、3次元モデルの投影処理が行われる。投影処理には、大別して透視投影と平行投影とがある。一般に、動画像を表示させる場合には、透視投影が用いられる。
【0004】
透視投影は、透視短縮(perspective foreshortening)と消点(vanishing point)によって特徴づけられる。透視短縮は、同一の長さを持つ線分でも、視点からの距離が遠くなるほど投影される2次元平面での長さが短くなる現象である。消点は、3次元空間内で互いに平行な2直線が、投影後の2次元平面内において一点に収束するときの、2直線の収束する点である。
【0005】
ここで、消点がいくつあるかによって、投影処理が異なる。消点が2点の場合は「2点透視投影」といい、3点の場合は「3点透視投影」という。主に建築物などの水平方向の広がり感を表現したいときには、2点透視投影が用いられる。また、主に建築物などの高さ感を表現したいときには、3点透視投影が用いられる。
【0006】
図23は、従来の透視投影法による画像の例を示す図である。図23(A)は2点透視投影の画像の例であり、図23(B)は3点透視投影の画像の例である。
【0007】
図23(A)に示すように、2点透視投影では、2つの消点VP1,VP2が定義される。そして、3次元モデル301の水平方向の線分は、その線分の延長線上でいずれかの消点VP1,VP2に収束する。
【0008】
また、図23(B)に示すように、3点透視投影では、3つの消点VP3,VP4,VP5が定義される。3次元モデル302の水平方向の線分は、その線分の延長線上で消点VP3,VP4のいずれかに収束する。また、3次元モデル302の垂直方向の線分は、消点VP5に収束する。
【0009】
【発明が解決しようとする課題】
このように、2点透視投影と3点透視投影とには明らかな違いがあり、利用場面も異なる。静止画像を生成する場合には、表示する場面に応じて、その場面に適した投影法を用いればよい。
【0010】
しかし、操作入力に応じて動画像を生成する場合には、表示する場面が移り変わるため、いずれの投影法を用いたとしても、不適切な投影法で表示される場面が生じてしまう。
【0011】
たとえば、ウォークスルーと呼ばれる視点移動を行う場合、視点から見る方向を、水平方向から垂直方向へシームレス(継ぎ目のないこと)に移行する必要がある。このような場合に、いずれか一方の投影法だけを用いたのでは、画像表現に、横の広がり感と高さ感とのいずれか一方が欠如してしまう。また、動きの途中で択一的に投影法を切り替えると、画像の連続性が保てなくなり、不自然な動画となってしまう。
【0012】
本発明はこのような点に鑑みてなされたものであり、2点透視投影と3点透視投影とのシームレスな切り替えを可能とした仮想3次元空間内の3次元モデルを表示させる3次元モデル表示プログラムおよび3次元モデル表示装置を提供することを目的とする。
【0013】
【課題を解決するための手段】
本発明では上記課題を解決するために、図1に示すような処理をコンピュータに実行させるための3次元モデル表示プログラムが提供される。本発明に係る3次元モデル表示プログラムは、仮想3次元空間1内に定義された3次元モデル2の画像を表示させるためのものである。
【0014】
本発明の3次元モデル表示プログラムは、コンピュータに対して以下の処理を実行させる。
コンピュータは、操作入力(ステップS1)に応答して、視点3から仮想3次元空間1内を見る方向を示す視線ベクトルV1,V2を決定し(ステップS2)、視線ベクトルV1,V2の向きが水平に近いときには2点透視投影とし、視線ベクトルV1,V2の水平方向に対する傾きが大きくなるのに伴い、2点透視投影に対する3点透視投影による影響度を強くした投影条件を決定し(ステップS3)、決定された投影条件に従って3次元モデル2を透視投影して、画像を生成し(ステップS4)、生成された画像を表示する(ステップS5)。
【0015】
これにより、本発明の3次元モデル表示プログラムを実行するコンピュータに対してユーザからの操作入力があると、視線ベクトルV1,V2が決定される。すると、視線ベクトルV1,V2の水平に対する傾きに応じた3点透視投影の影響度で、投影条件が決定される。そして、決定された投影条件に従って、3次元モデル2の透視投影が行われ、画像が生成され、その画像が表示される。
【0016】
その結果、視線ベクトルの水平に対する傾きが大きくなるのにともなって、2点透視投影から3点透視投影へスムーズに移行させることができる。
また、本発明では、上記課題を解決するために、仮想3次元空間内に定義された3次元モデルの画像を表示させるための3次元モデル表示装置において、操作入力に応答して、視点から前記仮想3次元空間内を見る方向を示す視線ベクトルを決定する視点状態決定手段と、前記視点状態決定手段で決定された前記視線ベクトルの向きが水平に近いときには2点透視投影とし、前記視線ベクトルの水平方向に対する傾きが大きくなるのに伴い、2点透視投影に対する3点透視投影による影響度を強くした投影条件を決定する投影条件決定手段と、前記投影条件決定手段で決定された前記投影条件に従って前記3次元モデルを透視投影して、画像を生成する画像生成手段と、生成された前記画像を表示する画像表示手段と、を有することを特徴とする3次元モデル表示装置が提供される。
【0017】
このような3次元モデル表示装置によれば、ユーザからの操作入力があると、視線ベクトルが決定される。すると、視線ベクトルの水平に対する傾きに応じて3点透視投影の影響度での投影条件が決定される。そして、決定された投影条件に従って、3次元モデルの透視投影が行われ、画像が生成され、表示される。
【0018】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図1は、本発明の原理構成図である。本発明は、仮想3次元空間1内に定義された3次元モデル2の画像を表示させるためのものである。画像は、例えば操作入力に応じて移動する視点3から見た仮想3次元空間1内を、連続の画像で表現した動画像である。
【0019】
本発明では、ユーザからの操作入力(ステップS1)が行われると、その操作入力に応答して、視点から仮想3次元空間1内を見る方向を示す視線ベクトルV1,V2を決定する(ステップS2)。視線ベクトルV1,V2が決定すると、視線ベクトルV1,V2の向きが水平に近いときには2点透視投影とし、視線ベクトルV1,V2の水平方向に対する傾きが大きくなるのに伴い、2点透視投影に対する3点透視投影による影響度を強くした投影条件を決定する(ステップS3)。さらに、決定された投影条件に従って3次元モデル2を透視投影して、画像を生成する(ステップS4)。そして、生成された画像を表示する(ステップS5)。
【0020】
たとえば、図1の例では、操作入力(ステップS1)により、仮想3次元空間1内で、視点3から3次元モデル2を水平に見ている状態から、視点3が3次元モデル2を見上げる状態に移行している。図中、アップベクトルUは、視点3の上方向を示すベクトルであり、常に仮想3次元空間1の真上を向いているものとする。
【0021】
仮想3次元空間1の最初の場面1aにおける視線ベクトルV1とアップベクトルUとの成す角度θ1は90度であるものとする。すなわち、視線ベクトルV1は、仮想3次元空間1の水平方向を向いている。そして、操作入力により視点3が3次元モデル2を見上げる位置に移動する。視点3が移動した後の仮想3次元空間1の場面1bにおける視線ベクトルV2とアップベクトルUとの成す角度θ2は、鋭角(90度以下)である。
【0022】
場面1aでは、視線ベクトルV1が決定されると、視線ベクトルV1の向きに応じた投影条件が決定される。視線ベクトルV1は水平方向を向いているため、2点透視投影の投影条件が設定される。すると、透視投影が行われ画像が生成される。その画像に基づいて、画面4のように2点透視投影による3次元モデル2の透視画像4aが表示される。
【0023】
場面1bでは、視線ベクトルV2が決定されると、視線ベクトルV2の向きに応じた投影条件が決定される。視線ベクトルV2は水平方向よりも上を向いているため、3点透視投影の影響を受けた投影条件が設定される。すると、その投影条件に従った透視投影が行われ画像が生成される。その画像に基づいて、画面5のように3点透視投影の影響を受けた3次元モデル2の透視画像5aが表示される。
【0024】
このようにして、シームレスに、2点透視投影から3点透視投影へ、または3点透視投影から2点透視投影へ移行させることができる。
なお、2点透視投影に基づいて、3点透視投影の影響度合いを変化させる手法の1つとして、投影面の法線方向を変える方法がある。たとえば、投影条件の決定の際に、決定された視線ベクトルV1,V2の方向に応じて、投影面の法線方向を決定することで、3点透視投影の影響度合いを変えることが可能である。
【0025】
以下、視線ベクトルの向きに応じて投影面の法線方向を変えることで、2点透視投影と3点透視投影との間のシームレスな移行を実現するための実施の形態を説明する。
【0026】
まず、本実施の形態の具体的な内容を説明する前に、コンピュータによる2点透視投影と3点透視投影との実現方法について説明する。
2点透視投影は、投影面を垂直方向として定義することで実現することができる。
【0027】
図2は、2点透視投影の実現方法を示す概念図である。仮想3次元空間内に、視点P0と3次元モデル41とが配置されている。なお、仮想3次元空間は、X軸−Y軸−Z軸で表される。X軸とY軸は、仮想3次元空間の水平方向に定義されている。Z軸は、仮想3次元空間の垂直方向に定義されている。
【0028】
また、視点P0を基準として、アップベクトルUと視線ベクトルVとが定義される。アップベクトルUは、視点P0から3次元モデル41を見るときの上方向を向いた単位ベクトルである。本実施の形態では、仮想3次元空間の垂直方向にアップベクトルUが固定される。
【0029】
視線ベクトルVは、視点P0から仮想3次元空間内の任意の点(注視点)の方向を向いた単位ベクトルである。たとえば、3次元モデル41を表示させる場合には、3次元モデル41上の位置が注視点として設定される。
【0030】
2点透視投影では、視線ベクトルVの向きに関係なく、投影面42は垂直方向に設定される。すなわち、投影面42の法線が仮想3次元空間の水平方向を向いている。
【0031】
2点透視投影における投影面42の法線ベクトルSn1は、以下の式で求められる。
【0032】
【数1】
Sn1=V−Ucosθ ・・・・(1)
ここでθは、視線ベクトルVとアップベクトルUとの成す角である。ベクトルUcosθは、視線ベクトルVの垂直成分と同じ長さであり、かつ仮想3次元空間における垂直方向を向いている。このベクトルUcosθを垂直ベクトルと呼ぶこととする。すなわち、視線ベクトルVから垂直ベクトルを引くことにより、水平なベクトルが得られる。
【0033】
なお、3次元モデル41は、X−Y平面上に置かれた直方体である。すなわち、3次元モデル41を構成する面の縁は、垂直な線分か水平な線分である。
法線ベクトルSnによって向きが定義された投影面42に3次元モデル41を透視投影することで、2点透視投影による投影画像50が得られる。
【0034】
投影画像50には、3次元モデル41を視点P0から見たときの画像51が描かれている。画像51は、3次元モデル41の縁を表す線分51a〜51c,52a〜52dによって形状が表されている。上下方向の線分51a〜51cは、すべて平行に保たれている。また、横方向の線分52a,52bは、その線分52a,52bの延長線が、あらかじめ設定された消点で交わるように描かれている。同様に、横方向の線分52c,52dは、その線分52c,52dの延長線が、あらかじめ設定された別の消点で交わるように描かれている。
【0035】
一方、3点透視投影は、投影面を垂直方向に対して傾けることで実現することができる。
図3は、3点透視投影の実現方法を示す概念図である。図3において、視点P0、3次元モデル41、アップベクトルU、および視線ベクトルVは、図2と同じである。
【0036】
3点透視投影における投影面43の法線ベクトルSn2は、以下の式で求められる。
【0037】
【数2】
Sn2=V ・・・・(2)
このような法線ベクトルSn2によって向きが定義された投影面43に3次元モデル41を投影することで、3点透視投影による投影画像60が得られる。
【0038】
投影画像60には、3次元モデル41を視点P0から見たときの画像61が描かれている。
画像61は、3次元モデル41の縁を表す線分61a〜61c,62a〜62dによって形状が表されている。上下方向の線分61a〜61cは、各線分61a〜61cの延長線が、上方に設定された消点で交わるように描かれている。また、また、横方向の線分62a,62bは、その線分62a,62bの延長線が、仮想3次元空間に設定された2つ目の消点で交わるように描かれている。同様に、横方向の線分62c,62dは、その線分62c,62dの延長線が、仮想3次元空間に設定された3つ目の消点で交わるように描かれている。
【0039】
以上のようにして、2点透視投影と3点透視投影とを実現することができる。
本実施の形態では、2点透視投影と3点透視投影との間をシームレスに移行可能な投影法を提供する。この投影法を、ウォーク透視投影と呼ぶこととする。
【0040】
ウォーク透視投影では、視線ベクトルVの水平方向に対する傾きから投影面の傾斜度合いを算出することで、2点透視投影から3点透視投影へのシームレスな移行を実現する。
【0041】
図4は、ウォーク透視投影の実現方法を示す概念図である。図4において、視点P0、アップベクトルU、および視線ベクトルVは、図2と同じである。
ウォーク透視投影における投影面44の法線ベクトルSn3は、以下の式で求められる。
【0042】
【数3】
Sn3=V−{Ucosθ×(1−|cosθ|)} ・・・・(3)
ここで、式(3)の(1−|cosθ|)の項を、ウォーク項と呼ぶこととする。式(3)は、2点透視投影の式(1)の右辺第2項(垂直ベクトル)に対して、視線ベクトルの向きに応じて値の変化するウォーク項を乗算したものである。
【0043】
角度θの値が90度に近づくと、ウォーク項の値は1に近づく。ウォーク項の値が1になると、式(3)の右辺第2項の値がcosθ(垂直ベクトル)になる。その結果、Sn3=V−Ucosθとなり、2点透視投影の式(1)と等しくなる。
【0044】
角度θの値が0に近づくと、ウォーク項の値も0に近づく。ウォーク項の値が0になると、式(3)の右辺第2項の値が0になる。その結果、Sn3=Vとなり、3点透視投影の式(2)と等しくなる。
【0045】
すなわち、ウォーク項は、2点透視投影に対する3点透視投影による影響度を表している。
このように、ウォーク項を与えることで、θの値が90度(視線ベクトルVの向きが水平)から0度(視線ベクトルVの向きが垂直)に移行する場合、投影面44の傾きを仮想3次元空間における垂直方向(2点透視投影の設定)から視線ベクトルVと垂直な方向(3点透視投影の設定)へと緩やかに移行させることができる。
【0046】
以下、ウォーク項によって長さが変化するベクトル「Ucosθ×(1−|cosθ|)」を調整ベクトルと呼ぶこととする。
図5は、ウォーク透視投影による投影面の法線方向の遷移を示す図である。図5(A)は角度θが90度の場合の例であり、図5(B)は角度θが60度の場合の例であり、図5(C)は角度θが30度の場合の例であり、図5(D)は角度θが0度の場合の例である。
【0047】
図5(A)に示すように、角度θが90度の場合には、投影面44は、仮想3次元空間の水平面に垂直である(法線ベクトルSn3は、視線ベクトルVと平行)。
【0048】
視線ベクトルVの方向がやや上向きになり角度θが60度になると、図5(B)に示すように、視線ベクトルVと法線ベクトルSn3とは非平行になる。法線ベクトルSn3は、視線ベクトルVよりも上向き加減が少ない(水平に近い)。
【0049】
視線ベクトルVの方向がさらに上向きとなり角度θが30度になると、図5(C)に示すように、視線ベクトルVと法線ベクトルSn3との向きの差が少なくなる。
【0050】
視線ベクトルVが垂直方向を向き、角度θが0度となると、図5(D)に示すように投影面44が水平になる。すなわち、投影面44の法線ベクトルSn3は、垂直方向を向く。
【0051】
図6は、投影法ごとの投影画像の違いを示す図である。図6(A)は2点透視投影の投影画像を示しており、図6(B)は3点透視投影の投影画像を示しており、図6(C)はウォーク透視投影の投影画像を示している。
【0052】
図6には、前を向いて移動中の状態(視線ベクトルの方向が水平から少し下を向いた状態)と、上を見上げた状態(視線ベクトルの方向が上方を向いている状態)とについて、投影法ごとの投影画像の違いを示している。
【0053】
2点透視投影では、図6(A)に示すように、前を向いたとき、見上げたときとのいずれの投影画像71,72においても、仮想3次元空間内で垂直な線分は互いに平行となっている。
【0054】
2点透視投影では、見上げた際にも仮想3次元空間内で垂直な線分は互いに平行であるため、見上げたときの高さ感の表現が不十分である。
3点透視投影では、図6(B)に示すように、前を向いたときの投影画像73では、仮想3次元空間内で垂直な線分が、その線分の延長線が下方遠方の消点に収束するように描画されている。また、見上げたときの投影画像74では、仮想3次元空間内で垂直な線分が、その線分の延長線が上方遠方の消点に収束するように描画されている。
【0055】
3点透視投影では、前を向いたときにも、仮想3次元空間内で垂直な線分が、その線分の延長線が下方遠方の消点に収束するように描画される。これにより、たとえば、前を向いて移動中であっても仮想3次元空間で垂直な建物の柱などが歪んでしまい、違和感のある画像が表示されてしまう。
【0056】
ウォーク透視投影では、図6(C)に示すように、前を向いたときの投影画像75において、仮想3次元空間内で垂直な線分は互いに平行となっている。一方、見上げたときの投影画像76では、仮想3次元空間内で垂直な線分が、その線分の延長線が上方遠方の消点に収束するように描画されている。
【0057】
ウォーク透視投影によれば、ユーザの操作入力に応じてリアルタイムに生成される動画像において、視線ベクトルが前を向いたときには歪みを少なく押さえ、視線ベクトルが見上げたときには高さ感を醸し出すことができる。
【0058】
次に、本発明の実施の形態をコンピュータで実現する場合の例を具体的に説明する。なお、以下の例は、3次元モデルで作成された仮想的な町並みの中を、視点がユーザの操作入力に応じて移動させることができるシステムである。
【0059】
図7は、本実施の形態を実現するコンピュータのハードウェア構成を示すブロック図である。コンピュータ100は、CPU(Central Processing Unit)101によって装置全体が制御されている。CPU101には、バス107を介してRAM(Random Access Memory)102、ハードディスクドライブ(HDD:Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、および通信インタフェース106が接続されている。
【0060】
RAM102は、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。HDD103は、OSやアプリケーションプログラムが格納される。
【0061】
グラフィック処理装置104には、モニタ11が接続されている。グラフィック処理装置104は、CPU101からの命令に従って、画像をモニタ11の画面に表示させる。入力インタフェース105には、キーボード12とマウス13とが接続されている。入力インタフェース105は、キーボード12やマウス13から送られてくる信号を、バス107を介してCPU101に送信する。
【0062】
通信インタフェース106は、ネットワーク10に接続されている。ネットワーク10は、たとえばインターネットのような広域ネットワークである。通信インタフェース106は、ネットワーク10を介して、他のコンピュータとの間でデータの送受信を行う。
【0063】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
図8は、本実施の形態を適用したコンピュータの機能構成を示すブロック図である。コンピュータ100は、入力装置12aからの入力に応答して画像生成処理を実行し、生成した画像をモニタ11に表示させる。入力装置12aは、図7に示すキーボード12やマウス13である。
【0064】
コンピュータ100は、視野情報格納部111、3次元モデル情報格納部112、ユーザインタフェース部113、描画モード決定部114、視点状態決定部115、投影面の向き決定部116、描画部117および表示処理部118で構成される。
【0065】
視野情報格納部111には、視点や投影面に関する情報(視野情報)が格納される。視野情報は、ユーザの操作入力に応じて逐次更新される。
3次元モデル情報格納部112には、3次元モデルの形状や色などの情報(3次元モデル情報)が格納される。本実施の形態では、3次元に配置された頂点で構成されるオブジェクトは、3次元モデルであるものとする。すなわち、1つのポリゴンのような厚みのない面だけのオブジェクトも、3次元モデルである。
【0066】
ユーザインタフェース部113は、入力装置12aからの入力信号に対応する命令を判断する。ユーザインタフェース部113は、入力信号に応じた命令が、描画モードの切り替え命令の場合には、その命令を描画モード決定部114に渡す。また、ユーザインタフェース部113は、入力信号に応じた命令が、視点に対する制御命令である場合には、その制御命令を視点状態決定部115に渡す。
【0067】
描画モード決定部114は、ユーザインタフェース部113からの命令に応じて、描画モードを決定する。本実施の形態では、2点透視投影、3点透視投影、およびウォーク透視投影の3つの描画モードが用意されている。描画モード決定部114は、決定した描画モードの情報を視野情報格納部111に登録する。
【0068】
視点状態決定部115は、ユーザインタフェース部113から送られる制御命令に応答して、視点情報を決定する。決定する視点情報は、視点の位置や視線ベクトルである。視点状態決定部115は、決定した視点情報を視野情報格納部111に格納するとともに、決定した視線ベクトルを投影面の向き決定部116に渡す。
【0069】
投影面の向き決定部116は、視点状態決定部115によって決定された視線ベクトルに応じて、投影面の法線ベクトルを決定する。そして、投影面の向き決定部116は、決定した法線ベクトルを視野情報格納部111に格納する。
【0070】
描画部117は、視野情報格納部111と3次元モデル情報格納部112との内容に基づいて、所定の間隔(たとえば、1/60秒)で3次元モデルを投影面に透視投影し、透視画像を描画する。透視画像の描画が所定の間隔で連続的に行われることで、動画像が生成される。
【0071】
表示処理部118は、描画部117が描画した透視画像を画像信号に変換してモニタ11に送信する。
図9は、視野情報格納部のデータ構造の一例を示す図である。視野情報格納部111には、視点座標E、視線ベクトルV、アップベクトルU、投影面の視点からの距離、投影面の法線ベクトルSn、ウィンドウサイズ、および描画モードの情報が含まれている。
【0072】
視点座標Eは、視点の位置を、仮想3次元空間の座標(Ex,Ey,Ez)で表している。視点座標Eは、ユーザからの操作入力に応じて変更されるデータである。
【0073】
視線ベクトルVは、視点から仮想3次元空間内を見る方向(Vx,Vy,Vz)を表す単位ベクトルである。視線ベクトルVは、ユーザからの操作入力に応じて変更されるデータである。
【0074】
アップベクトルUは、視点の上方向(Ux,Uy,Uz)を定めた単位ベクトルである。アップベクトルUは、あらかじめ設定されている。本実施の形態では、アップベクトルUは、常に仮想3次元空間の垂直方向(Z軸と平行)であるものとする。従って、Ux=Uy=0である。
【0075】
投影面の視点からの距離は、視点座標から投影面の基準点(たとえば、投影面の中心)までの距離dである。投影面の視点からの距離は、あらかじめ設定されている。
【0076】
投影面の法線ベクトルSnは、投影面の法線方向(Sx,Sy,Sz)を表すデータである。投影面の法線ベクトルSnは、視線ベクトルVと描画モードとによって決定されるデータである。
【0077】
ウィンドウサイズは、投影面の大きさ(Wx,Wy)を示すデータである。ウィンドウサイズは、あらかじめ設定されている。
描画モードは、透視投影の方式を指定するデータである。本実施の形態では、ユーザの操作入力によって、2点透視投影、3点透視投影、ウォーク透視投影のいずれかから描画モードを選択することができる。
【0078】
図10は、3次元モデル情報格納部のデータ構造の一例を示す図である。3次元モデル情報格納部112には、3次元モデル毎に、形状の情報と色の情報とが格納されている。
【0079】
形状の情報には頂点座標P、法線ベクトルN、および面の情報が含まれている。
頂点座標Pは、3次元モデルを構成する各頂点の仮想3次元空間内での座標P1(P1x、P1y、P1z)、P2(P2x、P2y、P2z)・・・である。頂点座標Pは、頂点の識別子P1,P2・・・に対応づけて登録されている。
【0080】
法線ベクトルNは、各頂点の法線方向N1(N1x、N1y、N1z)、N2(N2x、N2y、N2z)・・・を示している。法線ベクトルNは、識別子N1,N2・・・に対応づけて登録されている。法線ベクトルNは、それぞれ頂点Pに対応付けられている。
【0081】
面の情報は、3次元モデルを構成する面の各頂点の集合である。面の情報は、3次元モデルを構成する面毎に登録されている。面を構成する頂点は、その頂点の識別子で特定されている。面が4角形であれば、4つの頂点が登録される。また、面が3角形であれば、3つの頂点が登録される。
【0082】
色の情報には、モデルの色、モデルの半透明率、光源の色、および光源の位置Lの情報が含まれている。
モデルの色は、3次元モデルを構成する面の色が、RGB(赤、緑、青)の各色の明度(Mr,Mg,Mb)で示されている。モデルの色は、3次元モデルを構成する面毎に定めることもできる。
【0083】
モデルの半透明率αは、3次元モデルの半透明の度合いを0〜1の数値で表している。半透明率αの値が大きいほど、3次元モデルの透明度合いが上がる。半透明率αが0の場合には、3次元モデルは不透明である。半透明率αが1の場合には、3次元モデルは透明である。
【0084】
光源の色は、光源が放つ光の色が、RGB(赤、緑、青)の各色の明度で示されている。
光源の位置Lは、仮想3次元空間内での光源の位置を示す座標(Lx,Ly,Lz)である。
【0085】
図9,図10に示した情報によって、投影条件が確定する。
図11は、3次元透視投影の概念を示す模式図である。仮想3次元空間内には、視点201、投影面202、3次元モデル203、および光源204が定義される。視点201には、視点座標Eや視線ベクトルVが定義される。投影面202に対しては、投影面の法線ベクトルSnなどが定義される。3次元モデル203には、モデルの色、半透明率α、3次元モデル203を構成する頂点Pの頂点座標P1、法線ベクトルN1などが定義される。光源204には、光源の位置Lや光源の色などが定義される。
【0086】
以上のような機能および情報が設定されたコンピュータ100にユーザから操作入力が行われると、操作入力に応じた透視投影が行われ、仮想3次元空間内に作成された情景(たとえば町並み)が表示される。以下に、画像の表示手順について説明する。
【0087】
図12は、本実施の形態を適用したウォークスルーによる画像表示処理を示すフローチャートである。以下、図12に示す処理をステップ番号に沿って説明する。
【0088】
[ステップS11]ユーザインタフェース部113は、入力装置12aを介して、ユーザからの操作入力を受け付ける。
[ステップS12]ユーザインタフェース部113は、処理終了の操作入力が行われたか否かを判断する。処理終了の操作入力が行われた場合には、処理が終了する。処理終了の操作入力でなければ、処理がステップS13に進められる。
【0089】
[ステップS13]ユーザインタフェース部113は、操作入力の内容が、描画モードの選択命令か否かを判断する。なお、操作入力の内容は、描画モードの選択命令以外に、視点状態の制御命令がある。
【0090】
描画モードの選択命令であれば、ユーザインタフェース部113から描画モード決定部114へ選択命令が渡され、処理がステップS14に進められる。描画モードの選択命令でなければ、ユーザインタフェース部113から視点状態決定部115へ制御命令が渡され、処理がステップS15に進められる。
【0091】
[ステップS14]描画モード決定部114は、ユーザインタフェース部113から受け取った選択命令に従って、描画モードを変更する。変更結果は、視野情報格納部111に登録される。その後、処理がステップS11に進められる。
【0092】
[ステップS15]視点状態決定部115は、ユーザインタフェース部113から渡された視点の制御命令に従って、視点の位置と視線ベクトルとを決定する。決定された視点の位置と視線ベクトルとは、視野情報格納部111に登録される。また、決定された視線ベクトルは、投影面の向き決定部116に渡される。
【0093】
[ステップS16]投影面の向き決定部116と描画部117とにより描画処理が行われる。描画処理の詳細は後述する。なお、描画処理は、ユーザからの操作入力がなくても、所定の間隔で繰り返し行われる。
【0094】
[ステップS17]表示処理部118は、描画部117が描画した画像をモニタ11の画面に表示する。連続して生成される画像が、逐次モニタ11に表示されることで、モニタ11には動画像が表示される。その後、処理がステップS11に進められる。
【0095】
次に、描画処理の詳細について説明する。
図13は、描画処理の手順を示すフローチャートである。以下に、描画処理の詳細について説明する。
【0096】
[ステップS21]投影面の向き決定部116は、視野情報の初期値を取得する。視野情報の初期値としては、たとえば、視線ベクトルV、アップベクトルU、視線ベクトルVとアップベクトルUとの成す角度θなどがある。視野情報の初期値のうち、視線ベクトルVとアップベクトルUとは、視野情報格納部111から取得する。角度θは、視線ベクトルVとアップベクトルUとの内積などに基づいて算出される。
【0097】
なお、本実施の形態では、cosθを用いて投影面の法線ベクトルを算出するため、初期値として、角度θに変えてcosθの値を算出してもよい。
[ステップS22]投影面の向き決定部116は、視野情報格納部111を参照して、描画モードが2点透視投影か否かを判断する。描画モードが2点透視投影の場合には、処理がステップS23に進められる。描画モードが2点透視投影でない場合には、処理がステップS24に進められる。
【0098】
[ステップS23]投影面の向き決定部116は、2点透視投影用の投影面の法線ベクトルSnを計算する。具体的には、前述の式(1)に従って投影面の法線ベクトルSn1が算出される。その後、処理がステップS27に進められる。
【0099】
[ステップS24]投影面の向き決定部116は、視野情報格納部111を参照して、描画モードが3点透視投影か否かを判断する。描画モードが3点透視投影の場合には、処理がステップS25に進められる。描画モードが3点透視投影でない場合(描画モードがウォーク透視投影の場合)には、処理がステップS26に進められる。
【0100】
[ステップS25]投影面の向き決定部116は、3点透視投影用の投影面の法線ベクトルSnを計算する。具体的には、前述の式(2)に従って投影面の法線ベクトルSn2が算出される。その後、処理がステップS27に進められる。
【0101】
[ステップS26]投影面の向き決定部116は、ウォーク透視投影用の投影面の法線ベクトルSnを計算する。具体的には、前述の式(3)に従って投影面の法線ベクトルSn3が算出される。
【0102】
[ステップS27]描画部117は、視野情報格納部111から視野に関する情報を取得し、さらに3次元モデル情報格納部112から仮想3次元空間内の3次元モデルの情報を取得する。そして、描画部117は、投影面の向き決定部116で決定された法線ベクトルSnに従った向きの投影面に対して、3次元モデルの透視投影を行い、画像を生成する。生成された画像は、たとえば、図7に示したグラフィック処理装置104に内蔵されたフレームバッファ(図示せず)に描画される。
【0103】
その後、処理が図12のステップS17に進められ、生成された画像がモニタ11に表示される。
以上のようにして、2点透視投影、3点透視投影、ウォーク透視投影のいずれかの投影方法により、仮想3次元空間内の町並みを表す動画像を、コンピュータ100のモニタ11に表示させることができる。以下に、投影方法毎の表示画面例について説明する。
【0104】
図14〜図16は、2点透視投影によって描画された画像の表示画面例である。
図14は、2点透視投影による第1の画面例を示す図である。図14に示す画面121は、建物の正面入り口を2点透視投影によって描画した画面である。視線ベクトルは、水平よりも少しだけ下方向を向いている。
【0105】
図15は、2点透視投影による第2の画面例を示す図である。図15に示す画面122は、図14に示す状態から視線ベクトルを上に向けたときの画面である。
【0106】
図16は、2点透視投影による第3の画面例を示す図である。図16に示す画面123は、図15に示す状態から視線ベクトルをさらに上に向けたときの画面である。
【0107】
図14〜図16に示すように、2点透視投影では、建物の柱のような仮想3次元空間内で垂直なオブジェクトは、視線ベクトルの方向に関係なく画面121〜123の上下方向に互いに平行に描かれる。
【0108】
図17〜図19は、3点透視投影によって描画された画像の表示画面例である。
図17は、3点透視投影による第1の画面例を示す図である。図17に示す画面131は、建物の正面入り口を3点透視投影によって描画した画面である。視線ベクトルは、水平よりも少しだけ下方向を向いている(図14の場合と同じ視線方向ベクトル)。
【0109】
図18は、3点透視投影による第2の画面例を示す図である。図18に示す画面132は、図17に示す状態から視線ベクトルを上に向けたときの画面である(図15の場合と同じ視線方向ベクトル)。
【0110】
図19は、3点透視投影による第3の画面例を示す図である。図19に示す画面133は、図18に示す状態から視線ベクトルをさらに上に向けたときの画面である(図16の場合と同じ視線方向ベクトル)。
【0111】
図17〜図19に示すように、3点透視投影では、建物の柱のような仮想3次元空間内で垂直なオブジェクトは、視線ベクトルの方向に関係なく画面131133の上下方向のいずれかの遠方に設定された消点に収束するように描かれる。そのため、図19のように上を見上げたときには、高さ感のある画面133が表示されるが、図17のように、視線方向がやや下向きになっただけでも画面131内のオブジェクトに歪みが現れてしまう。
【0112】
図20〜図22は、ウォーク透視投影によって描画された画像の表示画面例である。
図20は、ウォーク透視投影による第1の画面例を示す図である。図20に示す画面141は、建物の正面入り口をウォーク透視投影によって描画した画面である。視線ベクトルは、水平よりも少しだけ下方向を向いている(図14の場合と同じ視線方向ベクトル)。
【0113】
図21は、ウォーク透視投影による第2の画面例を示す図である。図21に示す画面142は、図20に示す状態から視線ベクトルを上に向けたときの画面である(図15の場合と同じ視線方向ベクトル)。
【0114】
図22は、ウォーク透視投影による第3の画面例を示す図である。図22に示す画面143は、図21に示す状態から視線ベクトルをさらに上に向けたときの画面である(図16の場合と同じ視線方向ベクトル)。
【0115】
図20〜図22に示すように、ウォーク透視投影では、視線ベクトルが水平に近いときにはオブジェクトの歪みはほとんどない整った画面141(2点透視投影による画面121に近似した画面)が表示され、視線ベクトルが上方を向いたときには、高さ感のある画面143(3点透視投影による画面133に近似した画面)が表示される。
【0116】
しかも、投影面の法線ベクトルSn3の式(3)におけるウォーク項により、2点透視投影から3点透視投影へ、緩やかに移行させることができる。これにより、視線ベクトルの上下方向の向きを変える場合にも、自然に画面を遷移させることができる。
【0117】
なお、ウォーク項は、上記式(3)に示したもの以外でも、角度θの値に応じて滑らかに変化する関数であれば、置き換えが可能である。
なお、上記実施の形態においては、動画像を表示する処理について説明したが、本発明で対象とする画像は、動画像に限らず、静止画像であっても同様の効果が得られる。
【0118】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、コンピュータが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスクドライブ(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、MO(Magneto-Optical disc)などがある。
【0119】
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0120】
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0121】
(付記1) 仮想3次元空間内に定義された3次元モデルの画像を表示させるための3次元モデル表示プログラムにおいて、
コンピュータに、
操作入力に応答して、視点から前記仮想3次元空間内を見る方向を示す視線ベクトルを決定し、
前記視線ベクトルの向きが水平に近いときには2点透視投影とし、前記視線ベクトルの水平方向に対する傾きが大きくなるのに伴い、2点透視投影に対する3点透視投影による影響度を強くした投影条件を決定し、
決定された前記投影条件に従って前記3次元モデルを透視投影して、画像を生成し、
生成された前記画像を表示する、
処理を実行させることを特徴とする3次元モデル表示プログラム。
【0122】
(付記2) 前記投影条件の決定の際には、決定された前記視線ベクトルの方向に応じて、投影面の法線方向を決定することを特徴とする付記1記載の3次元モデル表示プログラム。
【0123】
(付記3) 前記投影条件の決定の際には、前記視線ベクトルの向きに応じた長さであり、かつ前記仮想3次元空間において垂直方向を向いた調整ベクトルを算出し、前記視線ベクトルから前記調整ベクトルを減算することで得られるベクトルの方向を、前記投影面の法線方向とすることを特徴とする付記2記載の3次元モデル表示プログラム。
【0124】
(付記4) 前記調整ベクトルの算出の際には、前記視線ベクトルの垂直成分と同じ長さであり、かつ前記仮想3次元空間における垂直方向を向いた垂直ベクトルを算出し、前記視線ベクトルの向きに応じた値であるウォーク項を前記垂直ベクトルに乗算して、前記調整ベクトルを算出することを特徴とする付記3記載の3次元モデル表示プログラム。
【0125】
(付記5) 前記調整ベクトルの算出の際には、前記視線ベクトルの方向が水平のときに前記ウォーク項に0を設定し、前記視線ベクトルの水平からの傾きの大きさに応じて前記ウォーク項に大きな値を設定し、前記視線ベクトルが垂直のときに前記ウォーク項に1を設定することを特徴とする付記4記載の3次元モデル表示プログラム。
【0126】
(付記6) 仮想3次元空間内に定義された3次元モデルの画像を表示させるための3次元モデル表示装置において、
操作入力に応答して、視点から前記仮想3次元空間内を見る方向を示す視線ベクトルを決定する視点状態決定手段と、
前記視点状態決定手段で決定された前記視線ベクトルの向きが水平に近いときには2点透視投影とし、前記視線ベクトルの水平方向に対する傾きが大きくなるのに伴い、2点透視投影に対する3点透視投影による影響度を強くした投影条件を決定する投影条件決定手段と、
前記投影条件決定手段で決定された前記投影条件に従って前記3次元モデルを透視投影して、画像を生成する画像生成手段と、
生成された前記画像を表示する画像表示手段と、
を有することを特徴とする3次元モデル表示装置。
【0127】
(付記7) 前記投影条件決定手段は、決定された前記視線ベクトルの向きに応じて、投影面の法線方向を決定することを特徴とする付記6記載の3次元モデル表示装置。
【0128】
(付記8) 前記投影条件決定手段は、前記視線ベクトルの向きに応じた長さであり、かつ前記仮想3次元空間における垂直方向を向いた調整ベクトルを算出し、前記視線ベクトルから前記調整ベクトルを減算することで得られるベクトルの方向を、前記投影面の法線方向とすることを特徴とする付記7記載の3次元モデル表示装置。
【0129】
(付記9) 前記投影条件決定手段は、前記視線ベクトルの垂直成分と同じ長さであり、かつ前記仮想3次元空間において垂直方向を向いた垂直ベクトルを算出し、前記視線ベクトルの方向に応じた値であるウォーク項を前記垂直ベクトルに乗算して、前記調整ベクトルを算出することを特徴とする付記8記載の3次元モデル表示装置。
【0130】
(付記10) 前記投影条件決定手段は、前記視線ベクトルの方向が水平のときに前記ウォーク項に0を設定し、前記視線ベクトルの水平からの傾きの大きさに応じて前記ウォーク項に大きな値を設定し、前記視線ベクトルが垂直のときに前記ウォーク項に1を設定することを特徴とする付記9記載の3次元モデル表示装置。
【0131】
(付記11) 仮想3次元空間内に定義された3次元モデルの画像を表示させるための3次元モデル表示プログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記コンピュータに、
操作入力に応答して、視点から前記仮想3次元空間内を見る方向を示す視線ベクトルを決定し、
前記視線ベクトルの向きが水平に近いときには2点透視投影とし、前記視線ベクトルの水平方向に対する傾きが大きくなるのに伴い、2点透視投影に対する3点透視投影による影響度を強くした投影条件を決定し、
決定された前記投影条件に従って前記3次元モデルを透視投影して、画像を生成し、
生成された前記画像を表示する、
処理を実行させることを特徴とする記録媒体。
【0132】
(付記12) 仮想3次元空間内に定義された3次元モデルの画像を表示させるための3次元モデル表示方法において、
操作入力に応答して、視点から前記仮想3次元空間内を見る方向を示す視線ベクトルを決定し、
前記視線ベクトルの向きが水平に近いときには2点透視投影とし、前記視線ベクトルの水平方向に対する傾きが大きくなるのに伴い、2点透視投影に対する3点透視投影による影響度を強くした投影条件を決定し、
決定された前記投影条件に従って前記3次元モデルを透視投影して、画像を生成し、
生成された前記画像を表示する、
ことを特徴とする3次元モデル表示方法。
【0133】
【発明の効果】
以上説明したように本発明では、視線ベクトルの水平方向に対する傾きに応じて、2点透視投影に対する3点透視投影の影響度を変えるようにしたため、視点から見た仮想3次元空間内の動画像を、2点透視投影から3点透視投影へ滑らかに移行させることができる。その結果、視点から水平方向を見たときの横の広がり感と上を見上げた時の高さ感とを、一連の動画像の中で表示させることが可能となる。
【図面の簡単な説明】
【図1】本発明の原理構成図である。
【図2】2点透視投影の実現方法を示す概念図である。
【図3】3点透視投影の実現方法を示す概念図である。
【図4】ウォーク透視投影の実現方法を示す概念図である。
【図5】ウォーク透視投影による投影面の法線方向の遷移を示す図である。図5(A)は角度θが90度の場合の例であり、図5(B)は角度θが60度の場合の例であり、図5(C)は角度θが30度の場合の例であり、図5(D)は角度θが0度の場合の例である。
【図6】投影法ごとの投影画像の違いを示す図である。図6(A)は2点透視投影の投影画像を示しており、図6(B)は3点透視投影の投影画像を示しており、図6(C)はウォーク透視投影の投影画像を示している。
【図7】本実施の形態を実現するコンピュータのハードウェア構成を示すブロック図である。
【図8】本実施の形態を適用したコンピュータの機能構成を示すブロック図である。
【図9】視野情報格納部のデータ構造の一例を示す図である。
【図10】3次元モデル情報格納部のデータ構造の一例を示す図である。
【図11】3次元透視投影の概念を示す模式図である。
【図12】本実施の形態を適用したウォークスルーによる画像表示処理を示すフローチャートである。
【図13】描画処理の手順を示すフローチャートである。以下に、描画処理の詳細について説明する。
【図14】2点透視投影による第1の画面例を示す図である。
【図15】2点透視投影による第2の画面例を示す図である。
【図16】2点透視投影による第3の画面例を示す図である。
【図17】3点透視投影による第1の画面例を示す図である。
【図18】3点透視投影による第2の画面例を示す図である。
【図19】3点透視投影による第3の画面例を示す図である。
【図20】ウォーク透視投影による第1の画面例を示す図である。
【図21】ウォーク透視投影による第2の画面例を示す図である。
【図22】ウォーク透視投影による第3の画面例を示す図である。
【図23】従来の透視投影法による画像の例を示す図である。図23(A)は2点透視投影の画像の例であり、図23(B)は3点透視投影の画像の例である。
【符号の説明】
1 仮想3次元空間
1a,1b 場面
2 3次元モデル
3 視点
4,5 画面
4a,5a 透視画像
10 ネットワーク
11 モニタ
12 キーボード
13 マウス
100 コンピュータ
101 CPU
102 RAM
103 ハードディスクドライブ
104 グラフィック処理装置
105 入力インタフェース
106 通信インタフェース
107 バス

Claims (3)

  1. 仮想3次元空間内に定義された3次元モデルの画像を表示させるための3次元モデル表示プログラムにおいて、
    コンピュータに、
    操作入力に応答して、視点から前記仮想3次元空間内を見る方向を示す視線ベクトルを決定し、
    前記視線ベクトルの向きに応じた長さであり、かつ前記仮想3次元空間において垂直方向を向いた調整ベクトルを算出し、前記視線ベクトルの前記視線ベクトルから前記調整ベクトルを減算することで得られるベクトルの方向を、投影面の法線方向とすることで、前記視線ベクトルの向きが水平に近いときには2点透視投影とし、前記視線ベクトルの水平方向に対する傾きが大きくなるのに伴い、2点透視投影に対する3点透視投影による影響度を強くした投影条件を決定し、
    決定された前記投影条件に従って前記3次元モデルを透視投影して、画像を生成し、
    生成された前記画像を表示する、
    処理を実行させることを特徴とする3次元モデル表示プログラム。
  2. 前記調整ベクトルの算出の際には、前記視線ベクトルの垂直成分と同じ長さであり、かつ前記仮想3次元空間における垂直方向を向いた垂直ベクトルを算出し、前記視線ベクトルの向きに応じた値であるウォーク項を前記垂直ベクトルに乗算して、前記調整ベクトルを算出することを特徴とする請求項1記載の3次元モデル表示プログラム。
  3. 仮想3次元空間内に定義された3次元モデルの画像を表示させるための3次元モデル表示装置において、
    操作入力に応答して、視点から前記仮想3次元空間内を見る方向を示す視線ベクトルを決定する視点状態決定手段と、
    前記視線ベクトルの向きに応じた長さであり、かつ前記仮想3次元空間において垂直方向を向いた調整ベクトルを算出し、前記視線ベクトルの前記視線ベクトルから前記調整ベクトルを減算することで得られるベクトルの方向を、投影面の法線方向とすることで、前記視点状態決定手段で決定された前記視線ベクトルの向きが水平に近いときには2点透視投影とし、前記視線ベクトルの水平方向に対する傾きが大きくなるのに伴い、2点透視投影に対する3点透視投影による影響度を強くした投影条件を決定する投影条件決定手段と、
    前記投影条件決定手段で決定された前記投影条件に従って前記3次元モデルを透視投影して、画像を生成する画像生成手段と、
    生成された前記画像を表示する画像表示手段と、
    を有することを特徴とする3次元モデル表示装置。
JP2001171867A 2001-06-07 2001-06-07 3次元モデル表示プログラムおよび3次元モデル表示装置 Expired - Fee Related JP3792541B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001171867A JP3792541B2 (ja) 2001-06-07 2001-06-07 3次元モデル表示プログラムおよび3次元モデル表示装置
US09/983,941 US6700578B2 (en) 2001-06-07 2001-10-26 Three-dimensional model display program and three-dimensional model display apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001171867A JP3792541B2 (ja) 2001-06-07 2001-06-07 3次元モデル表示プログラムおよび3次元モデル表示装置

Publications (2)

Publication Number Publication Date
JP2002366975A JP2002366975A (ja) 2002-12-20
JP3792541B2 true JP3792541B2 (ja) 2006-07-05

Family

ID=19013567

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001171867A Expired - Fee Related JP3792541B2 (ja) 2001-06-07 2001-06-07 3次元モデル表示プログラムおよび3次元モデル表示装置

Country Status (2)

Country Link
US (1) US6700578B2 (ja)
JP (1) JP3792541B2 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7345783B2 (en) * 2001-10-31 2008-03-18 Canon Kabushiki Kaisha Image processing method and apparatus for generating sequential still images by extracting still images from moving image data, and printing apparatus
GB2387519B (en) * 2002-04-08 2005-06-22 Canon Europa Nv Viewing controller for three-dimensional computer graphics
US7068269B2 (en) * 2002-08-30 2006-06-27 Brian Curtis Roberts System and method for presenting three-dimensional data
JP4304946B2 (ja) * 2002-09-24 2009-07-29 セイコーエプソン株式会社 画像表示装置
JP3852934B2 (ja) * 2003-05-20 2006-12-06 株式会社バンダイナムコゲームス 画像処理システム、プログラム及び情報記憶媒体
JP4141986B2 (ja) * 2003-07-17 2008-08-27 セイコーエプソン株式会社 視線誘導情報表示装置および視線誘導情報表示プログラム
JP4642431B2 (ja) * 2003-11-13 2011-03-02 パナソニック株式会社 地図表示装置、地図表示システム、地図表示方法およびプログラム
JP4207883B2 (ja) * 2004-03-24 2009-01-14 セイコーエプソン株式会社 視線誘導度算出システム
US20060132508A1 (en) * 2004-12-16 2006-06-22 Navid Sadikali Multi-planar image viewing system and method
KR100657943B1 (ko) * 2005-01-07 2006-12-14 삼성전자주식회사 2차원 건물 데이터의 실시간 3차원 변환 방법 및 장치,그리고 이를 이용한 2차원 건물 데이터의 실시간 3차원시각화 방법 및 장치
US7880738B2 (en) 2005-07-14 2011-02-01 Molsoft Llc Structured documents and systems, methods and computer programs for creating, producing and displaying three dimensional objects and other related information in those structured documents
JP4397372B2 (ja) * 2005-12-28 2010-01-13 トヨタ自動車株式会社 3次元形状データの作成方法、3次元形状データの作成装置、及び、3次元形状データの作成プログラム
US7657340B2 (en) * 2006-01-31 2010-02-02 Dragon & Phoenix Software, Inc. System, apparatus and method for facilitating pattern-based clothing design activities
US7657341B2 (en) 2006-01-31 2010-02-02 Dragon & Phoenix Software, Inc. System, apparatus and method for facilitating pattern-based clothing design activities
US20080062167A1 (en) * 2006-09-13 2008-03-13 International Design And Construction Online, Inc. Computer-based system and method for providing situational awareness for a structure using three-dimensional modeling
US20090112473A1 (en) * 2007-10-31 2009-04-30 Hung Sung Lu Method for providing location and promotional information associated with a building complex
US9454283B1 (en) * 2008-01-07 2016-09-27 The Mathworks, Inc. Three-dimensional visualization
US8405652B1 (en) * 2008-09-09 2013-03-26 Adobe Systems Incorporated Three-dimensional visualization of a form
US8868338B1 (en) 2008-11-13 2014-10-21 Google Inc. System and method for displaying transitions between map views
US9454847B2 (en) * 2009-02-24 2016-09-27 Google Inc. System and method of indicating transition between street level images
US9002286B2 (en) * 2009-03-30 2015-04-07 Massachusetts Institute Of Technology Method and system for identification and mitigation of errors in non-line-of-sight distance estimation
US8938093B2 (en) * 2009-04-21 2015-01-20 International Business Machines Corporation Addition of immersive interaction capabilities to otherwise unmodified 3D graphics applications
US9053562B1 (en) * 2010-06-24 2015-06-09 Gregory S. Rabin Two dimensional to three dimensional moving image converter
JP5552527B2 (ja) * 2012-12-20 2014-07-16 ソフトバンクBb株式会社 情報処理装置及びプログラム
US9992021B1 (en) 2013-03-14 2018-06-05 GoTenna, Inc. System and method for private and point-to-point communication between computing devices
US10062209B2 (en) * 2013-05-02 2018-08-28 Nintendo Co., Ltd. Displaying an object in a panoramic image based upon a line-of-sight direction
US9183635B2 (en) * 2013-05-20 2015-11-10 Mitsubishi Electric Research Laboratories, Inc. Method for reconstructing 3D lines from 2D lines in an image
US9658688B2 (en) * 2013-10-15 2017-05-23 Microsoft Technology Licensing, Llc Automatic view adjustment
JP5824537B2 (ja) 2014-01-16 2015-11-25 キヤノン株式会社 情報処理装置および情報処理方法
US10216289B2 (en) * 2016-04-29 2019-02-26 International Business Machines Corporation Laser pointer emulation via a mobile device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5574836A (en) * 1996-01-22 1996-11-12 Broemmelsiek; Raymond M. Interactive display apparatus and method with viewer position compensation
US6234901B1 (en) * 1996-11-22 2001-05-22 Kabushiki Kaisha Sega Enterprises Game device, picture data and flare forming method
JP3145059B2 (ja) * 1997-06-13 2001-03-12 株式会社ナムコ 情報記憶媒体及び画像生成装置

Also Published As

Publication number Publication date
US20020186217A1 (en) 2002-12-12
JP2002366975A (ja) 2002-12-20
US6700578B2 (en) 2004-03-02

Similar Documents

Publication Publication Date Title
JP3792541B2 (ja) 3次元モデル表示プログラムおよび3次元モデル表示装置
JP3764070B2 (ja) オブジェクト表示プログラムおよびオブジェクト表示装置
JP4226639B1 (ja) 画像処理装置、画像処理方法、ならびに、プログラム
US20160238852A1 (en) Head mounted display performing post render processing
US8007110B2 (en) Projector system employing depth perception to detect speaker position and gestures
US12112449B2 (en) Camera-based transparent display
US9325960B2 (en) Maintenance of three dimensional stereoscopic effect through compensation for parallax setting
JP2006293792A (ja) 立体映像生成装置
US20080267582A1 (en) Image processing apparatus and image processing method
WO2022022449A1 (zh) 用于空间定位的方法和装置
US10540824B1 (en) 3-D transitions
US10708597B2 (en) Techniques for extrapolating image frames
US6714198B2 (en) Program and apparatus for displaying graphical objects
JP4144017B2 (ja) ビデオゲーム装置、画像表示装置及び方法、動画表示装置及び方法並びに記録媒体
EP1170044A2 (en) Computer readable recording medium recording a program for causing a light source to be displayed on a game screen and the program, and game screen display method and apparatus
JP4931240B2 (ja) 画像の認識を支援するシステム
WO2022089061A1 (zh) 物体标注信息呈现方法、装置、电子设备及存储介质
CN115244494A (zh) 用于处理扫描对象的系统和方法
JP2002260003A (ja) 映像表示装置
JP4572220B2 (ja) 画像表示装置、画像表示方法、ならびに、プログラム
KR100865583B1 (ko) 컴퓨터 그래픽 시스템에서의 동영상의 반사 효과 처리 방법
JP4637205B2 (ja) 表示装置、表示方法、ならびに、プログラム
JP2008234681A (ja) ビデオゲーム装置、画像表示装置及び方法、動画表示装置及び方法並びに記録媒体
JPH11175758A (ja) 立体表示方法および装置
JPH0955959A (ja) 画像表示装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060224

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: 20060404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060405

R150 Certificate of patent or registration of utility model

Ref document number: 3792541

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090414

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100414

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110414

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110414

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120414

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130414

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140414

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees