JP5652037B2 - Simulated video generation device, method, and program - Google Patents

Simulated video generation device, method, and program Download PDF

Info

Publication number
JP5652037B2
JP5652037B2 JP2010172630A JP2010172630A JP5652037B2 JP 5652037 B2 JP5652037 B2 JP 5652037B2 JP 2010172630 A JP2010172630 A JP 2010172630A JP 2010172630 A JP2010172630 A JP 2010172630A JP 5652037 B2 JP5652037 B2 JP 5652037B2
Authority
JP
Japan
Prior art keywords
video
visual field
field
displayed
time
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
JP2010172630A
Other languages
Japanese (ja)
Other versions
JP2012033038A (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.)
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 JP2010172630A priority Critical patent/JP5652037B2/en
Publication of JP2012033038A publication Critical patent/JP2012033038A/en
Application granted granted Critical
Publication of JP5652037B2 publication Critical patent/JP5652037B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

本発明は、ユーザ操作入力に応じて仮想空間の映像を表示するシミュレーション技術に関する。   The present invention relates to a simulation technique for displaying a video in a virtual space in response to a user operation input.

近年、コンピュータグラフィクスにより作り出された仮想世界を、ユーザがリアルタイムでウォークスルー、ドライブスルー、あるいはフライスルーすることのできる、リアルタイム映像シミュレーションの技術が開発されている。   In recent years, real-time video simulation technology has been developed that allows a user to walk through, drive through, or fly through a virtual world created by computer graphics in real time.

このようなリアルタイム映像シミュレーションにおいては、より映像のリアリティや臨場感を高めるために、より詳細に作り込まれた複雑なシーンを表現したいというニーズがある。例えば、3Dゲームにおいては、より緻密にモデリングされた世界を表現することが望まれる。しかし、仮想世界をコンピュータグラフィクスにより描画するための描画用計算機には性能の限界がある。その限界を超えた複雑さを持つシーンを描画しようとすると、映像の一つのフレームを描画するのにかかる時間が増大し、フレームレート(単位時間あたりの描画フレーム数)が低下して映像の動きの滑らかさが失われる。それと同時に、操作入力に対して映像が遅延することにより、仮想世界内を移動するユーザの感覚に大きな違和感が生じる。   In such real-time video simulation, there is a need to express complex scenes created in more detail in order to enhance the reality and realism of video. For example, in a 3D game, it is desired to express a more precisely modeled world. However, a drawing computer for drawing a virtual world by computer graphics has a limit in performance. If you try to draw a scene with a complexity that exceeds that limit, the time taken to draw one frame of the video will increase, and the frame rate (number of frames drawn per unit time) will decrease and the video will move. The smoothness is lost. At the same time, the video is delayed with respect to the operation input, which causes a great sense of discomfort for the user moving in the virtual world.

従来は、この違和感を防ぐために、描画用計算機が十分なフレームレートを維持できる限界を超えないように、データ削減作業を行ってシーンを単純化していた。つまり、単体の描画用計算機の性能の限界を超える複雑なシーンをそのまま描画することはできなかった。3Dゲームであれば、単体のゲーム機の描画性能の限界が仮想世界の表現の限界を決めていた。そのため、描画における時間遅れを改善するために、時間遅れによって生じる位置的な誤差を、画像を平行移動させて補正する方法が提案されている(例えば、特許文献1参照)。   Conventionally, in order to prevent this uncomfortable feeling, the scene has been simplified by performing data reduction work so as not to exceed the limit at which the drawing computer can maintain a sufficient frame rate. In other words, it was not possible to draw a complex scene that exceeded the performance limit of a single drawing computer. In the case of a 3D game, the limit of the drawing performance of a single game machine has determined the limit of expression in the virtual world. Therefore, in order to improve the time delay in drawing, a method of correcting a positional error caused by the time delay by translating the image has been proposed (see, for example, Patent Document 1).

特開平5−324799号公報JP-A-5-324799

しかしながら、上記従来の方法で画像を平行移動させると、移動後に未描画領域が発生する場合がある。時間遅れによる描画領域の誤差が大きい程、この未描画領域も大きくなる。これにより、新たに違和感が生じかねない。   However, when the image is translated by the conventional method, an undrawn area may occur after the movement. The larger the drawing area error due to time delay, the larger the undrawn area. This may cause a new feeling of strangeness.

本発明は、上記課題を鑑みてなされたものであり、シミュレーション映像の遅延による違和感を低減させることが目的とする。   The present invention has been made in view of the above problems, and an object thereof is to reduce a sense of incongruity due to a delay of a simulation video.

本願開示の模擬映像生成装置は、ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部と、第1の時刻に、前記シミュレーション部により計算された第1の表示すべき視野より広い視野である描画すべき視野を計算する描画視野算出部と、前記描画すべき視野に対応する第1の映像の生成を、前記仮想世界を表すデータを基に前記第1の時刻の直後に開始する映像生成部と、前記第1の映像の生成開始後の第2の時刻に前記シミュレーション部により計算された第2の表示すべき視野を用いて、前記第2の時刻の直後に、前記第1の映像を前記第2の表示すべき視野に対応する第2の映像に補正する映像補正部とを備え、前記描画視野算出部は、前記第1の時刻に、前記第2の時刻における前記第2の表示すべき視野を所定の方法で予測して計算し、前記描画すべき視野が前記第1の表示すべき視野および予測した前記第2の表示すべき視野を含んだ視野となるように、前記描画すべき視野の計算を行う。
The simulated video generation device disclosed in the present application updates data representing a virtual world according to an operation input from a user or the passage of time, and calculates a visual field to be displayed in the virtual world, and a first time, A drawing field calculation unit that calculates a field of view to be drawn which is a field of view wider than the first field of view calculated by the simulation unit; and generation of a first video corresponding to the field of view to be drawn A video generation unit that starts immediately after the first time based on data representing the world, and a second display calculated by the simulation unit at a second time after the start of generation of the first video An image correction unit that corrects the first image to a second image corresponding to the second field of view to be displayed immediately after the second time using a field of view; Before At the first time, the second visual field to be displayed at the second time is predicted and calculated by a predetermined method, and the visual field to be drawn is the first visual field to be displayed and the predicted first visual field. as the inclusive vision field of vision to be displayed of 2, the calculation of the visual field to be the drawing.

本願明細書の開示によれば、シミュレーション映像の遅延による違和感を低減させることができる。   According to the disclosure of the present specification, it is possible to reduce a sense of incongruity due to a delay of a simulation video.

第1の実施形態にかかるシミュレーション装置(模擬映像生成装置)の構成の一例を示す機能ブロック図である。It is a functional block diagram which shows an example of a structure of the simulation apparatus (simulated image generation apparatus) concerning 1st Embodiment. 第1の実施形態にかかるシミュレーション装置(模擬映像生成装置)の構成の変形例を示す機能ブロック図である。It is a functional block diagram which shows the modification of a structure of the simulation apparatus (simulated image generation apparatus) concerning 1st Embodiment. 第2の実施形態におけるシミュレーションシステムの構成例を示す機能ブロック図である。It is a functional block diagram which shows the structural example of the simulation system in 2nd Embodiment. 図4Aは、時刻t=TNおよび時刻t=TN-nにおける仮想世界の車の位置および視野の一例を示す図である。FIG. 4A is a diagram illustrating an example of the position and field of view of a car in the virtual world at time t = T N and time t = T Nn . 図4Bは、時刻t=TNにおける表示すべき視野の映像、および時刻t=TN-nにいて補正された映像の一例を示す図である。FIG. 4B is a diagram showing an example of a visual field image to be displayed at time t = T N and a video image corrected at time t = T Nn . 図5Aは、時刻TNにおける視線方向ベクトルおよび視野と映像の関係、および映像の一例を示す図である。FIG. 5A is a diagram illustrating an example of the visual line direction vector and the relationship between the visual field and the video at time T N and the video. 図5Bは、時刻TN-nにおける視線方向ベクトルと平行移動された映像の関係、および平行移動された映像の一例を示す図である。FIG. 5B is a diagram illustrating an example of the relationship between the line-of-sight direction vector and the translated image at time T Nn and an example of the translated image. 図6Aは、映像を球面への投影として捉えて処理する場合の、視線方向ベクトルおよび視野と映像の関係、および映像の一例を示す図である。FIG. 6A is a diagram illustrating an example of the visual line direction vector, the relationship between the visual field and the video, and the video when the video is captured and processed as a projection onto a spherical surface. 図6Bは、映像を球面への投影として捉えて処理する場合の、視線方向ベクトルおよび視野と移動後の映像の関係、および移動後の映像の一例を示す図である。FIG. 6B is a diagram illustrating an example of the relationship between the line-of-sight direction vector and the visual field and the image after movement, and the image after movement when the image is captured and processed as a projection onto a spherical surface. 図7Aは、映像生成の時点における視野をそのまま描画し、補正した場合の補正前後の映像例を示す図である。FIG. 7A is a diagram illustrating a video example before and after correction when the visual field at the time of video generation is drawn and corrected as it is. 図7Bは、映像生成の時点における視野より広い描画すべき視野を計算し、補正した場合の補正前後の映像例を示す図である。FIG. 7B is a diagram illustrating a video example before and after correction when a visual field to be drawn wider than the visual field at the time of video generation is calculated and corrected. 図8は、仮想世界の複数のオブジェクトが分けて描画された後に合成される映像の例を示す図である。FIG. 8 is a diagram illustrating an example of an image that is synthesized after a plurality of objects in the virtual world are drawn separately. 図3に示すシミュレーションシステムの動作例を示す処理フロー図である。FIG. 4 is a process flow diagram illustrating an operation example of the simulation system illustrated in FIG. 3.

以下、本発明の実施形態について図面を参照して具体的に説明する。   Embodiments of the present invention will be specifically described below with reference to the drawings.

(第1の実施形態)
[シミュレーション装置の構成例]
図1は、第1の実施形態にかかるシミュレーション装置(模擬映像生成装置)の構成の一例を示す機能ブロック図である。図1に示すシミュレーション装置10は、ユーザからの操作入力または時間経過に応じて、仮想世界(仮想空間)を表すデータを更新し、仮想世界の映像をコンピュータグラフィックスにより生成して表示する装置である。シミュレーション装置10は、仮想世界における物体の位置、形状等の仮想世界を表すデータと、ユーザの視点(カメラ)の位置、向き、画角等の視野を表すデータを用いて、コンピュータにより表示すべき仮想世界の映像を自動的に生成する機能を有する。なお、シミュレーションの対象や用途は特定のものに限定されない。
(First embodiment)
[Example configuration of simulation device]
FIG. 1 is a functional block diagram illustrating an example of a configuration of a simulation apparatus (simulated video generation apparatus) according to the first embodiment. A simulation apparatus 10 shown in FIG. 1 is an apparatus that updates data representing a virtual world (virtual space) in response to an operation input from a user or the passage of time, and generates and displays a video of the virtual world by computer graphics. is there. The simulation apparatus 10 should be displayed by a computer using data representing a virtual world such as the position and shape of an object in the virtual world and data representing a field of view such as the position, orientation, and angle of view of the user's viewpoint (camera). It has a function to automatically generate a video of the virtual world. Note that the simulation target and application are not limited to specific ones.

シミュレーション装置10は、描画視野算出部1、映像生成部2、映像補正部3、表示部4、シミュレーション部5および入力部6を備える。シミュレーション部5は、入力部6を介して受け付けたユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算する。   The simulation apparatus 10 includes a drawing visual field calculation unit 1, a video generation unit 2, a video correction unit 3, a display unit 4, a simulation unit 5, and an input unit 6. The simulation unit 5 updates the data representing the virtual world according to the operation input from the user received through the input unit 6 or the passage of time, and calculates the visual field to be displayed in the virtual world.

ここで、表示すべき視野は、仮想世界におけるユーザまたはカメラの視野を特定するデータであり、表示すべき視野に含まれる仮想世界の映像がシミュレーション装置10により出力されることになる。表示すべき視野は、例えば、視点の位置、向き、画角および投影パラメータ等を含む。投影パラメータには、例えば、仮想空間の物体や背景等を投影する面を規定するパラメータが含まれる。   Here, the visual field to be displayed is data for specifying the visual field of the user or the camera in the virtual world, and a video of the virtual world included in the visual field to be displayed is output by the simulation apparatus 10. The visual field to be displayed includes, for example, the position, orientation, angle of view, projection parameter, and the like of the viewpoint. The projection parameter includes, for example, a parameter that defines a surface on which an object or background in the virtual space is projected.

仮想世界を表すデータは、例えば、仮想世界における物体や平面等のオブジェクトの形状データ(例えば、ポリゴンデータ)と位置、姿勢、色、テクスチャなどの属性データの集合とすることができる。   The data representing the virtual world can be, for example, a set of shape data (for example, polygon data) of an object such as an object or a plane in the virtual world and attribute data such as position, orientation, color, and texture.

例えば、ユーザが操作可能なハンドルやペダルを含む入力装置から入力部6を介して操作入力を受け付け、ユーザが仮想世界の車を運転するシミュレーションを実現する場合は、シミュレーション部5は、車の制御系や駆動系のデータを操作に応じて更新するシミュレーションを行って、仮想のドライバの視野を表示すべき視野として計算する。   For example, when an operation input is received via an input unit 6 from an input device including a handle and a pedal that can be operated by the user, and the user realizes a simulation of driving a vehicle in the virtual world, the simulation unit 5 controls the vehicle. A simulation for updating the system and drive system data according to the operation is performed, and the field of view of the virtual driver is calculated as the field of view to be displayed.

あるいは、ユーザ頭部の位置姿勢を測定するセンサの測定結果を、入力部6を介して受け付けて、仮想世界内での首振りを実現する場合であれば、シミュレーション部5は、実世界におけるユーザ頭部の位置姿勢の測定結果を、仮想世界の人物の頭部の動きに対応付ける計算を行い、仮想の人物の視野を表示すべき視野として求めることができる。   Alternatively, if the measurement result of the sensor that measures the position and orientation of the user's head is received via the input unit 6 and the swing in the virtual world is realized, the simulation unit 5 The measurement result of the position and orientation of the head can be calculated to correspond to the movement of the head of the person in the virtual world, and the field of view of the virtual person can be obtained as the field of view to be displayed.

なお、シミュ−ション部5は、ユーザからの操作入力を受け付けることなく、所定の周期で仮想世界のデータを自動的に更新してシミュレーションを実行することもできる。あるいは、他のシミュレーション装置の計算結果を、入力部6を介して受け付けてもよい。   In addition, the simulation part 5 can also update the data of a virtual world automatically with a predetermined period, and can perform a simulation, without receiving the operation input from a user. Or you may receive the calculation result of another simulation apparatus via the input part 6. FIG.

描画視野算出部1は、前記表示すべき視野より広い視野である、描画すべき視野を計算する。描画すべき視野は、映像生成部2が生成する映像の視野を表すデータである。すなわち、描画視野算出部1は、シミュレーション部5が更新した表示すべき視野を基に、映像生成部2が生成する映像の視野を計算する。描画すべき視野も、表示すべき視野と同様に、例えば、視点の位置、向き、画角および投影パラメータ等を含むことができる。   The drawing visual field calculation unit 1 calculates a visual field to be drawn, which is a wider visual field than the visual field to be displayed. The visual field to be drawn is data representing the visual field of the video generated by the video generator 2. That is, the drawing visual field calculation unit 1 calculates the visual field of the video generated by the video generation unit 2 based on the visual field to be displayed updated by the simulation unit 5. The field of view to be drawn can include, for example, the position of the viewpoint, the orientation, the angle of view, the projection parameters, and the like, similarly to the field of view to be displayed.

ここで計算される描画すべき視野は、映像生成部2において、この描画すべき視野の映像生成が開始された後の時点で更新される表示すべき視野が含まれうる範囲の視野であることが好ましい。そのため、描画視野算出部1は、例えば、映像生成時点の表示すべき視野よりも広い範囲の視野を描画すべき視野として計算することができる。この場合、描画視野算出部1は、例えば、描画すべき視野を、表示すべき視野に対して、どの方向にどの程度拡張するかを、過去に計算された表示すべき視野の履歴データや、映像生成にかかる時間等を基に、計算することができる。このように、描画視野算出部1が、前記表示すべき視野より広い視野である描画すべき視野を計算し、この描画すべき視野の映像を生成することにより、後述する生成後の映像補正において、映像の遅延による違和感を低減することが可能になる。   The visual field to be drawn calculated here is a visual field in a range in which the visual field to be displayed that is updated at the time after the video generation of the visual field to be drawn is started in the video generation unit 2 can be included. Is preferred. Therefore, the drawing visual field calculation unit 1 can calculate, for example, a visual field in a wider range than the visual field to be displayed at the time of video generation as the visual field to be drawn. In this case, the drawing visual field calculation unit 1, for example, in which direction and how much the visual field to be drawn is expanded with respect to the visual field to be displayed, history data of the visual field to be displayed calculated in the past, This can be calculated based on the time required for video generation. In this way, the drawing field calculation unit 1 calculates the field of view to be drawn, which is a field of view wider than the field of view to be displayed, and generates the image of the field of view to be drawn. It becomes possible to reduce the uncomfortable feeling due to the delay of the video.

描画視野算出部1は、一例として、シミュレーション部5によって計算された表示すべき視野の履歴に基づいて、映像の生成開始後に表示すべき視野となりうる範囲を計算し、当該範囲を含む視野を前記描画すべき視野とすることができる。このように、表示すべき視野の履歴に基づいて、映像生成開始後の表示すべき視野を正確に予測し、適切な描画すべき視野を求めることができる。   For example, the drawing visual field calculation unit 1 calculates a range that can be displayed after the start of image generation based on the history of the visual field to be displayed calculated by the simulation unit 5, and the visual field including the range is calculated as the visual field including the range. It can be a field of view to be drawn. Thus, based on the history of the visual field to be displayed, the visual field to be displayed after the start of video generation can be accurately predicted, and an appropriate visual field to be drawn can be obtained.

また、この構成に加えてまたは換えて、描画視野算出部1は、映像生成部2による映像の生成開始から映像の補正開始までにかかる時間の予測値を、映像の生成にかかった時間の履歴を用いて計算し、当該予測値に応じて、描画すべき視野の範囲を調整することもできる。これにより、映像生成開始後の表示すべき視野をより正確に予測し、より適切な描画すべき視野を求めることができる。   In addition to or instead of this configuration, the drawing visual field calculation unit 1 uses the predicted value of the time taken from the start of video generation to the start of video correction by the video generation unit 2 as a history of the time taken to generate the video. And the range of the field of view to be drawn can be adjusted according to the predicted value. Accordingly, it is possible to more accurately predict the visual field to be displayed after the start of video generation and to obtain a more appropriate visual field to be drawn.

映像生成部2は、描画視野算出部1が算出した描画すべき視野の映像を、仮想世界を表すデータを基に生成する。本実施形態では、映像生成部2が、描画すべき視野を用いて仮想世界の映像を生成する際、映像の生成が開始された時点における表示すべき視野と描画すべき視野は、それぞれ表示視野保持部8と描画視野保持部7によって、生成される映像と関連付けて保持される。また、生成された映像は、映像補正部3へ送られる。この際、例えば、後述するように、映像生成部2と映像補正部3との間において、コーデックによる圧縮伸張やネットワークを経由して、映像が送られる構成であってもよい。   The video generation unit 2 generates a video of the visual field to be drawn calculated by the drawing visual field calculation unit 1 based on data representing a virtual world. In the present embodiment, when the video generation unit 2 generates a virtual world video using the field of view to be drawn, the field of view to be displayed and the field of view to be drawn at the time when the generation of the image is started are respectively the display field of view. The holding unit 8 and the drawing visual field holding unit 7 hold the image in association with the generated video. The generated video is sent to the video correction unit 3. At this time, for example, as will be described later, the video may be sent between the video generation unit 2 and the video correction unit 3 via compression / decompression by a codec or via a network.

映像補正部3は、前記映像の生成開始後に計算された新たな表示すべき視野とを用いて、前記映像を、新たな表示すべき視野に対応する映像に補正する。表示部4は、映像補正部3によって補正された映像をユーザに対して提示する。   The video correction unit 3 corrects the video to a video corresponding to the new visual field to be displayed, using the new visual field to be displayed calculated after the start of the video generation. The display unit 4 presents the video corrected by the video correction unit 3 to the user.

一例として、映像補正部3は、映像生成部2から生成された映像を入力し、その入力タイミングにおける表示すべき視野(第一の視野とする)をシミュレーション部5から受け取る。この第一の視野は、映像生成部2による映像の生成開始後にシミュレーション部5で計算された新たな表示すべき視野の一例である。映像補正部3は、さらに、入力した映像に関連付けられた表示すべき視野(第二の視野とする)と描画すべき視野(第三の視野とする)をそれぞれ表示視野保持部8と描画視野保持部7から読み出す。そして、これら三つの視野を用いて入力された映像の補正を行う。   As an example, the video correction unit 3 receives the video generated from the video generation unit 2, and receives from the simulation unit 5 a field of view to be displayed at the input timing (referred to as a first field of view). This first visual field is an example of a new visual field to be displayed calculated by the simulation unit 5 after the video generation unit 2 starts generating the video. The video correction unit 3 further displays a visual field to be displayed (second visual field) and a visual field to be drawn (third visual field) associated with the input video with the display visual field holding unit 8 and the drawing visual field, respectively. Read from the holding unit 7. Then, the input video is corrected using these three fields of view.

第一の視野はこれから表示するべき視野である。第二、第三の視野は、映像生成開始時の視野であるから、映像の生成およびその他の必要な処理(例えば、通信、コーデック等)にかかった時間分だけ古い視野となる。映像補正部3は、これら古い視野(第二と第三の視野)の映像を補正することにより、これから表示するべき視野(第一の視野)についての近似映像を生成する。この補正は、例えば、映像の二次元的な平行移動、拡大縮小、回転などによって行うことができるが、これらに限定されるものではない。   The first field of view is the field of view to be displayed. Since the second and third visual fields are visual fields at the start of video generation, the visual fields are old for the time required for video generation and other necessary processing (for example, communication, codec, etc.). The image correcting unit 3 corrects the images of the old fields of view (second and third fields of view) to generate an approximate image of the field of view (first field of view) to be displayed. This correction can be performed by, for example, two-dimensional translation, enlargement / reduction, rotation, and the like of the video, but is not limited thereto.

映像補正部3は、例えば、第三の視野(描画すべき視野)の映像のうち、この映像の生成開始後に計算された新たな第一の視野(新たな表示すべき視野)に対応する領域が表示映像となるように補正をすることができる。これにより、映像生成が視野の変化に対して遅延しても、視野の変化の対応するよう映像を補正することができる。また、第三の視野は第二の視野より広いので、第一の視野から見える範囲が第二の視野の範囲から逸脱する可能性が低くなり、補正によりさらなる違和感が発生するのが抑えられる。   The video correction unit 3 is, for example, a region corresponding to a new first field of view (new field of view to be displayed) calculated after the start of generation of this image among the images of the third field of view (field of view to be drawn). Can be corrected to become a display image. Thereby, even if the image generation is delayed with respect to the change in the visual field, the video can be corrected so as to correspond to the change in the visual field. Further, since the third field of view is wider than the second field of view, the possibility that the range visible from the first field of view deviates from the range of the second field of view is reduced, and the occurrence of further discomfort due to correction can be suppressed.

より具体的には、映像補正部3は、第二の視野から第一の視野への変化の量および方向に応じて、生成された映像の表示位置を移動させる補正を実行することもできる。このように表示位置を移動させる補正により、簡単な処理で高速に補正をすることが可能になる。   More specifically, the video correction unit 3 can also perform correction for moving the display position of the generated video in accordance with the amount and direction of change from the second visual field to the first visual field. By correcting the display position in this way, it is possible to correct at high speed with a simple process.

なお、第二の視野から第一の視野へ視野が変化すると、第一の視野から見える範囲が第二の視野の範囲から逸脱する。このように、第一の視野から見える範囲が第二の視野の範囲から逸脱している場合、第二の視野を描画した映像を補正すると未描画部分が発生する。そこで、本実施形態では、第二の視野を第一の視野の範囲が含まれるように調整した第三の視野(描画すべき視野)を描画視野算出部1において求め、映像生成部2では第三の視野の映像を生成する構成となっている。   Note that when the visual field changes from the second visual field to the first visual field, the range visible from the first visual field deviates from the range of the second visual field. As described above, when the range visible from the first visual field deviates from the range of the second visual field, an undrawn portion is generated when an image in which the second visual field is drawn is corrected. Therefore, in the present embodiment, the drawing field calculation unit 1 obtains a third field of view (field to be drawn) in which the second field of view is adjusted to include the range of the first field of view, and the image generation unit 2 performs the first field of view. It is configured to generate images with three fields of view.

なお、第三の視野を求めるタイミングから見ると第一の視野は将来のものであるため、確実に第一の視野が含まれるように第三の視野を決定することは難しい。また、映像生成の負荷を抑える観点からは、第三の視野は極力狭くすることが望ましい。そこで、シミュレーション10が応用されるシミュレーションシステムの傾向などに基づいて、第二の視野を基準に第三の視野を算出する方法をあらかじめ決めておくことができる。例えば、ドライビングシミュレータのように視野が上下方向に動くことが少ないシステムにおいては、第二の視野の画角を主に横方向に拡張して第三の視野を求めるように決めておくことができる。さらに、視野の横方向の動きの最大値を見積もることにより、必要な横方向画角の拡張量も決めておくことができる。なお、第三の視野の、第二の視野に対する拡張方向および拡張量を、ユーザからの入力に基づいて更新することが可能な構成にすることもできる。   Note that since the first field of view is the future when viewed from the timing of obtaining the third field of view, it is difficult to determine the third field of view so that the first field of view is surely included. Further, from the viewpoint of suppressing the load of image generation, it is desirable to make the third field of view as narrow as possible. Therefore, based on the tendency of the simulation system to which the simulation 10 is applied, a method for calculating the third visual field based on the second visual field can be determined in advance. For example, in a system such as a driving simulator where the visual field rarely moves in the vertical direction, the field of view of the second visual field can be mainly expanded in the horizontal direction to determine the third visual field. . Further, by estimating the maximum value of the horizontal movement of the visual field, the necessary amount of expansion of the horizontal angle of view can be determined. In addition, it can also be set as the structure which can update the expansion direction and expansion amount with respect to a 2nd visual field of a 3rd visual field based on the input from a user.

また、第二の視野と第三の視野の関係を固定にした場合、実際に視野が動いた方向以外については描画が無駄になる可能性が高い。そこで、描画視野算出部1は、表示すべき視野(第一の視野または第二の視野)の履歴から、映像補正時点における表示すべき視野(第一の視野)を予測し、予測した視野を含むように第三の視野を求めることで、描画の無駄を抑えることができる。例えば、上記の視野の横方向の動きの最大値は、第一の視野の履歴および/または映像生成部2による映像生成時間の履歴を基に見積もることができる。   Further, when the relationship between the second visual field and the third visual field is fixed, there is a high possibility that the drawing is wasted except in the direction in which the visual field actually moves. Therefore, the drawing visual field calculation unit 1 predicts the visual field to be displayed (first visual field) at the time of video correction from the history of the visual field to be displayed (first visual field or second visual field), and determines the predicted visual field. By obtaining the third visual field so as to include it, it is possible to suppress the waste of drawing. For example, the maximum value of the lateral movement of the visual field can be estimated based on the history of the first visual field and / or the history of the video generation time by the video generation unit 2.

[シミュレーション装置の変形例]
図2は、第1の実施形態にかかるシミュレーション装置(模擬映像生成装置)の構成の変形例を示す機能ブロック図である。図2において、図1と同じ機能ブロックには同じ番号を付している。図2に示すシミュレーション装置10aは、図1のシミュレーション装置10の構成に加えて、第二の映像生成部11と、合成部9をさらに備える。映像生成部11は、第一の映像生成部2による映像の生成開始後にシミュレーション部5で計算された新たな表示すべき視野を基に、当該新たな表示すべき視野における仮想世界の一部の映像を生成する。合成部9は、映像補正3により補正された映像と、第二の映像生成部11により生成された映像とを合成する。表示部4は、合成部9で合成された映像を出力する。
[Modification of simulation apparatus]
FIG. 2 is a functional block diagram illustrating a modified example of the configuration of the simulation apparatus (simulated video generation apparatus) according to the first embodiment. In FIG. 2, the same functional blocks as those in FIG. The simulation apparatus 10a shown in FIG. 2 further includes a second video generation unit 11 and a synthesis unit 9 in addition to the configuration of the simulation apparatus 10 of FIG. Based on the new field of view to be displayed calculated by the simulation unit 5 after starting the generation of the image by the first image generating unit 2, the image generating unit 11 is a part of the virtual world in the new field of view to be displayed. Generate video. The synthesizing unit 9 synthesizes the video corrected by the video correction 3 and the video generated by the second video generating unit 11. The display unit 4 outputs the video synthesized by the synthesis unit 9.

この構成により、仮想世界の映像を、補正を行う部分と行わない部分を分けて描画し、一方を補正した後に合成を行うことができる。そのため、仮想世界におけるユーザの視野(カメラ)の動きに対する変化度合いが異なる部分を含む映像に対して、変化度合いの高い部分のみ補正して、時間遅れによる違和感を低減することができる。   According to this configuration, it is possible to draw a virtual world image by dividing a portion to be corrected and a portion not to be corrected, and then combining after correcting one. For this reason, it is possible to correct only a portion having a high degree of change with respect to an image including a portion having a different change degree with respect to the motion of the user's field of view (camera) in the virtual world, thereby reducing a sense of incongruity due to time delay.

例えば、ドライビングシミュレータにおける自車の車体の映像は、カメラ(ドライバ視野)に対して外界の映像とは異なる動きをする。このように視野に対して異なる動きをする部分がある場合には、補正によって外界と一緒に車体の映像を補正により動かしてしまうと却って違和感が増すことがある。そのため、このような場合は、外界の部分の映像は、第一の映像生成部2で生成して、生成された映像を、映像補正部3が、映像生成後の表示すべき視野に対応するように補正することができる。そして、車体の部分の映像は、映像生成後の表示すべき視野に対応するように、第二の映像生成部11が生成することができる。   For example, the image of the vehicle body of the vehicle in the driving simulator moves differently from the image of the outside world with respect to the camera (driver view). When there is a portion that moves differently with respect to the field of view, the sense of incongruity may increase if the image of the vehicle body is moved together with the outside world by correction. Therefore, in such a case, the video of the external part is generated by the first video generation unit 2, and the generated video corresponds to the visual field to be displayed after the video correction unit 3 generates the video. Can be corrected as follows. Then, the video of the vehicle body part can be generated by the second video generation unit 11 so as to correspond to the visual field to be displayed after the video generation.

具体的には、シミュレーション部5は、上記図1の場合と同様に、入力部6で受けたユーザからの操作入力に応じて、仮想世界のデータを更新する。その結果、仮想世界内部における表示すべき視野の情報(例えば、位置、向き、画角、投影パラメータ等)も更新される。描画視野算出部1は、上記図1の場合と同様に、表示すべき視野を基に、第一の映像生成部2で描画すべき視野を計算する。   Specifically, the simulation unit 5 updates the virtual world data in accordance with the operation input from the user received by the input unit 6 as in the case of FIG. As a result, information on the visual field to be displayed in the virtual world (for example, position, orientation, angle of view, projection parameters, etc.) is also updated. The drawing visual field calculation unit 1 calculates the visual field to be drawn by the first video generation unit 2 based on the visual field to be displayed as in the case of FIG.

第一の映像生成部2は、入力された描画すべき視野を用いて仮想世界のあらかじめ選択された一部の対象の映像を生成する。例えば、第一の映像生成部2は、メモリ等に予め記録された、対象とするオブジェクトを示すデータを参照し、映像を生成する対象の仮想世界におけるオブジェクトを選択することができる。生成された映像は、映像補正部3に送られる。   The first video generation unit 2 generates a video of a part of a pre-selected target in the virtual world using the input visual field to be drawn. For example, the first video generation unit 2 can select an object in a target virtual world for generating a video by referring to data indicating a target object recorded in advance in a memory or the like. The generated video is sent to the video correction unit 3.

第一の映像生成部2が映像の生成を開始した時点における表示すべき視野と描画すべき視野は、それぞれ表示視野保持部8と描画視野保持部7によって、生成される映像と関連付けて保持される。   The visual field to be displayed and the visual field to be drawn when the first video generation unit 2 starts generating the video are held in association with the generated video by the display visual field holding unit 8 and the drawing visual field holding unit 7, respectively. The

映像補正部3は第一の映像生成部2によって生成された映像を入力し、そのタイミングにおける表示すべき視野をシミュレーション部5から入力し、入力した映像に関連付けられた表示すべき視野と描画すべき視野をそれぞれ表示視野保持部8と描画視野保持部7から読み出す。そして、これら三つの視野を用いて入力された映像の補正を行い、補正した映像を合成部9に送る。補正は、上記図1の場合と同様にすることができる。   The video correction unit 3 inputs the video generated by the first video generation unit 2, inputs the visual field to be displayed at the timing from the simulation unit 5, and draws the visual field to be displayed associated with the input video. The visual field to be read is read from the display visual field holding unit 8 and the drawing visual field holding unit 7, respectively. Then, the input video is corrected using these three fields of view, and the corrected video is sent to the combining unit 9. The correction can be performed in the same manner as in FIG.

第二の映像生成部11は、表示すべき視野に応じて仮想世界のあらかじめ選択された一部の対象(補正の対象としないもの)の映像を生成し、合成部9に送る。この仮想世界において補正の対象としないものを特定するデータも、予めメモリ等に記録しておくことができる。第二の映像生成部11は、予め記録されたデータを参照して、仮想世界における映像を生成する対象を特定することができる。   The second video generation unit 11 generates a video of a part of objects selected in advance in the virtual world (those not to be corrected) according to the field of view to be displayed, and sends the video to the synthesis unit 9. Data for specifying what is not to be corrected in this virtual world can also be recorded in advance in a memory or the like. The second video generation unit 11 can specify a target for generating a video in the virtual world with reference to data recorded in advance.

合成部9は、映像補正部3、および第二の映像生成部11からの映像を合成し、表示部4に送る。合成は、例えば、二つの映像をあらかじめ決めておいた順番で重ね合わせることで行うことができる。それぞれの映像において、視野の中の対象が写っていない部分については透明としておいてもよい。   The combining unit 9 combines the images from the image correction unit 3 and the second image generation unit 11 and sends them to the display unit 4. The composition can be performed, for example, by superimposing two images in a predetermined order. In each image, the portion of the field of view where the object is not shown may be transparent.

上記のシミュレーション装置10、10aでは、現在の視野と映像生成の開始時点における視野についての情報を用いて、遅延時間分だけ古い映像を補正し、現在の視野についての近似映像を求める構成である。これにより、操作入力に対する映像の応答性を擬似的に向上し、遅れに起因する違和感を低減可能としている。さらに、映像生成時に表示すべき視野より広い描画視野を算出する構成なので、補正された近似映像でさらに違和感が生じることを抑えること可能になる。   The simulation apparatuses 10 and 10a are configured to correct an old image by a delay time and obtain an approximate image for the current visual field using information about the current visual field and the visual field at the start of image generation. Thereby, the responsiveness of the video with respect to the operation input is improved in a pseudo manner, and the uncomfortable feeling caused by the delay can be reduced. Furthermore, since the drawing visual field wider than the visual field to be displayed at the time of generating the video is calculated, it is possible to further suppress a sense of incongruity in the corrected approximate video.

シミュレーション装置10、10aは、例えば、パーソナルコンピュータやサーバマシン等の汎用コンピュータに所定のプログラムをインストールすることによって実現することができる。また、汎用コンピュータに限らず、例えば、携帯型ゲーム機端末、車載情報端末、携帯電話、PDA(Personal Digital Assistant)、家電製品等の電子機器に組み込まれたコンピュータによってシミュレーション装置10、10aが形成されてもよい。   The simulation apparatuses 10 and 10a can be realized by installing a predetermined program in a general-purpose computer such as a personal computer or a server machine, for example. In addition, the simulation apparatuses 10 and 10a are formed by a computer incorporated in an electronic device such as a portable game machine terminal, an in-vehicle information terminal, a mobile phone, a PDA (Personal Digital Assistant), and a home appliance, for example. May be.

また、シミュレーション装置10、10aの持つ機能を複数のコンピュータに分散させることで、複数のコンピュータでシミュレーション装置10、10aを構成することもできる。例えば、ネットワークを介して接続された複数の汎用コンピュータにシミュレーション装置10、10aの機能を分散させてよい。あるいは、バスで接続されたCPUとDSP(Digital Signal Processor)によって、シミュレーション装置10、10aを構成することもできる。   In addition, by distributing the functions of the simulation apparatuses 10 and 10a to a plurality of computers, the simulation apparatuses 10 and 10a can be configured by a plurality of computers. For example, the functions of the simulation apparatuses 10 and 10a may be distributed to a plurality of general-purpose computers connected via a network. Alternatively, the simulation apparatuses 10 and 10a can be configured by a CPU and a DSP (Digital Signal Processor) connected by a bus.

上記の描画視野算出部1、映像生成部2、映像補正部3、表示部4、シミュレーション部5、第一の映像生成部2、第二の映像生成部11、合成部9および入力部6の各機能は、CPUまたはDSP(Digital Signal Processor)等のプロセッサが所定のプログラムを実行することによって実現される。したがって、上記の各機能をコンピュータで実現するためのプログラムまたはそれを記録した記録媒体も本発明の一実施態様である。この記録媒体は、一時的でない(non−transitory)記録媒体であり、信号のように一時的な媒体は含まない。また、描画視野保持部7、表示視野保持部8およびその他必要なデータを記録する手段は、コンピュータの内蔵記憶装置(例えば、ROM、RAM等のメモリ)またはこのコンピュータからアクセス可能な記憶装置によって具現化される。これらのことは、下記第2の実施形態における各機能部についても同様である。   The drawing visual field calculation unit 1, the video generation unit 2, the video correction unit 3, the display unit 4, the simulation unit 5, the first video generation unit 2, the second video generation unit 11, the synthesis unit 9, and the input unit 6. Each function is realized by a processor such as a CPU or a DSP (Digital Signal Processor) executing a predetermined program. Therefore, a program for realizing the above functions by a computer or a recording medium on which the program is recorded is also an embodiment of the present invention. This recording medium is a non-transitory recording medium and does not include a temporary medium like a signal. The drawing visual field holding unit 7, the display visual field holding unit 8, and other means for recording necessary data are realized by a built-in storage device of a computer (for example, a memory such as a ROM or a RAM) or a storage device accessible from the computer. It becomes. The same applies to each functional unit in the second embodiment described below.

[第2の実施形態]
図3は、第2の実施形態におけるシミュレーションシステムの構成例を示す機能ブロック図である。図3に示すシミュレーションシステムは、サーバ装置の一例であるシミュレータサーバ12(以下、単にサーバ12と称する)およびクライアント装置の一例であるシミュレータクライアント13(以下、単にクライアント13と称する)を含む。サーバ12とクライアント13は、互いに通信可能となっている。この通信は、有線通信のみに限らず、無線通信が含まれていてもよい。
[Second Embodiment]
FIG. 3 is a functional block diagram illustrating a configuration example of the simulation system according to the second embodiment. The simulation system shown in FIG. 3 includes a simulator server 12 (hereinafter simply referred to as server 12) that is an example of a server device and a simulator client 13 (hereinafter simply referred to as client 13) that is an example of a client device. The server 12 and the client 13 can communicate with each other. This communication is not limited to wired communication but may include wireless communication.

サーバ12は、シミュレーション部5、描画視野算出部1、映像生成部2を備える。シミュレーション部5は、ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算する。視野算出部1は、前記表示すべき視野より広い視野である、描画すべき視野を計算する。映像生成部2は、描画すべき視野の映像を、仮想世界を表すデータを基に生成する。これら、シミュレーション部5、描画視野算出部1、映像生成部2の機能は、上記第1の実施形態と同様にすることができる。   The server 12 includes a simulation unit 5, a drawing visual field calculation unit 1, and a video generation unit 2. The simulation unit 5 updates the data representing the virtual world according to the operation input from the user or the passage of time, and calculates the visual field to be displayed in the virtual world. The visual field calculation unit 1 calculates a visual field to be drawn, which is a wider visual field than the visual field to be displayed. The video generation unit 2 generates a visual field image to be drawn based on data representing a virtual world. The functions of the simulation unit 5, the drawing visual field calculation unit 1, and the video generation unit 2 can be the same as those in the first embodiment.

サーバ12は、さらに、映像生成部2が生成した映像と、この映像の描画すべき視野の基となった表示すべき視野と、この映像の生成開始後に計算された新たな表示すべき視野とをクライアント13へ送信する送信部として、描画結果送信部18および視野送信部16を備える。   The server 12 further includes a video generated by the video generation unit 2, a visual field to be displayed based on a visual field on which the video is to be drawn, and a new visual field to be displayed calculated after the generation of the video is started. As a transmission unit that transmits to the client 13, a drawing result transmission unit 18 and a visual field transmission unit 16 are provided.

クライアント13は、サーバ12の送信部から送られてきた映像と、この映像の生成開始後に計算された新たな表示すべき視野とを用いて、この映像を、新たな表示すべき視野に対応する映像に補正する映像補正部3を備える。   The client 13 uses the video sent from the transmission unit of the server 12 and the new field of view to be displayed calculated after the start of the generation of the video, and this video corresponds to the new field of view to be displayed. A video correction unit 3 for correcting the video is provided.

このように、サーバ12に、シミュレーション部5、映像生成部2、送信部(描画結果送信部18および視野送信部16)を設け、クライアント13に映像補正部3を設ける構成により、シミュレーションの映像生成および通信による遅延を原因とする映像の違和感を低減することができる。その結果、サーバ12による複雑なシーンの描画や、素早いレスポンスを必要とするアプリケーションを、ネットワークを介してクライアント13から利用可能することが可能になる。   As described above, the simulation unit 5, the video generation unit 2, and the transmission unit (the drawing result transmission unit 18 and the visual field transmission unit 16) are provided in the server 12, and the video correction unit 3 is provided in the client 13. In addition, it is possible to reduce the uncomfortable feeling of the video due to the delay due to communication. As a result, it is possible to use the client 13 via the network for drawing complicated scenes by the server 12 and for applications that require a quick response.

図3に示す構成のシミュレーションシステムは、例えば、複数のクライアントから入力をサーバ受け付けてシミュレーション結果をクライアントへ返す業務用のシミュレーション装置や、ネットワークゲームに用いることができる。シミュレーションの用途や対象は特に限定されない。   The simulation system having the configuration shown in FIG. 3 can be used in, for example, a business simulation apparatus that receives inputs from a plurality of clients and returns simulation results to the client, or a network game. The use and object of the simulation are not particularly limited.

[シミュレーションの例]
図3に示す例では、クライアント13が、ユーザから操作入力を受け付ける入力部6と、操作入力をサーバ12へ送信する操作入力送信部24を備える。
[Example of simulation]
In the example illustrated in FIG. 3, the client 13 includes an input unit 6 that receives an operation input from a user, and an operation input transmission unit 24 that transmits the operation input to the server 12.

一例として、クライアント13にはハンドルやペダルなどに接続された入力部6と、ディスプレイ等の表示部4が備えられる。ユーザはディスプレイに表示される映像を見ながら、ハンドルなどの入力装置を操作し、仮想世界の中でドライビングを行うことができる。   As an example, the client 13 includes an input unit 6 connected to a handle or a pedal, and a display unit 4 such as a display. The user can drive in the virtual world by operating an input device such as a handle while watching the video displayed on the display.

クライアント13で入力された入力情報は、例えば、ネットワークを通じて送信され、サーバ12の操作入力受信部14で受信されてシミュレーション部5に送られる。入力情報はデータ量が小さいため、無視できる程度の小さな遅延で送ることができる。   The input information input by the client 13 is transmitted through a network, for example, received by the operation input receiving unit 14 of the server 12, and sent to the simulation unit 5. Since the input information has a small amount of data, it can be sent with a negligible delay.

シミュレーション部5は、一例として、仮想世界を構成する道路や車両、街並み等オブジェクトのデータをシミュレーション用データとして保持する。シミュレーション用データは、例えば、サーバ12内蔵メモリまたはアクセス可能なメモリに記録される。シミュレーション部5は、入力情報に基づいて各オブジェクトの挙動についてのシミュレーションを行って、仮想世界を表すシミュレーション用データをリアルタイムに更新する。更新の結果、例えば、仮想世界のオブジェクトの位置・姿勢や属性(色・テクスチャなど)が変更される。シミュレーションは通常、映像生成に比べて軽い処理であり、例えば、数ミリ〜数十ミリ秒周期の高い頻度で実行される。   As an example, the simulation unit 5 holds data of objects such as roads, vehicles, and cityscapes that make up the virtual world as simulation data. The simulation data is recorded, for example, in the server 12 built-in memory or accessible memory. The simulation unit 5 performs a simulation on the behavior of each object based on the input information, and updates the simulation data representing the virtual world in real time. As a result of the update, for example, the position / posture and attributes (color, texture, etc.) of the object in the virtual world are changed. The simulation is usually lighter processing than video generation, and is executed at a high frequency of, for example, a period of several milliseconds to several tens of milliseconds.

シミュレーションの結果、仮想世界を表示するのに用いられる視野の情報(例えば、位置、姿勢、画角、投影方法とそのパラメータ)が決定する。例えば、ドライビングシミュレータの場合、視野は通常、仮想の車の運転席に乗っている仮想のドライバの視点に固定されるので、車の位置や姿勢が更新されるとそれに応じて表示すべき視野も更新される。視点(カメラ)は必要に応じて、車の他の場所や他の車、あるいは路上のオブジェクトや建物など、任意の場所に置くことができる。   As a result of the simulation, information on the visual field (for example, position, orientation, angle of view, projection method and parameters thereof) used to display the virtual world is determined. For example, in the case of a driving simulator, the field of view is usually fixed to the viewpoint of the virtual driver in the driver's seat of the virtual car, so when the position and posture of the car are updated, the field of view to be displayed accordingly Updated. The viewpoint (camera) can be placed at any place such as another place of the car, another car, or an object or building on the road as required.

このようにして、シミュレーション部5が表示すべき視野を更新すると、描画視野算出部1が、表示すべき視野に基づいて映像生成部2で描画すべき視野を算出する。視野送信部16は、シミュレーション部5が表示すべき視野を更新する度に、リアルタイムで更新された表示すべき視野をクライアント13へ送信することが好ましい。これにより、クライアント13の映像補正部3が、古い映像を更新された新たな表示すべき視野に対応させる補正が可能になる。   Thus, when the visual field to be displayed by the simulation unit 5 is updated, the drawing visual field calculation unit 1 calculates the visual field to be drawn by the video generation unit 2 based on the visual field to be displayed. It is preferable that the visual field transmission unit 16 transmits the visual field to be displayed updated in real time to the client 13 every time the visual field to be displayed by the simulation unit 5 is updated. As a result, the video correction unit 3 of the client 13 can correct the old video corresponding to the updated field of view to be displayed.

[並列描画の例]
映像生成部2は、図3に示すように、複数のフレームを並列に描画する複数の描画部を備える構成であってもよい。本実施形態では、一例として、映像生成部2は、並行して描画(映像生成)処理を実行することができる複数の描画部22a、22b、22cと、描画視野算出部1が算出した描画すべき視野を、これらの複数の描画部22a、22b、22cに渡して、描画すべき視野の映像を生成する処理を実行させる並列描画制御部21、複数の描画部22a、22b、22cそれぞれを監視し、それぞれで生成された映像を、表示すべき視野および描画すべき視野とともに受け取る並列描画統合部23とを含む。この構成により、例えば、並列に接続された描画部22a、22b、22cに順番にフレームを割り当てて時間差で並列に描画を行うことができる。いわゆる交互フレーム描画方式で描画することができる。
[Example of parallel drawing]
As shown in FIG. 3, the video generation unit 2 may include a plurality of drawing units that draw a plurality of frames in parallel. In the present embodiment, as an example, the video generation unit 2 draws a plurality of drawing units 22 a, 22 b, and 22 c that can execute drawing (video generation) processing in parallel and the drawing visual field calculation unit 1 calculates. The visual field of view should be transferred to the plurality of drawing units 22a, 22b, and 22c, and the parallel drawing control unit 21 that executes processing for generating the video of the visual field to be drawn, and the drawing units 22a, 22b, and 22c, respectively. And a parallel drawing integration unit 23 for receiving the generated video together with the visual field to be displayed and the visual field to be drawn. With this configuration, for example, frames can be sequentially assigned to the drawing units 22a, 22b, and 22c connected in parallel, and drawing can be performed in parallel with a time difference. Drawing can be performed by a so-called alternate frame drawing method.

具体的には、サーバ12の映像生成部2(並列描画部と称することもできる)は、下記のように、描画視野算出部1が求めた描画すべき視野に従って仮想世界の映像を生成する。例えば、映像のフレーム毎に描画部22a、22b、22cのいずれかを割り当てて並列に描画を実行することができる。これにより、高速に映像が生成される。各描画部22a、22b、22cは、メモリの描画データ(例えば、仮想世界を構成するオブジェクトのモデルデータやテクスチャデータ)に、シミュレーション部5から送られる仮想世界の更新情報を加味したものを用いて仮想世界の映像を生成することができる。このように、フレーム単位で描画部を割り当てる場合、単一の描画部で描画を行うのに比べて、単位時間当たりに生成できるフレーム数を描画部の数倍(図3に示す例では3倍)に向上することができる。すなわち、フレームレートは、用意した計算機(描画部)の台数倍にまで向上することができる。   Specifically, the video generation unit 2 (also referred to as a parallel drawing unit) of the server 12 generates a virtual world video according to the visual field to be drawn obtained by the drawing visual field calculation unit 1 as described below. For example, one of the drawing units 22a, 22b, and 22c can be assigned to each video frame to perform drawing in parallel. Thereby, a video is generated at high speed. Each of the drawing units 22a, 22b, and 22c uses memory drawing data (for example, model data and texture data of an object constituting the virtual world) that is added with virtual world update information sent from the simulation unit 5. It is possible to generate a video of the virtual world. In this way, when assigning drawing units in units of frames, the number of frames that can be generated per unit time is several times as many as the drawing units (three times in the example shown in FIG. 3) compared to drawing in a single drawing unit. ) Can be improved. That is, the frame rate can be increased to the number of prepared computers (drawing units).

ただし、一つのフレームを描画するのにかかる時間は単一の場合と変わりがない。そのため、フレームレートは向上しても、表示すべき視野の情報が映像生成部2へ入力されてから映像が出力されるまでの遅延は単一の描画部の場合と変わらない。この遅延による影響は、描画視野算出部1およびクライアント13の映像補正部3を含む機能により低減することができる。   However, the time taken to draw one frame is the same as that for a single frame. Therefore, even if the frame rate is improved, the delay from the input of the visual field information to be displayed to the video generation unit 2 until the video is output is the same as in the case of a single drawing unit. The influence of this delay can be reduced by a function including the drawing visual field calculation unit 1 and the video correction unit 3 of the client 13.

並列描画制御部21は、各描画部22a、22b、22cの実行状態を監視する。前のフレームの描画が完了した描画部があれば、シミュレーション部5から仮想世界の更新情報と表示すべき視野とを受け取り、描画視野算出部1から描画すべき視野の情報を受け取ってその描画部に渡し、次の映像の生成を実行させる。これにより、全ての描画部が常に並行して映像の生成を行っている状態になる。各描画部は、受け取った表示すべき視野と描画すべき視野とを、映像生成を行っている間、記憶する。   The parallel drawing control unit 21 monitors the execution state of each drawing unit 22a, 22b, 22c. If there is a drawing unit that has finished drawing the previous frame, the virtual unit receives update information of the virtual world and the visual field to be displayed from the simulation unit 5, receives information on the visual field to be drawn from the drawing visual field calculation unit 1, and receives the drawing unit. To generate the next video. As a result, all the drawing units are always in a state of generating images in parallel. Each drawing unit stores the received field of view to be displayed and field of view to be drawn during image generation.

並列描画統合部23は、各描画部の実行状態を監視し、フレームの描画が完了した描画部があればその描画部から、描画されたフレームの映像と、表示すべき視野および描画すべき視野を受け取る。描画されたフレーム映像は、映像エンコーダ17に渡される。これにより、描画部22a、22b、22cそれぞれによって時間差をもって並列描画されたフレームの映像が順次映像エンコーダ17へ送られる。   The parallel drawing integration unit 23 monitors the execution state of each drawing unit, and if there is a drawing unit that has finished drawing the frame, the drawing unit displays the video of the drawn frame, the field of view to be displayed, and the field of view to be drawn. Receive. The drawn frame video is passed to the video encoder 17. As a result, the images of the frames drawn in parallel by the drawing units 22a, 22b, and 22c with a time difference are sequentially sent to the video encoder 17.

なお、上記の映像生成部2においては、描画用計算機として3台の描画部を有しているが、描画用計算機の台数は、求められるピーク性能に合わせて変えることができる。しかし、描画用計算機の台数をピーク性能に合わせると、描画用計算機を含む装置全体が大規模化し、かつ、ピーク性能が不要な場合の無駄が大きくなる傾向にある。そのため、複数の描画用計算機をネットワーク経由で共有利用できる構成にすることができる。例えば、本実施形態のように、複数の描画部で並列処理された映像を外部へ送信し、送信した先で補正をする構成とすることで、並列構成の描画装置による複雑なシーンの描画を必要とするアプリケーションのネットワーク利用が可能になる。また、描画結果の映像をネットワーク経由でクライアントに伝送する際に、さらにコーデックや通信自体における遅延が加算される問題に対しても、本実施形態の構成により対処することができる。   The video generation unit 2 has three drawing units as drawing computers, but the number of drawing computers can be changed in accordance with the required peak performance. However, when the number of drawing computers is matched to the peak performance, the entire apparatus including the drawing computers tends to be large-scale, and waste when peak performance is unnecessary tends to increase. Therefore, it is possible to make a configuration in which a plurality of drawing computers can be shared and used via a network. For example, as in the present embodiment, it is possible to transmit a video processed in parallel by a plurality of rendering units to the outside and perform correction at the transmission destination, thereby rendering a complex scene by a rendering device having a parallel configuration. Necessary application network can be used. The configuration of the present embodiment can also cope with a problem that a delay in a codec or communication itself is added when a rendering result image is transmitted to a client via a network.

[サーバ−クライアント間の通信]
映像生成部2で描画された映像は映像エンコーダ17に送られて圧縮され圧縮映像となる。圧縮映像は、描画結果送信部18において対応する視野情報(表示すべき視野および描画すべき視野)と関連付けられた上で、クライアント13へネットワークを通じて送信される。
[Server-client communication]
The video drawn by the video generation unit 2 is sent to the video encoder 17 and compressed to become a compressed video. The compressed video is transmitted to the client 13 through the network after being associated with the corresponding visual field information (the visual field to be displayed and the visual field to be drawn) in the drawing result transmitting unit 18.

送信された圧縮映像と視野情報はクライアント13の描画結果受信部28によって受信される。映像は映像デコーダ27に送られて伸張される。表示すべき視野と描画すべき視野の視野情報は、映像補正部3へ送られる。映像の圧縮・伸張とネットワーク送信には、例えば、数十〜数百ミリ秒単位の時間を要する。   The transmitted compressed video and visual field information are received by the drawing result receiving unit 28 of the client 13. The video is sent to the video decoder 27 and decompressed. The visual field information of the visual field to be displayed and the visual field to be drawn is sent to the video correction unit 3. Video compression / decompression and network transmission require, for example, several tens to several hundreds of milliseconds.

映像補正部3は、映像を受け取ると、その映像に対応する視野情報、すなわち映像生成開始時の表示すべき視野および描画すべき視野も受け取る。さらにその映像を受けたタイミングにおける新しい表示すべき視野を視野受信部26から受け取る。映像補正部3は、この新しい表示すべき視野を基に、映像の補正を行う。そのタイミング、すなわち映像補正直前時点における表示すべき視野は、シミュレーション部5から視野送信部16、視野受信部26を介して、ネットワーク経由で取得される。この表示すべき視野を示す視野情報はデータ量が小さいため、無視できる程度の小さな遅延で送ることができる。   When receiving the video, the video correction unit 3 also receives visual field information corresponding to the video, that is, a visual field to be displayed and a visual field to be drawn at the start of video generation. Further, a new field of view to be displayed at the timing of receiving the video is received from the field receiver 26. The video correction unit 3 corrects the video based on the new field of view to be displayed. The timing, that is, the visual field to be displayed immediately before the video correction is acquired from the simulation unit 5 via the visual field transmission unit 16 and the visual field reception unit 26 via the network. Since the visual field information indicating the visual field to be displayed has a small amount of data, it can be sent with a negligible delay.

このように、本実施形態では、サーバ12は、クライアント13へ、生成された映像と、映像生成後に更新される可能性のある表示すべき視野とを、それぞれ独立してリアルタイムに送信する仕組みを備える。これにより、クライアント13において、映像生成後にシミュレーション部5で更新された表示すべき視野を用いて、映像を補正することができる。また、サーバ12において、表示すべき視野より広い描画すべき視野を計算し、描画すべき視野の映像を生成することで、クライアント13における補正で新たに違和感が生じることが抑えられる。次に、クライアント13における映像補正部3の補正処理と、サーバ12における描画すべき視野の計算の具体例について説明する。   As described above, in the present embodiment, the server 12 has a mechanism for independently transmitting the generated video and the visual field to be displayed that may be updated after the video generation to the client 13 independently in real time. Prepare. Thereby, the client 13 can correct the video by using the visual field to be displayed which is updated by the simulation unit 5 after the video is generated. Further, the server 12 calculates a field of view to be drawn wider than the field of view to be displayed and generates an image of the field of view to be drawn, so that it is possible to suppress a new sense of incongruity from being corrected by the client 13. Next, a specific example of correction processing of the video correction unit 3 in the client 13 and calculation of the field of view to be drawn in the server 12 will be described.

[映像補正部3による補正処理の具体例]
例えば、ユーザが素早く右方向に視線を動かすことにより、仮想世界において、表示されるべき視野が素早く右にシフトした場合、表示される映像は即座に左方向に流れなければならない。しかし、映像の生成と伝送による遅延がある場合、映像は、視野の動きに対して少し遅れて左方向に流れる。この遅れが映像に対するユーザの違和感となり、VR(バーチャルリアリティ)酔いなどの原因にもなる。
[Specific Example of Correction Processing by Video Correction Unit 3]
For example, if the user quickly moves his / her line of sight to the right and the field of view to be displayed quickly shifts to the right in the virtual world, the displayed image must immediately flow to the left. However, when there is a delay due to the generation and transmission of the video, the video flows to the left with a slight delay with respect to the movement of the visual field. This delay makes the user feel uncomfortable with the video, and causes VR (virtual reality) sickness.

そこで、映像補正部3は、例えば、以下のように、映像の補正処理を実行することができる。映像補正部3は、描画の完了している少し古い映像に対し、現在分かっている視野の動きに合わせて二次元的に映像を動かすという補正を行うことができる。   Therefore, the video correction unit 3 can execute video correction processing as follows, for example. The video correction unit 3 can perform correction such that the video is moved in a two-dimensional manner in accordance with the motion of the field of view that is currently known with respect to a slightly old video that has been drawn.

ここで、図4Aおよび図4Bを参照して映像の補正例を説明する。図4Aは、時刻t=TNおよび時刻t=TN-nにおける仮想世界の車の位置および視野の一例を示す図である。図4Bは、時刻t=TNにおける表示すべき視野の映像、および時刻t=TN-nにいて補正された映像の一例を示す図である。図4Aに示す例では、線D1と線D2の間が道路であり、道路の脇にはオブジェクトの一例である建物Cがある。車Kは、建物に対して斜め右方向へ進んでいる。車Kの視野は点線で示されており、この視野が表示すべき視野となる。ここでは、映像生成部2が、時刻TN-nにおける表示すべき視野に基づいて映像の生成を開始し、図4Bの上段に示す映像を生成する。その後、映像補正部3が時刻TNにおいて、この映像と、時刻TNにおける表示すべき視野を受け取って、補正を実行する。この例の場合、映像補正部3は、左方向への映像を平行移動する。このように、映像補正部3は、時刻TN-nにおける表示すべき視野から、時刻TNにおける表示すべき視野への視野の変化の量および方向に応じて、映像の表示領域を移動させることができる。このときの映像の移動方向および移動距離の計算例については後述する。 Here, an example of video correction will be described with reference to FIGS. 4A and 4B. FIG. 4A is a diagram illustrating an example of the position and field of view of a car in the virtual world at time t = T N and time t = T Nn . FIG. 4B is a diagram showing an example of a visual field image to be displayed at time t = T N and a video image corrected at time t = T Nn . In the example illustrated in FIG. 4A, a road is between the lines D1 and D2, and a building C, which is an example of an object, is located on the side of the road. The car K is proceeding diagonally to the right with respect to the building. The field of view of the car K is indicated by a dotted line, and this field of view is the field of view to be displayed. Here, the video production | generation part 2 starts the production | generation of an image | video based on the visual field which should be displayed in time TNn , and produces | generates the video shown in the upper stage of FIG. 4B. Thereafter, the image correction unit 3 at a time T N, and the video, received a field to be displayed at the time T N, executes the correction. In this example, the image correction unit 3 translates the image in the left direction. As described above, the video correction unit 3 can move the video display area in accordance with the amount and direction of the change in the visual field from the visual field to be displayed at time T Nn to the visual field to be displayed at time T N. it can. A calculation example of the moving direction and moving distance of the video at this time will be described later.

この映像の平行移動により、仮想世界での視線を右へ動かす操作入力に対し、見かけ上映像の遅延が隠蔽されて、映像が即座に応答して左方向へ流れる。そのため、応答性に関する違和感が大きく軽減される。なお、映像を平行移動しただけの補正の場合、映像の内容は本来あるべき映像と若干異なる。しかし、視野の動きが大きい場合には、映像の内容のズレよりも映像全体の動きのズレによる違和感の方が支配的であるため、このように映像を平行移動するだけの補正でも、違和感の低減効果を得ることができる。   Due to the parallel movement of the image, the delay of the image is apparently concealed with respect to the operation input for moving the line of sight in the virtual world to the right, and the image immediately responds and flows to the left. Therefore, the uncomfortable feeling related to responsiveness is greatly reduced. Note that in the case of correction only by translating the video, the content of the video is slightly different from the video that should be originally. However, when the field of view is large, the sense of incongruity due to the displacement of the entire image is more dominant than the difference in the content of the image. A reduction effect can be obtained.

映像補正の方法は視線方向の変化に応じた映像の平行移動に限らない。視点のさまざまな動き方に対応して、平行移動、拡大縮小、回転、アフィン変換などを行うこともできる。なお、映像補正によって新たに大きな遅延が発生しては意味がないので、映像の補正はなるべく簡便であることが望ましい。以下に、視野の変化に応じた映像補正の具体例を説明する。   The image correction method is not limited to the parallel movement of the image according to the change in the viewing direction. Corresponding to various viewpoint movements, translation, enlargement / reduction, rotation, affine transformation, etc. can be performed. Note that it is meaningless if a new large delay is caused by the video correction, so it is desirable that the video correction be as simple as possible. Hereinafter, a specific example of the image correction according to the change of the visual field will be described.

(視野回転に対応する映像補正)
ここで、描画結果受信部28から送られる表示すべき視野(古い視野)に対応する時刻(ここでは、一例として映像生成開始時の時刻)をTN-n、視野受信部26から送られる表示すべき視野(新しい視野)に対応する時刻をTNとする。時刻TNは、映像生成開始後の時刻であり、例えば、ほぼ現在時刻とすることができる。
(Image correction corresponding to visual field rotation)
Here, the time corresponding to the visual field (the old field) to be displayed is sent from the rendering result receiving unit 28 (in this case, the time at the image generation start as an example) to be displayed is sent to T Nn, from view receiver 26 Let T N be the time corresponding to the field of view (new field of view). The time T N is a time after the start of video generation, and can be almost the current time, for example.

視野の回転運動に着目すると、時刻TN-nおよび時刻TNにおける視野の視線方向ベクトル(視点から視野の中心へ向かうベクトル)の差を、TN-nにおける視点位置を基準にしたパン(垂直軸周りの左右回転)、ティルト(左右軸(水平軸)周りの上下回転)、ロール(視線方向ベクトル周りの回転)に分解することができる。それぞれの回転角度を、θpan、θtilt、θrollとする。 Focusing on the rotational movement of the field of view, the difference between times T Nn and time T field in the N line of sight vector (vector directed from the point of view to the center of the field of view), the pan relative to the viewpoint position in the T Nn (about the vertical axis Left and right rotation), tilt (up and down rotation around the left and right axis (horizontal axis)), and roll (rotation around the line-of-sight direction vector). Respective rotation angles are θ pan , θ tilt , and θ roll .

ここで、視野の横方向(水平方向)の画角をφfovH、映像の幅をWピクセルとし、視線方向ベクトルが水平方向にθpan回転した場合を考える。この場合、視野中心付近にあるオブジェクトは映像の中で、例えば、下記式(1)で表されるピクセル数DHだけ横方向に移動する。 Here, let us consider a case where the field angle in the horizontal direction (horizontal direction) of the field of view is φ fovH , the video width is W pixels, and the line-of-sight direction vector is rotated by θ pan in the horizontal direction. In this case, the object near the center of the visual field moves in the horizontal direction by the number of pixels D H represented by the following formula (1) in the video, for example.

Figure 0005652037
図5Aは、時刻TNにおける視線方向ベクトルおよび視野と映像の関係、および映像の一例を示す図である。図5Aの上側は、映像の投影面に垂直な面における視線方向と視野の一例を表す図である。図5Aの下側は、時刻TNにおける映像の例を示す。図5Bは、時刻TN-nにおける視線方向ベクトルと平行移動された映像の関係、および平行移動された映像の一例を示す図である。図5Aに示す映像は、視線ベクトルの水平方向の回転によって、図5Bに示すように、視線ベクトルの移動方向と逆方向へ、視線ベクトルの移動量に対応する映像上の長さ(DHピクセル)だけ平行移動される。すなわち、視線ベクトルが垂直軸を中心に時計周りにθpanだけ回転すると、映像の投影面において表示するべき範囲は、線S1で挟まれた範囲から点線S2で挟まれた範囲にずれる。映像補正部3は、このずれにあわせて、映像を平行移動させることができる。
Figure 0005652037
FIG. 5A is a diagram illustrating an example of the visual line direction vector and the relationship between the visual field and the video at time T N and the video. The upper side of FIG. 5A is a diagram illustrating an example of the line-of-sight direction and the visual field in a plane perpendicular to the projection plane of the video. The lower side of FIG. 5A shows an example of an image at time TN . FIG. 5B is a diagram illustrating an example of the relationship between the line-of-sight direction vector and the translated image at time T Nn and an example of the translated image. As shown in FIG. 5B, the video shown in FIG. 5A has a length (D H pixel) on the video corresponding to the amount of movement of the line-of-sight vector in the direction opposite to the direction of movement of the line-of-sight vector, as shown in FIG. ) Is translated. That is, when the line-of-sight vector rotates clockwise around the vertical axis by θ pan , the range to be displayed on the image projection plane shifts from the range sandwiched by the line S1 to the range sandwiched by the dotted line S2. The video correction unit 3 can translate the video in accordance with this shift.

同様に、視野の縦方向(垂直方向)の画角をφfovV、映像の高さをHピクセルとし、視線方向ベクトルが垂直方向にθtilt回転した場合を考える。この場合、視野中心付近にあるオブジェクトは映像の中で、下記式(2)で表されるピクセル数Dvだけ縦方向に移動する。 Similarly, let us consider a case where the field angle in the vertical direction (vertical direction) of the field of view is φ fovV , the height of the video is H pixels, and the line-of-sight direction vector is rotated by θ tilt in the vertical direction. In this case, the object in the vicinity field center is in the video, moves in the vertical direction by pixel number D v represented by the following formula (2).

Figure 0005652037
従って、TN-n時点の映像を、視野中心の移動と逆の方向に、横にDH、縦にDVだけ平行移動すれば、視野中心のオブジェクトの画面内での位置をTN時点のものと一致させることができる。さらに、θrollが0でなければ、TN-n時点の映像を映像中心周りにθrollだけ回転させることにより、視野中心のオブジェクトの画面内の向きもTN時点のものと一致させることができる。これらにより、視野中央付近のオブジェクトが、操作入力に正しく対応して画面内を動くことになる。
Figure 0005652037
Thus, the image of the T Nn time, the movement opposite to the direction of the field center, next to D H, vertical only D V if translation, the position in the screen object field center of T N times as Can be matched. Furthermore, if θ roll is not 0, the orientation of the object at the center of the visual field in the screen can be made to coincide with that at the time of T N by rotating the video at the time of T Nn by θ roll around the video center. As a result, the object near the center of the field of view moves in the screen in response to the operation input correctly.

上記の補正では、補正後の映像は、厳密には視野中心付近についてのみ正しく、それ以外の部分については近似となっている。この近似でも違和感を低減する効果が得られるが、より近似の精度を高めるためには、映像を平面への投影ではなく、円柱または球面への投影として捉えて処理を実行する方法がある。映像補正部3は、例えば、球面または円柱などの三次元空間における投影面に貼り付けられた画像を表すデータを、映像として受け取り、視野の変化に応じて補正した上で、球面の画像を平面に投影した映像を出力することができる。   In the above correction, the corrected image is strictly correct only in the vicinity of the center of the visual field, and is approximated in other portions. This approximation can also reduce the sense of incongruity, but in order to increase the accuracy of approximation, there is a method of executing processing by capturing an image as a projection on a cylinder or a sphere instead of on a plane. The video correction unit 3 receives, for example, data representing an image pasted on a projection surface in a three-dimensional space such as a spherical surface or a cylinder as a video, corrects it according to a change in the field of view, and then converts the spherical image into a plane. The image projected on can be output.

図6Aおよび図6Bは、映像を球面への投影として捉えて処理する場合の、時刻TNおよび時刻TNにおける視線方向ベクトルおよび視野と映像の関係、および映像の一例を示す図である。図6Aおよび図6Bにおいて、上側は、投影面に垂直な面における視線方向ベクトルおよび視野の例を示し、下側は、映像の例を示す。 6A and 6B are diagrams illustrating an example of a visual line direction vector at the time T N and the time T N , the relationship between the visual field and the video, and the video when the video is processed as a projection onto a spherical surface. 6A and 6B, the upper side shows an example of the line-of-sight direction vector and the visual field in a plane perpendicular to the projection plane, and the lower side shows an example of an image.

図6Aおよび図6Bに示す例では、映像補正部3は、平面上での平行移動ではなく、投影面である円柱面や球面上での映像を移動させる。図6Aに示す、円柱または球面などの三次元の投影面に貼り付けたTN-n時点の視野(2本の線S1で挟まれる範囲)の映像を、図6Bに示すように、TN時点の視野(2本の点線S2で挟まれる範囲)にあうように球面または円柱面上を移動させる。移動量は、TN-n時点の視線ベクトルとTN時点の視線ベクトルとの角度により決定することができる。あるいは、映像補正部3は、球面または円柱面に貼り付けられた映像のうち、映像生成後に更新された新たな表示すべき視野(例えばTN時点の視野)の範囲の映像を取り出して、補正後の映像として出力してもよい。 In the example illustrated in FIGS. 6A and 6B, the image correction unit 3 moves the image on the cylindrical surface or the spherical surface, which is the projection surface, instead of the parallel movement on the plane. An image of the visual field at the time point T Nn (the range sandwiched between the two lines S1) pasted on a three-dimensional projection surface such as a cylinder or a spherical surface shown in FIG. 6A is displayed at the time point T N as shown in FIG. 6B. The surface is moved on the spherical surface or the cylindrical surface so as to meet the field of view (a range between two dotted lines S2). The amount of movement can be determined by the angle between the line-of-sight vector at time T Nn and the line-of-sight vector at time T N. Alternatively, the video correction unit 3 extracts and corrects the video in the range of the new visual field to be displayed (for example, visual field at the time of TN ) updated after the video generation from the video pasted on the spherical surface or the cylindrical surface. It may be output as a later video.

球面または円柱面上の映像を平面の映像に変換する処理は、映像補正部3が実行してもよいし、映像補正部3の外部に設けられた専用プロセッサが実行してもよい。このように球面または円柱面上で移動後の映像を再度平面に投影することでTN時点の近似映像を生成することができる。 The processing for converting the image on the spherical or cylindrical surface into the image on the plane may be executed by the image correction unit 3 or a dedicated processor provided outside the image correction unit 3. Thus, an approximate image at the time point T N can be generated by projecting the image after moving on the spherical surface or the cylindrical surface onto the plane again.

なお、視野の回転がパンだけであれば投影面は円柱とすることができるが、ティルトやロールがあるなら球面で処理を行うことが好ましい。また、投影面は、球面または円柱面に限られず、例えば、立方体や直方体、その他の3次元空間における面であってもよい。このように、映像の変形処理を三次元で行うと計算負荷が高くなるが、例えば、昨今の標準的なグラフィクス用ハードウェアにおけるテクスチャマッピングの能力を活用すれば負荷を低減することができる。   If the field of view is only pan, the projection surface can be a cylinder, but if there is a tilt or roll, it is preferable to perform processing with a spherical surface. Further, the projection surface is not limited to a spherical surface or a cylindrical surface, and may be, for example, a cube, a rectangular parallelepiped, or a surface in another three-dimensional space. As described above, when the image transformation process is performed in three dimensions, the calculation load increases. For example, the load can be reduced by utilizing the texture mapping capability in recent standard graphics hardware.

(視野並進の補正)
視野が並進する場合(特に前後に移動する場合)には、視野が回転する場合に比べて、操作入力に対して映像が遅れていることはユーザに気付かれづらい。そのため、視野の回転についての補正を行うだけでも映像の違和感を低減する効果は得られる。
(Correction of visual field translation)
When the field of view translates (especially when moving forward and backward), it is difficult for the user to notice that the image is delayed with respect to the operation input compared to when the field of view rotates. Therefore, the effect of reducing the uncomfortable feeling of the video can be obtained only by correcting the rotation of the visual field.

視点位置の視線方向と同じ方向の移動すなわち、前後移動について映像の補正を行う場合には、映像補正部3は、映像の拡大縮小により補正を行うことができる。例えば、映像生成後の補正を開始する時刻TNで、映像生成開始の時刻TN-nよりも視点位置が視線方向前方へ進んでいた場合、映像補正部3は、その移動距離に応じて映像を拡大することができる。 In the case where the image is corrected for movement in the same direction as the line-of-sight direction of the viewpoint position, that is, back-and-forth movement, the image correcting unit 3 can perform correction by enlarging or reducing the image. For example, when the viewpoint position has moved forward in the line-of-sight direction from the time T Nn at the start of video generation at the time T N when the correction after the video generation is started, the video correction unit 3 displays the video according to the moving distance. Can be enlarged.

このときの拡大率は、奥行き方向(視線方向)のどの距離に着目するかに依存する。つまり、近くのオブジェクトに着目すればより拡大率を大きくすることが好ましく、逆に遠くに着目すれば拡大率を小さくすることが好ましい。このように、全ての距離のオブジェクトに対して正しい拡大率というものは存在しない。そのため、アプリケーションの特性に応じてもっとも違和感が少なくなるように、あらかじめ着目する距離(基準となる距離)を決め、メモリ等に記録しておくことができる。例えば、シミュ−ション装置がドライビングシミュレータであれば、仮想世界の視野前方において最も近い距離にある建物を基準(距離にして例えば十数メートル)にすることが考えられる。基準とする距離をD、視野の前方への移動距離をdとすると、拡大率Mは、例えば、下記式(3)を用いて計算できる。   The enlargement ratio at this time depends on which distance in the depth direction (line-of-sight direction) is focused. That is, it is preferable to increase the enlargement ratio when focusing on nearby objects, and conversely, it is preferable to decrease the expansion ratio when focusing on distant objects. Thus, there is no correct enlargement factor for all distance objects. For this reason, it is possible to determine a distance of interest (reference distance) in advance and record it in a memory or the like so as to minimize the sense of discomfort according to the characteristics of the application. For example, if the simulation device is a driving simulator, it is conceivable that the building at the closest distance in front of the visual field of the virtual world is used as a reference (distance is, for example, several tens of meters). Assuming that the reference distance is D and the moving distance to the front of the field of view is d, the enlargement ratio M can be calculated using the following equation (3), for example.

Figure 0005652037
上下や左右移動など、視線方向に垂直な方向の視野移動について補正を行う場合には、映像の上下または左右への平行移動により補正を行うことができる。この場合も、映像補正部3は、補正量は着目する基準距離を決めてから、平行移動の量を決定することができる。例えば、基準とする距離をD、視野の右方向への移動距離をd、視点から映像の投影面までの距離をhとすると、映像を投影面上で左方向に平行移動する量sは、例えば下記式(4)により計算することができる。左への移動や上下の移動についても同様に補正量を計算することができる。この場合、映像補正部3は、視野の移動方向と逆の方向にsだけ映像を平行移動させる。
Figure 0005652037
When correction is made for visual field movement in a direction perpendicular to the line-of-sight direction, such as up / down or left / right movement, the correction can be performed by parallel movement of the image up / down or left / right. Also in this case, the video correction unit 3 can determine the amount of translation after determining the reference distance to be focused on as the correction amount. For example, if the reference distance is D, the moving distance of the visual field in the right direction is d, and the distance from the viewpoint to the projection plane of the video is h, the amount s of moving the video in the left direction on the projection plane is For example, it can be calculated by the following equation (4). The correction amount can be calculated in the same manner for the leftward movement and the vertical movement. In this case, the image correction unit 3 translates the image by s in the direction opposite to the moving direction of the visual field.

Figure 0005652037
以上、補正処理の具体例を説明したが、映像補正部3による補正処理は、上記例に限定されない。例えば、映像補正部3は、バッファメモリに記録された描画すべき視野の映像のうち、映像生成後に変化した視野に対応する領域のアドレスを特定し、この領域の映像を取り出して、表示する映像として出力するといった補正処理を実行することもできる。
Figure 0005652037
The specific example of the correction process has been described above, but the correction process by the video correction unit 3 is not limited to the above example. For example, the video correction unit 3 specifies the address of the area corresponding to the visual field that has changed after the video generation from the video of the visual field to be drawn recorded in the buffer memory, extracts the video in this area, and displays the video It is also possible to execute a correction process such as outputting as

[描画視野算出の具体例]
上記のように映像補正によってTN時点の近似映像を生成すると、映像を移動した後に未描画領域が発生する場合がある。例えば、TN時点の視野の範囲が、TN-n時点の視野に基づいて決定された描画すべき視野の範囲を超えている場合、超えた領域については映像データが生成されていないので未描画領域となる。視線移動が大きい場合にはこの未描画領域も大きくなり、それが別の違和感を引き起こしかねない。また、補正によって表示されなくなる領域については、逆に描画が無駄になってしまう。
[Specific example of drawing field of view calculation]
As described above, when the approximate video at the time point T N is generated by video correction, an undrawn area may occur after the video is moved. For example, when the range of the visual field at the time point T N exceeds the visual field range to be drawn determined based on the visual field at the time point T Nn , video data is not generated for the exceeding region, and thus the undrawn region It becomes. When the line-of-sight movement is large, this undrawn area also becomes large, which may cause another sense of incongruity. On the other hand, the drawing that is not displayed by the correction is wasted.

例えば、図7Aは、映像生成の時点TN-nにおける表示すべき視野をそのまま描画し、TN時点の表示すべき視野を基に補正した場合の補正前後の映像例を示す図である。図7Aに示す例では、補正後の映像(下側の映像)は、視野の変化に応じて左へ平行移動しているため、右側が未描画領域Pとなっている。 そこで、第1および第2の実施形態では、描画視野算出部1を設けることにより、描画すべき視野の範囲を可変にしている。例えば、描画視野算出部1は、映像補正時点における表示すべき視野がなるべく含まれるように、映像生成時において描画すべき視野を計算し、映像生成部2に、その時点の表示すべき視野より余分に描画させることができる。これにより、補正によって映像が移動されても、余分に描画した分が新たに画面内に入ってくるため未描画領域が発生しにくくなる。また、補正によって不要になりそうな部分を描画しないよう制御することもできる。そのため、描画処理の無駄を減らすことができる。 For example, FIG. 7A is a diagram illustrating a video example before and after correction when the visual field to be displayed at the time T Nn of video generation is drawn as it is, and correction is performed based on the visual field to be displayed at the time T N. In the example shown in FIG. 7A, the corrected image (lower image) is translated to the left in accordance with the change in the field of view, so the right side is the undrawn region P. Therefore, in the first and second embodiments, the drawing field calculation unit 1 is provided to make the range of the field of view to be drawn variable. For example, the drawing visual field calculation unit 1 calculates the visual field to be drawn at the time of video generation so that the visual field to be displayed at the time of video correction is included as much as possible. You can draw extra. As a result, even if the image is moved by the correction, an extra drawn portion newly enters the screen, so that an undrawn region is less likely to occur. In addition, it is possible to control so as not to draw a portion that may become unnecessary due to correction. Therefore, the waste of drawing processing can be reduced.

例えば、図7Bは、映像生成の時点TN-nにおける表示すべき視野を基にそれより広い描画すべき視野を計算してその視野の範囲を描画し、TN時点の表示すべき視野を基に補正した場合の補正前後の映像例を示す図である。図7Bに示す例では、補正後の映像(下側の映像)は、視野の変化に応じて左へ平行移動している。しかし、平行移動分をカバーする程度に、元の視野の範囲R1より広い範囲R2について描画しているので、未描画領域は発生していない。 For example, FIG. 7B calculates a wider field of view to be drawn based on the field of view to be displayed at the time T Nn of video generation, draws the range of the field of view, and based on the field of view to be displayed at the time T N. It is a figure which shows the example of a video before and after correction | amendment at the time of correct | amending. In the example shown in FIG. 7B, the corrected image (lower image) is translated to the left according to the change in the visual field. However, since the drawing is performed in the range R2 wider than the original visual field range R1 so as to cover the parallel movement, no undrawn region is generated.

描画視野算出部1において描画すべき視野を求めるタイミングにおいては、映像補正時点は将来にあたる。そのため、将来の補正時点における表示すべき視野が、いかなる場合でも確実に描画すべき視野に含まれるようにすることは困難である。そこで、シミュレータにおける視野移動の傾向に基づいて、描画開始時点における表示すべき視野を基に描画すべき視野を求めるためのデータを予め決めてメモリに記録しておくことができる。例えば、描画開始時点の表示すべき視野から描画すべき視野への拡張の方向と、拡張の程度を示すパラメータを予めメモリに記録しておくことができる。このパラメータを用いて、描画視野算出部1は、シミュレータの特性に応じた視野移動範囲を予測し、適切な描画範囲を設定することができる。例えば、ドライビングシミュレータにおいては一般に視野が横方向にのみ移動し、視野の上下移動は主に車の揺れによるものに限られる傾向がある。この傾向を考慮して、描画すべき視野は、表示すべき視野を主に横方向に拡張することによって求めることができる。例えば、描画視野算出部1は、拡張は横方向の画角を一定量増やすことによって行っても良いし、画面上で描画範囲を横方向に一定ピクセル数だけ拡げるようにして行っても良い。画角や描画範囲の拡張方向および拡張量は、予め記録しておくこともできる。予め記録される拡張量は、例えば、シミュレーション部5の計算結果から、視野の横方向の動きの最大値を見積もることで計算することができる。   At the timing for obtaining the visual field to be drawn in the drawing visual field calculation unit 1, the video correction time point corresponds to the future. Therefore, it is difficult to ensure that the visual field to be displayed at the time of future correction is included in the visual field to be surely drawn in any case. Therefore, based on the visual field movement tendency in the simulator, data for obtaining the visual field to be drawn based on the visual field to be displayed at the drawing start time can be determined in advance and recorded in the memory. For example, the extension direction from the visual field to be displayed at the start of drawing to the visual field to be drawn, and a parameter indicating the degree of expansion can be recorded in the memory in advance. Using this parameter, the drawing visual field calculation unit 1 can predict the visual field movement range according to the characteristics of the simulator and set an appropriate drawing range. For example, in a driving simulator, the field of view generally moves only in the horizontal direction, and the vertical movement of the field of view tends to be limited mainly to vehicle shake. Considering this tendency, the visual field to be drawn can be obtained by extending the visual field to be displayed mainly in the horizontal direction. For example, the drawing visual field calculation unit 1 may perform the expansion by increasing the angle of view in the horizontal direction by a certain amount, or may extend the drawing range on the screen by a certain number of pixels in the horizontal direction. The angle of view and the extension direction and extension amount of the drawing range can be recorded in advance. The expansion amount recorded in advance can be calculated, for example, by estimating the maximum value of the lateral movement of the visual field from the calculation result of the simulation unit 5.

(視野の予測)
描画の無駄を減らすためには、表示すべき視野がどの方向に移動するかを予測して、それが含まれて、かつ、なるべく狭くなるように描画すべき視野を求めることが望ましい。そのために、描画視野算出部1において、例えば、下記の処理により、映像補正が行われる時刻と、その映像補正の時刻における表示すべき視野とを予測することができる。
(Prediction of field of view)
In order to reduce the waste of drawing, it is desirable to predict in which direction the visual field to be displayed moves and to determine the visual field to be drawn so that it is included and is as narrow as possible. Therefore, the drawing visual field calculation unit 1 can predict the time at which video correction is performed and the visual field to be displayed at the video correction time by the following processing, for example.

例えば、描画部22a、22b、22cでの映像生成にかった時間の履歴を記録しておき、描画視野算出部1が、それらを用いて予測計算を行って映像生成にかかる時間の予測値を計算することができる。次の映像補正が行われる時刻については、予測計算を行って求めた値に、映像の圧縮伸張と送受信にかかる時間と、現在時刻を加算することで求めることができる。予測計算としては、例えば、描画にかかった時間の履歴データを、線形関数や多項式関数を当てはめる方法がある。あるいは、描画にかかった時間の値の平均値を、予測値として計算することもできる。   For example, a history of time taken for video generation in the drawing units 22a, 22b, and 22c is recorded, and the drawing visual field calculation unit 1 performs prediction calculation using them to obtain a predicted value of time required for video generation. Can be calculated. The time at which the next video correction is performed can be obtained by adding the time required for video compression / decompression and transmission / reception and the current time to the value obtained by the prediction calculation. As the prediction calculation, for example, there is a method of applying a linear function or a polynomial function to historical data of the time taken for drawing. Alternatively, an average value of time taken for drawing can be calculated as a predicted value.

映像補正時点での表示すべき視野については、表示すべき視野の履歴を記録しておき、それらの履歴を用いて予測計算を行い、上記で求めた映像補正の予測時刻における視野を求めることができる。表示すべき視野は、例えば、視点位置、視線ベクトル、視野角、投影パラメータ等の要素の組み合わせで定義することができる。そのため、表示すべき視野を決める要素の値の時系列データを履歴として記録することができる。予測計算としては、例えば、履歴に対して線形関数や多項式関数を当てはめる方法がある。また、表示すべき視野を決める各要素の値の平均値を、それぞれ予測値として計算することもできる。このように、視野は視点位置、視線ベクトル、視野角などの要素の組み合わせによって表すことができるので、それぞれの要素について個別に予測値を計算することもできる。   For the field of view to be displayed at the time of video correction, record the history of the field of view to be displayed, perform prediction calculation using those history, and obtain the field of view at the predicted time of the video correction obtained above. it can. The field of view to be displayed can be defined by a combination of elements such as a viewpoint position, a line-of-sight vector, a field angle, and a projection parameter. Therefore, time-series data of element values that determine the visual field to be displayed can be recorded as a history. As the prediction calculation, for example, there is a method of applying a linear function or a polynomial function to the history. In addition, the average value of each element value that determines the field of view to be displayed can be calculated as a predicted value. In this way, the visual field can be represented by a combination of elements such as a viewpoint position, a line-of-sight vector, and a visual field angle, so that a predicted value can be calculated individually for each element.

精度のよい予測が計算できるのは、ある程度時間的に長いスパンにおける視野の変化であり、短時間の素早い視野の動きを正確に予測することは難しい。従って、例えば、数秒間単位の大まかな動きに対しては、描画視野算出部1による視野の予測計算によって追従し、無駄の少ない描画すべき視野を設定することができる。1秒前後やそれ以下の素早い視野の動きに対しては、描画すべき視野の内部で映像補正を行えるよう、描画視野算出部が描画すべき視野を設定することによってレスポンス良く対応することができる。   Prediction with high accuracy can be calculated based on changes in the visual field in a span that is long to some extent, and it is difficult to accurately predict a quick visual field movement in a short time. Therefore, for example, it is possible to follow a rough movement in units of several seconds by predicting the visual field by the drawing visual field calculation unit 1 and set a visual field to be drawn with less waste. A quick visual field movement of about 1 second or less can be responded with good response by setting the visual field to be drawn by the drawing visual field calculation unit so that the image can be corrected within the visual field to be drawn. .

例えば、描画視野算出部1は、映像生成時の表示すべき視野を全ての方向に一定量拡張した視野に、過去の表示すべき視野の履歴を基に予測計算された視野を加えた範囲の視野を、描画すべき視野として算出することができる。このように、表示すべき視野を全ての方向に一定量拡張することで、短時間の素早い視野の動きをカバーし、かつ、履歴から予測される視野の範囲で、比較的長い時間の視野の動きをカバーすることができる。   For example, the drawing visual field calculation unit 1 has a range obtained by adding a visual field predicted and calculated based on a history of visual fields to be displayed in the past to a visual field obtained by extending the visual field to be displayed at the time of video generation by a certain amount in all directions. The field of view can be calculated as the field of view to be drawn. In this way, by expanding the visual field to be displayed by a certain amount in all directions, it is possible to cover the movement of the visual field in a short time and cover the field of view for a relatively long time within the range of the visual field predicted from the history. Can cover the movement.

なお、上記の補正処理および描画視野算出処理は、上記第1の実施形態にも適用することができる。   The correction process and the drawing visual field calculation process described above can also be applied to the first embodiment.

(補正を行う部分と行わない部分への分割)
表示すべき視野の中に、視点位置からの距離が大きく異なる複数のオブジェクトが含まれる場合、映像補正部3が、複数のオブジェクトを含む映像を一括して補正すると、映像中の複数のオブジェクト画像を同じ量だけ動かすことになる。その結果、却って違和感が増すことがある。例えば、ドライビングシミュレータにおいて、表示すべき視野の中に自車の車体(内装を含む)のように外界とは異なる動きをする部分が含まれる場合、映像の補正を行うと視野に対して車体や内装が外界と一体になって動いてしまう。その結果、却って違和感が増すことがある。
(Division into parts to be corrected and parts not to be performed)
When the visual field to be displayed includes a plurality of objects having greatly different distances from the viewpoint position, when the video correction unit 3 corrects a video including the plurality of objects at once, a plurality of object images in the video are displayed. Will be moved by the same amount. As a result, a sense of incongruity may increase. For example, in a driving simulator, if the field of view to be displayed includes a part that moves differently from the outside world, such as the body of the vehicle (including the interior), the image of the body and The interior moves with the outside world. As a result, a sense of incongruity may increase.

そこで、表示すべき視野に含まれる仮想世界の一部のオブジェクトの映像を生成する映像生成部と、前記一部のオブジェクトとは視点からの距離が異なる他のオブジェクトの映像を生成する第二の映像生成部とを設けることができる。そして、映像生成部で生成された映像を補正した上で、第二の生成部で生成された映像と合成することができる。これにより、視点からの距離が異なるオブジェクトが含まれる映像であっても違和感を増すことなく、補正することができる。本実施形態では、一例として、サーバ12が映像生成部2を有し、クライアント13が第二の映像生成部の一例であるローカル描画部11aを有する構成となっている。   Therefore, a video generation unit that generates video of some objects in the virtual world included in the field of view to be displayed, and a second that generates video of other objects that are different in distance from the viewpoint from the some objects. And a video generation unit. Then, after correcting the video generated by the video generation unit, it can be combined with the video generated by the second generation unit. As a result, even an image including an object having a different distance from the viewpoint can be corrected without increasing a sense of incongruity. In the present embodiment, as an example, the server 12 includes the video generation unit 2 and the client 13 includes the local drawing unit 11a which is an example of the second video generation unit.

例えば、上記ドライビングシミュレータでは、外界と車体とを分けて描画し、補正を行った後に両者を合成することができる。図8は、仮想世界の複数のオブジェクトが分けて描画された後に合成される映像の例を示す図である。図8に示す例では、車体のオブジェクトを前景Zとして描画したフレームP2と、外界の建物を近景Kとし山を遠景(背景)Eとして描画したフレームP1とがそれぞれ独立して生成されている。フレームP1は、映像補正部3により補正された後、フレームP2と合成される。その結果、フレームP3が生成される。   For example, in the above driving simulator, it is possible to draw the outside world and the vehicle body separately and synthesize both after performing correction. FIG. 8 is a diagram illustrating an example of an image that is synthesized after a plurality of objects in the virtual world are drawn separately. In the example shown in FIG. 8, a frame P2 drawn with the vehicle body object as the foreground Z and a frame P1 drawn with the outside building as the foreground K and the mountain as the background (background) E are generated independently. The frame P1 is corrected by the video correction unit 3 and then combined with the frame P2. As a result, a frame P3 is generated.

図8に示す例の場合、仮想世界の主体である外界をサーバ12側の描画部22で描画し、描画負担の小さい車体をクライアント13側のローカル描画部11aで描画することができる。このようにすると、サーバ12側の映像は遅延するので補正する必要があるが、クライアント13側の映像については映像生成にかかる時間が短く映像伝送による遅延の影響も少ないために補正する必要がない。   In the case of the example shown in FIG. 8, the outside world that is the subject of the virtual world can be drawn by the drawing unit 22 on the server 12 side, and the vehicle body with a small drawing load can be drawn by the local drawing unit 11 a on the client 13 side. In this case, the video on the server 12 side is delayed and needs to be corrected. However, the video on the client 13 side needs to be corrected because the time required for video generation is short and the influence of delay due to video transmission is small. .

本実施形態では、クライアント13に、ローカル描画部11aが設けられる。また、例えば、車体を描画するためのモデルデータやテクスチャデータを含むローカル描画データがクライアント13に記録される。なお、ローカル描画データはあらかじめクライアント13側に記録しておいてもよいし、サーバ12と接続した後で必要な分だけサーバ12からダウンロードしてもよい。シミュレーション部5によって更新されたオブジェクトの情報(位置、姿勢、属性など)は、サーバ12の映像生成部2と、クライアント13のローカル描画部11aへ送られる。一例として、映像生成部2へは、近景および遠景の映像を生成するための外界に関する情報が、ローカル描画部11aへは車体と内装を描画するための情報が送られることになる。ローカル描画部11aへ送られる更新情報は、更新情報送信部15および更新情報受信部25を通して送られる。更新情報は、例えば、ローカル描画部11aの描画対象のオブジェクトの属性のうち更新された属性を示すデータとすることができる。更新情報のデータサイズは、映像情報に比べて、送受信の遅延時間は無視できる程度である小さいことが好ましい。   In the present embodiment, the client 13 is provided with a local drawing unit 11a. Also, for example, local drawing data including model data and texture data for drawing the vehicle body is recorded in the client 13. The local drawing data may be recorded in advance on the client 13 side, or may be downloaded from the server 12 as much as necessary after connecting to the server 12. The object information (position, posture, attribute, etc.) updated by the simulation unit 5 is sent to the video generation unit 2 of the server 12 and the local drawing unit 11a of the client 13. As an example, information relating to the outside world for generating near and far view images is sent to the image generating unit 2, and information for drawing the vehicle body and interior is sent to the local drawing unit 11a. The update information sent to the local drawing unit 11a is sent through the update information transmitting unit 15 and the update information receiving unit 25. The update information can be, for example, data indicating an updated attribute among the attributes of the drawing target object of the local drawing unit 11a. The data size of the update information is preferably small so that the transmission / reception delay time is negligible compared to the video information.

ローカル描画部11aは、シミュレーション部5から、視野送信部16および視野受信部26を介して送られてきた最新の表示すべき視野と、更新情報送信部15、更新情報受信部25を介して送られてきたローカル描画データとを用いて映像生成を行う。そして、合成部9が、映像補正部3によって補正された映像と、ローカル描画部11aによって生成された映像とを重ね合わせて合成する。ローカル描画部11aは、描画を担当するオブジェクトが写っていない映像の領域(図8の例では、車体以外の領域)を透明としておくことにより、分担して描画した結果を重ね合わせることによって一つの映像に合成することができる。図8の例では、車体と、その向こう側に見える外界とが正しく合成される。   The local drawing unit 11a transmits the latest visual field to be displayed sent from the simulation unit 5 via the visual field transmission unit 16 and the visual field reception unit 26, and the transmission information via the update information transmission unit 15 and the update information reception unit 25. Video generation is performed using the local drawing data. Then, the combining unit 9 combines the image corrected by the image correcting unit 3 with the image generated by the local drawing unit 11a. The local drawing unit 11a makes one area by superimposing the divided drawing results by keeping the area of the video in which the object in charge of drawing is not shown (in the example of FIG. 8, the area other than the vehicle body) transparent. Can be combined with video. In the example of FIG. 8, the vehicle body and the external world that is visible beyond the vehicle body are correctly combined.

図8に示す車体と外界に分ける例のように、オブジェクトを前後に交わらないように分けられる場合には、合成部9による映像の合成は単純な重ね合わせでよい。しかし、車体の上に乗ってくるオブジェクトがある場合など、奥行き方向に重なりが出てくると、単純な重ね合わせによる合成では正しく合成できない場合が出てくる。その場合、合成部9は、それぞれの映像を描画する時に用いられたZバッファの内容を活用することで、正しい合成が可能になる。Zバッファは映像の奥行き方向の情報を記録するメモリ領域である。例えば、描画結果受信部28および更新情報受信部25は、それぞれの映像にZバッファの内容を付属させて受信し、合成部9では、各ピクセルのZバッファの値を比較して手前にある方のピクセルの色を採用しながら重ね合わせ合成を行うことができる。サーバ12側で描画した映像については、合成の前に、映像そのものと全く同じ補正をZバッファの内容についても行うことができる。これにより、単純な重ね合わせだけでは奥行き方向の位置関係を正しく表示できない場合でも、適切に映像を合成することができる。   As in the example of dividing the vehicle body and the outside shown in FIG. 8, when the objects are separated so as not to cross each other, the composition of the video by the composition unit 9 may be simple superposition. However, if there is an overlap in the depth direction, such as when there is an object riding on the vehicle body, there may be cases where the composition cannot be performed correctly by simple composition. In that case, the synthesizing unit 9 can correctly synthesize by utilizing the contents of the Z buffer used when drawing each video. The Z buffer is a memory area for recording information in the depth direction of video. For example, the drawing result receiving unit 28 and the update information receiving unit 25 receive the contents of the Z buffer attached to each video, and the synthesizing unit 9 compares the values of the Z buffer of each pixel and is in front. It is possible to perform superposition synthesis while adopting the color of each pixel. For the video drawn on the server 12 side, the same correction as the video itself can be performed on the contents of the Z buffer before the composition. As a result, even when the positional relationship in the depth direction cannot be correctly displayed only by simple superposition, the video can be appropriately synthesized.

なお、本実施形態における第二の映像生成の処理および合成処理の例は、上記第1の実施形態にも適用することができる。   Note that the example of the second video generation process and the synthesis process in the present embodiment can also be applied to the first embodiment.

[遅延の隠蔽]
図9は、図3に示すシミュレーションシステムの動作例を示す処理フロー図である。図9に示す例では、シミュレーション部5が、操作入力があった時点TN-4、TN-3、TN-2、TN-1、TNで仮想世界のオブジェクトデータの更新と、表示すべき視野の更新を実行する。なお、シミュレーション部5は操作入力のタイミングとは別に、一定周期で更新処理を実行してもよい。
[Concealment of delay]
FIG. 9 is a process flow diagram illustrating an operation example of the simulation system illustrated in FIG. 3. In the example illustrated in FIG. 9, the simulation unit 5 updates the virtual world object data at the time points T N−4 , T N−3 , T N−2 , T N−1 , and T N when the operation input is performed. Update the field of view to be displayed. In addition, the simulation part 5 may perform an update process with a fixed period separately from the timing of operation input.

例えば、時刻TN-4における更新処理(Op1)においてシミュレーション部5は、更新した表示すべき視野を描画視野算出部1へ通知する。描画視野算出部1は、シミュレーション部5から表示すべき視野を受けると、描画すべき視野の計算(Op2)を開始する。描画視野算出部1が計算した描画すべき視野は、描画部22aに渡され、描画部22aが描画すべき視野の映像を生成する(Op3)。生成された映像は、映像エンコーダ17による圧縮、描画結果送信部18によるクライアント13への送信、クライアント13の描画結果受信部28による受信、映像デコーダ27による伸長を経て(Op4)、映像補正部3へ渡される。映像補正部3は、映像を受けると、ほぼ同時に、Op5においてシミュレーション部5により時刻TNにおいて更新された最新の表示すべき視野も受け取る。映像補正部3は、最新の表示すべき視野の範囲が表示されるよう映像を補正する(Op6)。 For example, in the update process (Op1) at time T N-4 , the simulation unit 5 notifies the drawing field calculation unit 1 of the updated field of view to be displayed. When receiving the visual field to be displayed from the simulation unit 5, the drawing visual field calculation unit 1 starts calculating the visual field to be drawn (Op2). The visual field to be drawn calculated by the drawing visual field calculation unit 1 is transferred to the drawing unit 22a, and the drawing unit 22a generates an image of the visual field to be drawn (Op3). The generated video undergoes compression by the video encoder 17, transmission to the client 13 by the drawing result transmission unit 18, reception by the drawing result reception unit 28 of the client 13, and decompression by the video decoder 27 (Op 4), and then the video correction unit 3. Passed to. Upon receiving the video, the video correction unit 3 receives the latest visual field to be displayed updated at the time T N by the simulation unit 5 in Op5. The video correction unit 3 corrects the video so that the latest visual field range to be displayed is displayed (Op6).

図9に示す処理では、実際には、時刻TN-4におけるシミュレーション部5の更新処理開始から、映像補正部3による補正完了までの時間TD1だけ遅延が発生している。しかし、映像補正部3で補正された映像は、時刻TNにおいて更新された表示すべき視野の映像に近いものとなっている。そのため、補正後の映像を見たユーザが感じる遅延、すなわち見かけの遅延は、時刻TNから補正完了までの時間TD2になる。 In the process shown in FIG. 9, a delay is actually generated by a time TD1 from the start of the update process of the simulation unit 5 at time T N-4 to the completion of correction by the video correction unit 3. However, the video corrected by the video correction unit 3 is close to the visual field image to be displayed updated at time T N. For this reason, the delay felt by the user who has viewed the corrected video, that is, the apparent delay, is the time TD2 from the time T N to the completion of the correction.

このように、本実施形態では、映像の生成や転送にある程度の遅延があっても、ユーザの操作入力に対して映像が遅れずに応答しているように見せかけることができる。そのため、映像の遅延による違和感を大幅に低減することができる。これにより、例えば、並列描画を行う大規模なサーバで映像生成を行い、映像をクライアントからネットワークを介してリアルタイムで利用するシステムを構築することが可能になる。すなわち、高品質あるいは大量のデータを用いた映像生成が可能だが遅延が避けられないシミュレータにおいて、これまで困難であったリアルタイム・高レスポンスでのネットワークを介した利用が可能になる。   As described above, in this embodiment, even if there is a certain delay in the generation and transfer of the video, it is possible to make it appear that the video is responding to the user's operation input without delay. Therefore, it is possible to greatly reduce the uncomfortable feeling caused by the delay of the video. Thereby, for example, it is possible to construct a system in which video is generated by a large-scale server that performs parallel drawing and the video is used in real time from the client via the network. In other words, in a simulator that can generate video using high quality or a large amount of data, but delay is inevitable, it can be used over a network with real time and high response, which has been difficult until now.

例えば、仮想世界の映像生成をサーバコンピュータで行い、結果の映像を、ネットワークを通じてクライアントコンピュータへ転送する構成を採ることにより、高い描画性能や大量のデータをサーバコンピュータ側に集約することができるようになる。これにより、クライアントコンピュータに必要とされる性能が低減され、シミュレータを多数の利用者へ展開することが、コストや手間の面で容易になる。オンラインの3Dゲームであれば、各プレーヤの用意するコンピュータが安価で標準的な性能のものであっても、その性能を超えた高品質な映像を楽しめるようになる。   For example, it is possible to collect high rendering performance and a large amount of data on the server computer side by adopting a configuration in which video generation of the virtual world is performed by the server computer and the resulting video is transferred to the client computer through the network. Become. As a result, the performance required for the client computer is reduced, and it is easy in terms of cost and labor to deploy the simulator to a large number of users. If it is an online 3D game, even if the computer provided by each player is inexpensive and has a standard performance, it will be possible to enjoy high-quality video that exceeds that performance.

このようなネットワークを介して利用可能なシミュレータでは、サーバコンピュータが描画した映像を、フレームレートの低下を防ぐためにコーデックによる圧縮・伸張を行いつつネットワークを通じて伝送すると、ユーザの操作に対する映像の遅延を避けることができない。本実施形態によれば、この遅延を隠蔽し、出力の映像の違和感を低減することができる。そのため、操作に対する素早いレスポンスが必要なアプリケーションをネットワーク経由で利用することが可能になる。また、オンラインの3Dゲームについても、高品質な描画をサーバコンピュータで行い、クライアントで映像を表示する構成が実現できる。   In such a simulator that can be used via a network, if the video drawn by the server computer is transmitted through the network while being compressed / decompressed by a codec to prevent a decrease in the frame rate, a delay in the video with respect to the user's operation is avoided. I can't. According to the present embodiment, this delay can be concealed, and the uncomfortable feeling of the output video can be reduced. Therefore, an application that requires a quick response to an operation can be used via the network. For online 3D games, it is possible to realize a configuration in which high-quality drawing is performed by a server computer and video is displayed by a client.

[コンピュータ構成]
図3に示すシミュレーションシステムのサーバ12およびクライアント13は、それぞれ独立したコンピュータにより構成することができる。それぞれのコンピュータは、第1の実施形態と同様、汎用コンピュータであってもよいし、専用機でもよい。また、コンピュータは、CPUのほか、DSPのような画像処理専用プロセッサを含んでもよい。例えば、サーバ12の映像生成部2における描画部22a、22b、22cは、それぞれ3台の独立したプロセッサで構成することができる。
[Computer configuration]
The server 12 and the client 13 of the simulation system shown in FIG. 3 can be configured by independent computers. Each computer may be a general-purpose computer or a dedicated machine as in the first embodiment. In addition to the CPU, the computer may include a processor dedicated to image processing such as a DSP. For example, the drawing units 22a, 22b, and 22c in the video generation unit 2 of the server 12 can each be configured by three independent processors.

また、シミュレーション部5、描画視野算出部1と、映像生成部2に、映像生成部2が生成した映像と、前記映像の前記描画すべき視野の基となった前記表示すべき視野と、前記映像の生成開始後に計算された新たな表示すべき視野とを、映像補正部3を有するクライアント装置へ送信する送信部を備えた模擬映像生成装置も本発明の実施形態に含まれる。   Further, the simulation unit 5, the drawing field calculation unit 1, and the image generation unit 2, the image generated by the image generation unit 2, the field of view to be displayed which is the basis of the field of view of the image to be drawn, An embodiment of the present invention also includes a simulated video generation apparatus including a transmission unit that transmits a new field of view to be displayed calculated after the start of video generation to a client device having the video correction unit 3.

さらに、シミュレーション部5を有するサーバ装置から、映像生成時の表示すべき視野より広い視野である描画すべき視野と、仮想世界を表すデータを基に生成された当該描画すべき視野の映像と、当該映像の生成開始後に計算された新たな表示すべき視野とを受信する受信部と、映像補正部3と、映像補正部3で補正された映像を表示する表示部4(出力部の一例)を備えた模擬映像表示装置も本発明の実施形態に含まれる。   Furthermore, from the server device having the simulation unit 5, a visual field to be drawn which is a visual field wider than the visual field to be displayed at the time of video generation, a video of the visual field to be drawn generated based on data representing a virtual world, A receiving unit that receives a new field of view to be displayed calculated after generation of the video, a video correction unit 3, and a display unit 4 that displays the video corrected by the video correction unit 3 (an example of an output unit) A simulated video display device including the above is also included in the embodiment of the present invention.

1 描画視野算出部
2 映像生成部
3 映像補正部
4 表示部
5 シミュレーション部
6 入力部
7 描画視野保持部
8 表示視野保持部
9 合成部
10、10a シミュレーション装置
11 第二の映像生成部
12 シミュレータサーバ(サーバ装置)
13 シミュレータクライアント(クライアント装置)
DESCRIPTION OF SYMBOLS 1 Drawing visual field calculation part 2 Video generation part 3 Video correction part 4 Display part 5 Simulation part 6 Input part 7 Drawing visual field holding part 8 Display visual field holding part 9 Synthesis | combination part 10, 10a Simulation apparatus 11 2nd video generation part 12 Simulator server (Server device)
13 Simulator client (client device)

Claims (11)

ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部と、
第1の時刻に、前記シミュレーション部により計算された第1の表示すべき視野より広い視野である描画すべき視野を計算する描画視野算出部と、
前記描画すべき視野に対応する第1の映像の生成を、前記仮想世界を表すデータを基に前記第1の時刻の直後に開始する映像生成部と、
前記第1の映像の生成開始後の第2の時刻に前記シミュレーション部により計算された第2の表示すべき視野を用いて、前記第2の時刻の直後に、前記第1の映像を前記第2の表示すべき視野に対応する第2の映像に補正する映像補正部とを備え、
前記描画視野算出部は、前記第1の時刻に、前記第2の時刻における前記第2の表示すべき視野を所定の方法で予測して計算し、前記描画すべき視野が前記第1の表示すべき視野および予測した前記第2の表示すべき視野を含んだ視野となるように、前記描画すべき視野の計算を行う
ことを特徴とする模擬映像生成装置。
A simulation unit that updates data representing a virtual world according to an operation input from a user or the passage of time, and calculates a visual field to be displayed in the virtual world;
A drawing field calculation unit that calculates a field of view to be drawn which is a field of view wider than the first field of view calculated by the simulation unit at a first time;
A video generation unit that starts generating the first video corresponding to the visual field to be drawn immediately after the first time based on the data representing the virtual world;
Using the second field of view to be displayed calculated by the simulation unit at a second time after the generation of the first video, the first video is displayed immediately after the second time. A video correction unit that corrects the second video corresponding to the field of view to be displayed,
The drawing visual field calculation unit predicts and calculates the second visual field to be displayed at the second time by a predetermined method at the first time, and the visual field to be drawn is the first display. as the inclusive vision field to should do field and predicted the second display field to be simulated image generating apparatus, characterized in that the calculation of the visual field to be the drawing.
前記描画視野算出部は、前記シミュレーション部によって計算された前記表示すべき視野の履歴に基づいて、前記第1の映像の生成開始後に表示すべき視野となりうる範囲を計算し、当該範囲を含む視野を前記描画すべき視野とする、請求項1に記載の模擬映像生成装置。   The drawing visual field calculation unit calculates a range that can be displayed after starting the generation of the first video based on the history of the visual field to be displayed calculated by the simulation unit, and includes a visual field including the range The simulated video generation apparatus according to claim 1, wherein the visual field to be drawn is set as the visual field to be drawn. 前記第1の映像の生成開始後に計算された新たな表示すべき視野を基に、当該新たな表示すべき視野における仮想世界の一部を示す第3の映像を生成する第二の映像生成部と、
前記映像補正部により補正された前記第2の映像と、前記第二の映像生成部により生成された前記第3の映像とを合成する合成部とをさらに備える、請求項1または2に記載の模擬映像生成装置。
A second video generation unit that generates a third video showing a part of the virtual world in the new field of view to be displayed based on the new field of view to be displayed calculated after the generation of the first video is started. When,
The said 2nd image | video corrected by the said image | video correction | amendment part and the synthetic | combination part which synthesize | combines the said 3rd image | video produced | generated by the said 2nd image | video production | generation part are further provided. Simulated video generation device.
前記描画視野算出部は、前記第1の映像の生成開始から前記第1の映像の補正開始までにかかる時間の予測値を、前記第1の映像の生成にかかった時間の履歴を用いて計算し、当該予測値に応じて、前記描画すべき視野の範囲を調整する、請求項1〜3のいずれか1項に記載の模擬映像生成装置。   The drawing visual field calculation unit calculates a predicted value of time taken from the start of generation of the first video to the start of correction of the first video using a history of time taken to generate the first video. The simulated video generation apparatus according to claim 1, wherein the range of the visual field to be drawn is adjusted according to the predicted value. 前記映像補正部は、前記描画すべき視野の映像のうち、前記映像の生成開始後に計算された前記第2の表示すべき視野に対応する領域の映像を、表示する映像とする補正を行う、請求項1〜4のいずれか1項に記載の模擬映像生成装置。   The video correction unit corrects, as a video to be displayed, a video of a region corresponding to the second visual field to be displayed calculated after the start of generation of the video among the video of the visual field to be drawn. The simulated video production | generation apparatus of any one of Claims 1-4. 前記映像補正部は、前記映像の前記描画すべき視野の基になった前記第1の表示すべき視野から、前記映像の生成開始後に計算された前記第2の表示すべき視野への変化の量および方向に応じて、前記描画すべき視野の映像の表示位置を移動させる、請求項1〜5のいずれか1項に記載の模擬映像生成装置。   The video correction unit is configured to change a change from the first visual field to be displayed that is a basis of the visual field to be drawn of the video to the second visual field to be displayed that is calculated after the generation of the video is started. The simulated video generation apparatus according to claim 1, wherein the display position of the video of the visual field to be drawn is moved according to the amount and direction. サーバ装置およびクライアント装置を含むシミュレーションシステムであって、
前記サーバ装置は、
ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部と、
第1の時刻に、前記シミュレーション部により計算された第1の表示すべき視野より広い視野である描画すべき視野を計算する描画視野算出部と、
前記描画すべき視野に対応する第1の映像の生成を、前記仮想世界を表すデータを基に前記第1の時刻の直後に開始する映像生成部と、
前記第1の映像と、前記第1の映像の前記描画すべき視野の基となった前記第1の表示すべき視野と、前記第1の映像の生成開始後の第2の時刻に前記シミュレーション部により計算された第2の表示すべき視野とを前記クライアント装置へ前記第2の時刻の直後に送信する送信部と、を有し、
前記クライアント装置は、
前記映像の生成開始後に計算された前記受信した第2の表示すべき視野を用いて、前記受信した第1の映像を前記受信した第2の表示すべき視野に対応する第2の映像に補正する映像補正部を有し、
前記描画視野算出部は、前記第1の時刻に、前記第2の時刻における前記第2の表示すべき視野を所定の方法で予測して計算し、前記描画すべき視野が前記第1の表示すべき視野および予測した前記第2の表示すべき視野を含んだ視野となるように、前記描画すべき視野の計算を行う
ことを特徴とするシミュレーションシステム。
A simulation system including a server device and a client device,
The server device
A simulation unit that updates data representing a virtual world according to an operation input from a user or the passage of time, and calculates a visual field to be displayed in the virtual world;
A drawing field calculation unit that calculates a field of view to be drawn which is a field of view wider than the first field of view calculated by the simulation unit at a first time;
A video generation unit that starts generating the first video corresponding to the visual field to be drawn immediately after the first time based on the data representing the virtual world;
The first video, the first visual field to be displayed that is the basis of the visual field to be drawn of the first video, and the simulation at a second time after the start of the generation of the first video A transmission unit that transmits the second field of view to be displayed calculated by the unit to the client device immediately after the second time,
The client device is
Using the received second field of view to be displayed calculated after the start of generation of the image, the received first image is corrected to a second image corresponding to the received second field of view to be displayed. A video correction unit that
The drawing visual field calculation unit predicts and calculates the second visual field to be displayed at the second time by a predetermined method at the first time, and the visual field to be drawn is the first display. as the inclusive vision field to should do field and predicted the second display field to be a simulation system, characterized in that the calculation of the to be rendered field.
ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部と、
第1の時刻に、前記シミュレーション部により計算された第1の表示すべき視野より広い視野である描画すべき視野を計算する描画視野算出部と、
前記描画すべき視野に対応する第1の映像の生成を、前記仮想世界を表すデータを基に前記第1の時刻の直後に開始する映像生成部と、
前記第1の映像と、前記第1の映像の前記描画すべき視野の基となった前記第1の表示すべき視野と、前記第1の映像の生成開始後の第2の時刻に前記シミュレーション部により計算された前記第2の表示すべき視野とを、前記第1の映像を前記第2の表示すべき視野に対応する第2の映像に補正する映像補正部を有するクライアント装置へ前記第2の時刻の直後に送信する送信部とを備え、
前記描画視野算出部は、前記第1の時刻に、前記第2の時刻における前記第2の表示すべき視野を所定の方法で予測して計算し、前記描画すべき視野が前記第1の表示すべき視野および予測した前記第2の表示すべき視野を含んだ視野となるように、前記描画すべき視野の計算を行う
ことを特徴とする模擬映像生成装置。
A simulation unit that updates data representing a virtual world according to an operation input from a user or the passage of time, and calculates a visual field to be displayed in the virtual world;
A drawing field calculation unit that calculates a field of view to be drawn which is a field of view wider than the first field of view calculated by the simulation unit at a first time;
A video generation unit that starts generating the first video corresponding to the visual field to be drawn immediately after the first time based on the data representing the virtual world;
The first video, the first visual field to be displayed that is the basis of the visual field to be drawn of the first video, and the simulation at a second time after the start of the generation of the first video To the client device having a video correction unit that corrects the first visual field calculated by the unit to a second video corresponding to the second visual field to be displayed. A transmission unit that transmits immediately after the time of 2,
The drawing visual field calculation unit predicts and calculates the second visual field to be displayed at the second time by a predetermined method at the first time, and the visual field to be drawn is the first display. as the inclusive vision field to should do field and predicted the second display field to be simulated image generating apparatus, characterized in that the calculation of the visual field to be the drawing.
ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション部を備えたサーバ装置から、第1の時刻に前記シミュレーション部により計算された第1の表示すべき視野より広い視野である描画すべき視野と、前記仮想世界を表すデータを基に生成された当該描画すべき視野に対応する第1の映像と、当該第1の映像の生成開始後の第2の時刻に前記シミュレーション部により計算された第2の表示すべき視野とを受信する受信部と、
前記第1の映像の生成開始後の前記第2の時刻に計算された前記受信した第2の表示すべき視野を用いて、前記描画すべき視野に対応する前記第1の映像を前記第2の表示すべき視野に対応する第2の映像に補正する映像補正部と、
前記補正された映像を表示する出力部とを備え、
前記受信部は、前記第2の時刻の直後に、前記第1の時刻に前記シミュレーション部により所定の方法で予測された前記第2の表示すべき視野を受信し、
前記映像補正部は、前記第1の表示すべき視野および前記予測された前記第2の表示すべき視野を含んだ視野となるように前記シミュレーション部により前記第1の時刻に計算された前記描画すべき視野を基に、前記受信した第2の表示すべき視野を用いて、前記第1の映像を前記第2の映像に補正する
ことを特徴とする模擬映像表示装置。
Calculated by the simulation unit at a first time from a server device provided with a simulation unit that updates data representing the virtual world and calculates the visual field to be displayed in the virtual world according to an operation input from the user or the passage of time. A visual field to be drawn which is a wider visual field than the first visual field to be displayed, a first video corresponding to the visual field to be drawn generated based on data representing the virtual world, and the first A receiving unit that receives the second field of view to be displayed calculated by the simulation unit at a second time after the start of video generation;
Using the received second field of view to be displayed calculated at the second time after the start of generation of the first image, the first image corresponding to the field of view to be drawn is the second A video correction unit that corrects the second video corresponding to the field of view to be displayed;
An output unit for displaying the corrected video,
The receiving unit receives the second field of view to be displayed, which is predicted by the simulation unit at a first method at the first time immediately after the second time,
The image correction unit, the first of said calculated for the first time by the simulation unit such that the inclusive vision field of vision to be displayed and the predicted second display field of view to be A simulated video display device, wherein the first video is corrected to the second video using the received second visual field to be displayed based on the visual field to be drawn.
ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション処理と、
第1の時刻に、前記シミュレーション処理により計算された第1の表示すべき視野より広い視野である描画すべき視野を計算する描画視野算出処理と、
前記描画すべき視野に対応する第1の映像の生成を、前記仮想世界を表すデータを基に前記第1の時刻の直後に開始する映像生成処理と、
前記第1の映像の生成開始後の第2の時刻に前記シミュレーション処理により計算された第2の表示すべき視野を用いて、前記第2の時刻の直後に、前記第1の映像を前記第2の表示すべき視野に対応する第2の映像に補正する映像補正処理とをコンピュータに実行させ、
前記描画視野算出処理は、前記第1の時刻に、前記第2の時刻における前記第2の表示すべき視野を所定の方法で予測して計算し、前記描画すべき視野が前記第1の表示すべき視野および予測した前記第2の表示すべき視野を含んだ視野となるように、前記描画すべき視野の計算を行う
ことを特徴とする模擬映像生成プログラム。
A simulation process for updating the data representing the virtual world according to the operation input from the user or the passage of time, and calculating the visual field to be displayed in the virtual world,
A drawing visual field calculation process for calculating a visual field to be drawn which is a visual field wider than the first visual field to be displayed calculated by the simulation process at a first time;
Video generation processing for starting generation of the first video corresponding to the visual field to be drawn immediately after the first time based on the data representing the virtual world;
Using the second field of view to be displayed calculated by the simulation process at a second time after the start of generation of the first video, the first video is displayed immediately after the second time. And a video correction process for correcting the second video corresponding to the field of view to be displayed.
The drawing visual field calculation process predicts and calculates the second visual field to be displayed at the second time by a predetermined method at the first time, and the visual field to be drawn is the first display. as will be inclusive vision field to should do field and predicted the second display field to be simulated image generation program, characterized in that the calculation of the visual field to be the drawing.
コンピュータのプロセッサが、ユーザからの操作入力または時間経過に応じて、仮想世界を表すデータを更新し、仮想世界における表示すべき視野を計算するシミュレーション工程と、
プロセッサが、第1の時刻に、前記シミュレーション工程により計算された第1の表示すべき視野より広い視野である描画すべき視野を計算する描画視野算出工程と、
プロセッサが、前記描画すべき視野に対応する第1の映像の生成を、前記仮想世界を表すデータを基に前記第1の時刻の直後に開始する映像生成工程と、
プロセッサが、前記第1の映像の生成開始後の第2の時刻に前記シミュレーション工程により計算された第2の表示すべき視野を用いて、前記第2の時刻の直後に、前記第1の映像を前記第2の表示すべき視野に対応する第2の映像に補正する映像補正工程と含み、
前記描画視野算出工程は、前記第1の時刻に、前記第2の時刻における前記第2の表示すべき視野を所定の方法で予測して計算し、前記描画すべき視野が前記第1の表示すべき視野および予測した前記第2の表示すべき視野を含んだ視野となるように、前記描画すべき視野の計算を行う
ことを特徴とする模擬映像生成方法。
A simulation process in which a processor of a computer updates data representing a virtual world in response to an operation input from a user or the passage of time, and calculates a visual field to be displayed in the virtual world;
A drawing visual field calculation step in which the processor calculates a visual field to be drawn which is a visual field wider than the first visual field to be displayed calculated by the simulation step at a first time;
A video generation step in which a processor starts generating a first video corresponding to the visual field to be drawn immediately after the first time based on data representing the virtual world;
The processor uses the second field of view to be displayed calculated by the simulation process at a second time after the start of the generation of the first video, and immediately after the second time, the first video And a video correction step of correcting the second video corresponding to the field of view to be displayed,
The drawing visual field calculation step predicts and calculates the second visual field to be displayed at the second time by a predetermined method at the first time, and the visual field to be drawn is the first display. as the inclusive vision field to should do field and predicted the second display field to be simulated image generating method characterized in that the calculation of the to be rendered field.
JP2010172630A 2010-07-30 2010-07-30 Simulated video generation device, method, and program Expired - Fee Related JP5652037B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010172630A JP5652037B2 (en) 2010-07-30 2010-07-30 Simulated video generation device, method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010172630A JP5652037B2 (en) 2010-07-30 2010-07-30 Simulated video generation device, method, and program

Publications (2)

Publication Number Publication Date
JP2012033038A JP2012033038A (en) 2012-02-16
JP5652037B2 true JP5652037B2 (en) 2015-01-14

Family

ID=45846359

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010172630A Expired - Fee Related JP5652037B2 (en) 2010-07-30 2010-07-30 Simulated video generation device, method, and program

Country Status (1)

Country Link
JP (1) JP5652037B2 (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5821745B2 (en) * 2012-03-28 2015-11-24 富士通株式会社 Simulation method, simulation apparatus, and simulation program
JP6087603B2 (en) * 2012-12-04 2017-03-01 三菱プレシジョン株式会社 Image generation device
CN105229719B (en) * 2013-03-15 2018-04-27 奇跃公司 Display system and method
JP6353214B2 (en) 2013-11-11 2018-07-04 株式会社ソニー・インタラクティブエンタテインメント Image generating apparatus and image generating method
JP6474278B2 (en) * 2015-02-27 2019-02-27 株式会社ソニー・インタラクティブエンタテインメント Image generation system, image generation method, program, and information storage medium
JP2017215875A (en) * 2016-06-01 2017-12-07 株式会社ソニー・インタラクティブエンタテインメント Image generation device, image generation system, and image generation method
JP2017228044A (en) 2016-06-21 2017-12-28 株式会社ソニー・インタラクティブエンタテインメント Image forming device, image generation system, and image generation method
US10529063B2 (en) * 2016-08-22 2020-01-07 Magic Leap, Inc. Virtual, augmented, and mixed reality systems and methods
IL301071B2 (en) 2016-08-26 2024-04-01 Magic Leap Inc Continuous time warp and binocular time warp for virtual and augmented reality display systems and methods
US10410349B2 (en) * 2017-03-27 2019-09-10 Microsoft Technology Licensing, Llc Selective application of reprojection processing on layer sub-regions for optimizing late stage reprojection power
JP6944863B2 (en) 2017-12-12 2021-10-06 株式会社ソニー・インタラクティブエンタテインメント Image correction device, image correction method and program
US11270673B2 (en) 2018-05-28 2022-03-08 Sony Interactive Entertainment Inc. Image generation apparatus, image generation method, and program
JP7156937B2 (en) 2018-12-27 2022-10-19 フォルシアクラリオン・エレクトロニクス株式会社 Image processing device and image processing method
JP7324935B2 (en) * 2020-03-27 2023-08-10 株式会社安川電機 ROBOT CONTROL SYSTEM, ROBOT CONTROL METHOD, AND ROBOT CONTROL PROGRAM
WO2021199128A1 (en) * 2020-03-30 2021-10-07 株式会社ソニー・インタラクティブエンタテインメント Image data transfer device, image generation method and computer program
US20230139216A1 (en) * 2020-03-30 2023-05-04 Sony Interactive Entertainment Inc. Image display system, image processing device, and image display method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324799A (en) * 1992-05-15 1993-12-07 Hitachi Ltd Method and device for virtual reality control
JPH09190547A (en) * 1996-01-11 1997-07-22 Hitachi Ltd Image compositing and display device and its method
JPH11153987A (en) * 1997-11-19 1999-06-08 Olympus Optical Co Ltd Graphic display device
JP2004109994A (en) * 2002-08-30 2004-04-08 Olympus Corp Head mounted image display system device and image processing method therefor
JP2005309638A (en) * 2004-04-20 2005-11-04 Sony Corp Server device, display device, display system, display method and its program
JP5067935B2 (en) * 2007-09-14 2012-11-07 有限会社メイキング Simulation device

Also Published As

Publication number Publication date
JP2012033038A (en) 2012-02-16

Similar Documents

Publication Publication Date Title
JP5652037B2 (en) Simulated video generation device, method, and program
JP6898430B2 (en) Continuous Time Warping and Binocular Time Warping and Methods for Virtual Reality and Augmented Reality Display Systems
RU2638776C1 (en) Image generating device and method
EP3760287A1 (en) Method and device for generating video frames
US10410562B2 (en) Image generating device and image generating method
JP4989417B2 (en) Image display system, image display apparatus, control method therefor, and computer program
CN109479114A (en) Light-field capture
JP7030010B2 (en) Stereoscopic image depth compression device and stereoscopic image depth compression program
TWI653551B (en) Method and program for transmitting and playing virtual reality image
CN114401414A (en) Immersive live broadcast information display method and system and information push method
KR20170031676A (en) Method and program for transmitting and playing virtual reality image
JP2003153263A (en) Video display system and its method
KR101874111B1 (en) Method and program for playing virtual reality image
CN111345037B (en) Virtual reality image providing method and program using the same
JP7262973B2 (en) Information processing device, information processing method and program
JP2017134775A (en) Image processing apparatus, image processing method, and program
KR102192153B1 (en) Method and program for providing virtual reality image
JP5229921B2 (en) GAME DEVICE, GAME DEVICE CONTROL METHOD, AND PROGRAM
JP2020106655A (en) Information processor, information processing method and program
JP7354186B2 (en) Display control device, display control method, and display control program
EP4336459A1 (en) Information processing device, information processing method, and program
WO2024004321A1 (en) Image processing device, head-mounted display device, control method for image processing device, control method for head-mounted display device, and program
JP2011048545A (en) Image synthesizing device and program
JP2020071394A (en) Information processing device, information processing method, and program
KR20180101282A (en) Method and program for playing virtual reality image

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130604

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20130701

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130702

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140722

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140908

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141103

R150 Certificate of patent or registration of utility model

Ref document number: 5652037

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees