JP5787514B2 - Three-dimensional spatial data processing apparatus and program - Google Patents

Three-dimensional spatial data processing apparatus and program Download PDF

Info

Publication number
JP5787514B2
JP5787514B2 JP2010286990A JP2010286990A JP5787514B2 JP 5787514 B2 JP5787514 B2 JP 5787514B2 JP 2010286990 A JP2010286990 A JP 2010286990A JP 2010286990 A JP2010286990 A JP 2010286990A JP 5787514 B2 JP5787514 B2 JP 5787514B2
Authority
JP
Japan
Prior art keywords
polygon
line segment
dimensional
polygons
dimensional space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010286990A
Other languages
Japanese (ja)
Other versions
JP2012133701A (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.)
Shift Co Ltd
Original Assignee
Shift Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shift Co Ltd filed Critical Shift Co Ltd
Priority to JP2010286990A priority Critical patent/JP5787514B2/en
Publication of JP2012133701A publication Critical patent/JP2012133701A/en
Application granted granted Critical
Publication of JP5787514B2 publication Critical patent/JP5787514B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、平面多角形の形状を有する複数のポリゴンを用いて仮想的に表現される3次元空間について処理する技術に関し、特に、3次元の空間上の線分とポリゴンとの交差を判定する技術に関する。   The present invention relates to a technique for processing a three-dimensional space that is virtually represented by using a plurality of polygons having a planar polygonal shape, and in particular, determines an intersection between a line segment in a three-dimensional space and a polygon. Regarding technology.

近年、平面多角形の形状を有する複数のポリゴンを用いて3次元の仮想的なゲーム空間を表現し、当該ゲーム空間内でゲームを展開する3Dゲームが実現されている。
このような3Dゲームでは、例えば、ゲーム空間内を移動する物体とゲーム空間内に存在する他の物体との衝突を判定し、これらの衝突が検出された場合に所定の画像や音響等の出力を行って、物体同士の衝突が発生したことをゲームのプレイヤに知らせることなどが行われている。このような衝突の判定では、例えば、移動する物体の移動元(始点)と移動先(終点)を結ぶ線分が、他の物体を形成するポリゴンの面を通過するかを判定する交差判定により当該線分と交差するポリゴンの有無を調べ、該当するポリゴンが存在する場合に衝突が発生したと判定される。
In recent years, a 3D game in which a three-dimensional virtual game space is expressed using a plurality of polygons having a planar polygon shape and a game is developed in the game space has been realized.
In such a 3D game, for example, a collision between an object moving in the game space and another object existing in the game space is determined, and when these collisions are detected, a predetermined image, sound, or the like is output. To inform the game player that a collision between objects has occurred. In such a collision determination, for example, an intersection determination is performed to determine whether a line segment connecting a movement source (start point) and a movement destination (end point) of a moving object passes through a polygon surface forming another object. The presence / absence of a polygon that intersects the line segment is checked, and if a corresponding polygon exists, it is determined that a collision has occurred.

また、3Dゲームでは、例えば、ゲーム空間内を自律的に行動する自律キャラクタを用意してゲームの趣向性を高める工夫なども行われている。このような自律キャラクタの移動に係るルート探索用の技術としては、ナビゲーションメッシュ(Navigation Meshes)と呼ばれる技術が知られている。
ナビゲーションメッシュでは、例えば、背景やオブジェクト等を表現するためのポリゴンとは別に、キャラクタがゲーム内の場面(マップ等)を移動する際に利用する経路データを用意しておく。この経路データは、三角形ベースで構築された「道」であり、各三角形に対して隣の三角形との隣接情報を含めてあり、この経路データを用いてキャラクタが移動可能なルートの探索を行う。
ナビゲーションメッシュの詳細については、例えば、非特許文献1の「SECTION3 人工知能」の「3.6 ナビゲーションメッシュによる3D移動とパスの発見の単純化」、非特許文献2の「SECTION3 人工知能」の「3.7 高速なナビゲーションメッシュ」、非特許文献3の「SECTION3 人工知能」の「3.1 ナビゲーションメッシュによる自動的な退避場所探索」などに記載されている。
Further, in 3D games, for example, a device for preparing an autonomous character that acts autonomously in a game space to increase the game's preference is also performed. As a technique for route search related to the movement of such an autonomous character, a technique called a navigation mesh (Navigation Meshes) is known.
In the navigation mesh, for example, route data used when a character moves in a game scene (such as a map) is prepared separately from polygons for representing a background, an object, and the like. This route data is a “road” constructed on a triangle basis, and includes information on adjacent triangles to each triangle, and searches for routes on which the character can move using this route data. .
For details of the navigation mesh, for example, “3.6 Simplification of 3D movement and path discovery by navigation mesh” in “Section 3 Artificial Intelligence” in Non-Patent Document 1, “Section 3 Artificial Intelligence” in Non-Patent Document 2 “ 3.7 High-Speed Navigation Mesh ”,“ Section 3 Artificial Intelligence ”of Non-Patent Document 3,“ 3.1 Automatic Retrieval Location Search Using Navigation Mesh ”, and the like.

Mark DeLoura 他、「Game ProgrammingGems 日本語版」、株式会社ボーンデジタル、平成13年6月25日Mark DeLoura et al., “Game Programming Gems Japanese Version”, Bone Digital, Inc., June 25, 2001 Dante Treglia 他、「Game ProgrammingGems 3 日本語版」、株式会社ボーンデジタル、平成16年12月21日Dante Tregria et al., “Game Programming Gems 3 Japanese Version”, Bone Digital, Inc., December 21, 2004 Kim Pallister 他、「Game ProgrammingGems 5 日本語版」、株式会社ボーンデジタル、平成18年9月15日Kim Pallister et al., “Game Programming Gems 5 Japanese Version”, Born Digital, Inc., September 15, 2006

ここで、例えば、プレイヤの操作入力に応じて自己キャラクタが行動するアクションゲームのように即時応答性(リアルタイム性)が要求される3Dゲームでは、交差判定などの処理に手間取って遅延(タイムラグ)が生じるとゲームとしての興趣性が損なわれかねないことから、処理の負荷を軽減させて即時応答性を高めることが求められている。   Here, for example, in a 3D game that requires immediate responsiveness (real-time performance), such as an action game in which a self character behaves in response to an operation input by a player, a delay (time lag) is required due to processing such as intersection determination. When it occurs, the interest as a game may be impaired, and therefore it is required to reduce the processing load and increase the immediate response.

本発明は、上記のような従来の事情に鑑みなされたものであり、平面多角形の形状を有する複数のポリゴンを用いて表現される3次元空間について、3次元空間上の線分とポリゴンとの交差を判定する技術に関し、交差判定に係る処理の負荷を軽減することを目的としている。   The present invention has been made in view of the above-described conventional circumstances, and for a three-dimensional space expressed using a plurality of polygons having a planar polygonal shape, line segments and polygons on the three-dimensional space, The purpose of this technology is to reduce the processing load related to the intersection determination.

上記目的を達成するために、本発明では、平面多角形の形状を有する複数のポリゴンを用いて表現される3次元空間について、3次元空間上の線分とポリゴンとの交差を判定する3次元空間データ処理装置において、選定手段が、3次元空間上の線分及びポリゴンを2次元平面に投影し、2次元平面上においてポリゴンの辺が前記線分と交差するポリゴンを選定し、特定手段が、前記選定手段により選定されたポリゴンを対象にして、3次元空間上においてポリゴンの面が前記線分と交差するポリゴンを特定する。   In order to achieve the above object, in the present invention, for a three-dimensional space expressed using a plurality of polygons having a planar polygonal shape, a three-dimensional determination of the intersection of a line segment in the three-dimensional space and the polygon is performed. In the spatial data processing device, the selecting means projects line segments and polygons in a three-dimensional space onto a two-dimensional plane, selects polygons whose sides intersect with the line segments on the two-dimensional plane, and specifying means Then, for the polygon selected by the selection means, a polygon whose surface intersects the line segment in the three-dimensional space is specified.

すなわち、本発明に係る3次元空間データ処理装置では、3次元空間内に存在する全てのポリゴンを対象にして、当該ポリゴンの面が線分と交差するかの交差判定を行うのではなく、3次元空間に比べて処理負担が少ない2次元平面上でポリゴンの選定を行い、当該選定により絞り込まれたポリゴンを対象にして3次元空間上で交差判定を行うことで、3次元空間上で実行する交差判定の回数を減少させている。
このように、本発明では、3次元空間上での交差判定の対象とするポリゴンを2次元平面上で効果的に絞り込むことで、交差判定に係る処理の全体的な負荷を軽減している。
That is, in the three-dimensional spatial data processing apparatus according to the present invention, instead of determining whether or not the polygon plane intersects with a line segment for all polygons existing in the three-dimensional space, 3 Executes in 3D space by selecting polygons on a 2D plane with less processing burden compared to 3D space, and performing intersection determination on 3D space for polygons narrowed down by the selection The number of intersection judgments is reduced.
As described above, in the present invention, the overall load of the process related to the intersection determination is reduced by effectively narrowing down the polygons to be subjected to the intersection determination in the three-dimensional space on the two-dimensional plane.

また、一構成例として、始点と終点が定められた線分について、前記選定手段が、2次元平面において、前記線分の始点を内部に有するポリゴンの各辺について、前記線分と交差し且つ当該辺に対して前記線分の終点が外側にあるという条件を満たすかを判定する処理を行い、当該条件を満たす辺を共有する他のポリゴンの各辺について前記処理を行うことを、前記条件を満たす辺を有しないポリゴンが検出されるまで繰り返し、前記処理の対象となったポリゴンを選定するように構成すればよい。   As one configuration example, for a line segment with a start point and an end point, the selection unit intersects the line segment with respect to each side of a polygon having the start point of the line segment in a two-dimensional plane, and Performing the process of determining whether or not the condition that the end point of the line segment is on the outside is satisfied with respect to the side, and performing the process for each side of other polygons sharing the side that satisfies the condition. It may be configured to repeat the process until a polygon that does not have a side satisfying the condition is detected, and to select the polygon that is the object of the process.

このような構成によれば、線分とポリゴンの各辺との交差の判定を、線分の始点から終点に向かう一方向の処理を1回行うだけで済ませることができ、該当するポリゴンの選定を効率的に行うことができる。
なお、上記の構成例において、前記選定手段が、辺を共有するポリゴン同士を関連付けたリンクデータを用いて、前記条件を満たす辺を共有する他のポリゴンを特定するように構成すれば、辺を共有する他のポリゴンの特定を簡易に行うことができる。
According to such a configuration, the determination of the intersection between the line segment and each side of the polygon can be performed by performing processing in one direction from the start point to the end point of the line segment only once. Can be performed efficiently.
In the configuration example described above, if the selection unit is configured to identify other polygons sharing the side satisfying the condition using link data in which polygons sharing the side are associated with each other, the side is determined. It is possible to easily specify other polygons to be shared.

また、本発明は、上記のような3次元空間データ処理装置としてではなく、当該装置をコンピュータにより実現するためのプログラム(或いは当該プログラムをコンピュータ読み取り可能に記憶した記憶媒体)としても実現することができ、当該装置やプログラムなどにより実施される方法として把握することもできる。   In addition, the present invention can be realized not as a three-dimensional spatial data processing apparatus as described above, but also as a program for realizing the apparatus by a computer (or a storage medium storing the program in a computer-readable manner). It can also be grasped as a method implemented by the device or program.

本発明によれば、3次元空間内に存在する全てのポリゴンを対象にして、当該ポリゴンの面が線分と交差するかの交差判定を行うのではなく、3次元空間に比べて処理負担が少ない2次元平面上でポリゴンの選定を行い、当該選定により絞り込まれたポリゴンを対象にして3次元空間上で交差判定を行うため、3次元空間上で実行する交差判定の回数が減少される。すなわち、3次元空間上での交差判定の対象とするポリゴンが2次元平面上で効果的に絞り込まれるので、交差判定に係る処理の全体的な負荷が軽減される。   According to the present invention, all polygons existing in the three-dimensional space are targeted, and instead of determining whether the surface of the polygon intersects with the line segment, the processing load is larger than that in the three-dimensional space. Since polygons are selected on a small number of two-dimensional planes, and intersection determination is performed on the three-dimensional space for the polygons narrowed down by the selection, the number of intersection determinations performed on the three-dimensional space is reduced. In other words, since the polygons to be subjected to the intersection determination in the three-dimensional space are effectively narrowed down on the two-dimensional plane, the overall load of the processing relating to the intersection determination is reduced.

本発明の一実施形態に係るゲーム装置のハードウェア構成を例示する図である。It is a figure which illustrates the hardware constitutions of the game device which concerns on one Embodiment of this invention. 本発明の一実施形態に係るゲーム装置の機能ブロックを例示する図である。It is a figure which illustrates the functional block of the game device which concerns on one Embodiment of this invention. 本発明の一実施形態に係るゲーム装置による衝突判定を説明する図である。It is a figure explaining the collision determination by the game device which concerns on one Embodiment of this invention. 本発明の一実施形態に係るゲーム装置による衝突判定を説明する図である。It is a figure explaining the collision determination by the game device which concerns on one Embodiment of this invention. 本発明の一実施形態に係るゲーム装置による衝突判定を説明する図である。It is a figure explaining the collision determination by the game device which concerns on one Embodiment of this invention. 本発明の一実施形態に係るゲーム装置により候補選定処理の処理フローを例示する図である。It is a figure which illustrates the processing flow of candidate selection processing with the game device which concerns on one Embodiment of this invention. 本発明の一実施形態に係るゲーム装置による候補選定処理を説明する図である。It is a figure explaining candidate selection processing by the game device concerning one embodiment of the present invention. 本発明の一実施形態に係るゲーム装置におけるポリゴンのデータを例示する図である。It is a figure which illustrates polygon data in the game device concerning one embodiment of the present invention.

本発明の一実施形態について図面を参照して説明する。
図1には、本発明の一実施形態に係る3次元空間データ処理装置として動作するゲーム装置のハードウェア構成を例示してある。
本例のゲーム装置は、各種演算処理を行うCPU(Central Proccessing Unit)11、CPU11の作業領域となるRAM(Random Access Memory)12、基本的な制御プログラムを記録したROM(Read Only Memory)13、他の装置と有線又は無線により通信を行う通信部14、プレイヤからの操作入力をキーボタン等により受け付ける操作受付部15、ゲーム画像をディスプレイ(表示装置)により出力する画像出力部16、ゲーム音声をスピーカ(音響装置)により出力する音声出力部17、装置に装填された外部媒体にアクセスする外部媒体アクセス部18、といったハードウェア資源を有している。
An embodiment of the present invention will be described with reference to the drawings.
FIG. 1 illustrates a hardware configuration of a game device that operates as a three-dimensional spatial data processing device according to an embodiment of the present invention.
The game apparatus of this example includes a CPU (Central Processing Unit) 11 that performs various arithmetic processes, a RAM (Random Access Memory) 12 that is a work area of the CPU 11, a ROM (Read Only Memory) 13 that records a basic control program, A communication unit 14 that communicates with other devices by wire or wireless, an operation reception unit 15 that receives an operation input from a player by a key button or the like, an image output unit 16 that outputs a game image on a display (display device), and a game sound It has hardware resources such as an audio output unit 17 that outputs from a speaker (audio device) and an external medium access unit 18 that accesses an external medium loaded in the apparatus.

本例のゲーム装置は、ゲームプログラムを記憶した外部媒体を装置に装填した状態で起動されると、外部媒体アクセス部18により当該外部媒体からゲームプログラムを読み出してRAM12に展開し、これをCPU11により演算処理させることで、ゲームプログラムを実行する。すなわち、本例のゲーム装置は、本発明の一実施形態に係るゲームプログラムを記憶した外部媒体を用いることで、本発明の一実施形態に係る3次元空間データ処理装置として動作する。   When the game apparatus of this example is activated with an external medium storing a game program loaded in the apparatus, the external medium access unit 18 reads out the game program from the external medium and develops it in the RAM 12, which is loaded by the CPU 11. The game program is executed by performing arithmetic processing. That is, the game apparatus of this example operates as a three-dimensional spatial data processing apparatus according to an embodiment of the present invention by using an external medium that stores a game program according to the embodiment of the present invention.

なお、外部媒体としては、例えば、DVD(Digital Versatile Disc)−ROM、CD(Compact Disc)−ROM、メモリーカートリッジなどの種々の記憶媒体を用いることができ、記憶媒体に応じた形式のアクセス機構を外部媒体アクセス部18として設ければよい。
また、外部媒体アクセス部18により外部媒体からゲームプログラムを読み取る構成ではなく、例えば、通信部14により外部のサーバ装置からゲームプログラムを受信し、これをRAM12に展開してCPU11により演算処理させるようにしてもよい。
また、本例のゲーム装置は、上記のハードウェア資源を一体的に備えた携帯型のゲーム装置であるが、例えば、装置本体とは別体に設けられたディスプレイやスピーカによりゲーム画像や音声を出力する据置型のゲーム装置としてもよい。
As an external medium, for example, various storage media such as a DVD (Digital Versatile Disc) -ROM, a CD (Compact Disc) -ROM, and a memory cartridge can be used, and an access mechanism of a format corresponding to the storage medium can be used. The external medium access unit 18 may be provided.
In addition, the game program is not read from the external medium by the external medium access unit 18. For example, the game program is received from the external server device by the communication unit 14, and is expanded in the RAM 12 and is processed by the CPU 11. May be.
In addition, the game device of this example is a portable game device that is integrally provided with the above hardware resources. For example, a game image or sound is displayed by a display or a speaker provided separately from the device body. It may be a stationary game device that outputs.

本例のゲーム装置は、一例として、平面多角形の形状を有する複数のポリゴンを用いて表現される3次元の仮想的なゲーム空間内において、プレイヤの操作入力に応じて行動する自己キャラクタとコンピュータの制御により自律的に行動する敵キャラクタとが対戦するゲームを提供するものであり、自己キャラクタや敵キャラクタ等のキャラクタオブジェクトとゲーム空間内の地形や構造物等の背景オブジェクトとの衝突を判定し、これらのオブジェクトの衝突が検出された場合に所定の画像や音響等の出力を行って、衝突が発生したことをプレイヤに知らせるようにしてある。   As an example, the game device of this example includes a self-character and a computer that act in response to a player's operation input in a three-dimensional virtual game space expressed using a plurality of polygons having a planar polygon shape. This game provides a game in which an enemy character that acts autonomously under the control of the game, and determines whether a collision between a character object such as a self-character or an enemy character and a background object such as a terrain or a structure in the game space When a collision between these objects is detected, a predetermined image or sound is output to notify the player that the collision has occurred.

本例のゲーム装置では、このような3次元のゲーム空間内におけるオブジェクトの衝突検出を、図2に例示するような機能部により実現する。
すなわち、本例のゲーム装置は、キャラクタオブジェクトと背景オブジェクトとの衝突を検出する衝突検出部21と、これらのオブジェクトを形成するポリゴンのデータを記憶するポリゴンデータ記憶部24と、を備えている。
また、衝突検出部21は、背景オブジェクトを形成する複数のポリゴンの中からキャラクタオブジェクトが衝突する候補のポリゴンを選定する候補選定処理を行う候補選定部22と、候補選定部22により選定された候補のポリゴンを対象にして、キャラクタオブジェクトの移動予定の経路を示す移動線分との交差を判定する交差判定処理を行い、キャラクタオブジェクトが衝突するポリゴンを特定する交差判定部23と、を有している。
In the game apparatus of this example, such collision detection of objects in the three-dimensional game space is realized by a functional unit as illustrated in FIG.
That is, the game device of this example includes a collision detection unit 21 that detects a collision between a character object and a background object, and a polygon data storage unit 24 that stores data of polygons that form these objects.
The collision detection unit 21 also includes a candidate selection unit 22 that performs a candidate selection process for selecting a candidate polygon that the character object collides from among a plurality of polygons forming the background object, and the candidate selected by the candidate selection unit 22. An intersection determining unit 23 that performs an intersection determination process for determining an intersection with a moving line segment that indicates a path of the character object to be moved, and identifies a polygon that the character object collides with. Yes.

候補選定部22による候補選定処理及び交差判定部23による交差判定処理について、図3〜図5を参照して説明する。
図3には、3角形形状のポリゴンを用いて形成された背景オブジェクトを有する3次元のゲーム空間内において、キャラクタオブジェクトが位置Tから位置T’へ向かって移動しようとしている状況を示してある。また、キャラクタオブジェクトの移動について、移動元(始点)を位置Tとし且つ移動先(終点)を位置T’とした有向線分(ベクトル)である移動線分Lで表現している。
The candidate selection process by the candidate selection unit 22 and the intersection determination process by the intersection determination unit 23 will be described with reference to FIGS.
FIG. 3 shows a situation where a character object is moving from position T to position T ′ in a three-dimensional game space having a background object formed using a triangular polygon. Further, the movement of the character object is expressed by a moving line segment L which is a directed line segment (vector) having the moving source (starting point) as the position T and the moving destination (end point) as the position T ′.

ここで、背景オブジェクトのポリゴンを成す3角形の各頂点及びキャラクタオブジェクトの移動線分Lの始点(位置T)並びに終点(位置T’)の各点は、3次元の座標値(x,y,z)で表現されるものとする。なお、x座標は、3次元空間における幅方向(X軸方向)の座標であり、y座標は、3次元空間における高さ方向(Y軸方向)の座標であり、z座標は、3次元空間における奥行き方向(Z軸方向)の座標である。また、各軸の方向は、所定の視点方向を基準に定められている。   Here, each vertex of the triangle forming the polygon of the background object and each point of the start point (position T) and end point (position T ′) of the moving line segment L of the character object are represented by three-dimensional coordinate values (x, y, z). The x coordinate is a coordinate in the width direction (X-axis direction) in the three-dimensional space, the y coordinate is a coordinate in the height direction (Y-axis direction) in the three-dimensional space, and the z coordinate is a three-dimensional space. Are coordinates in the depth direction (Z-axis direction). The direction of each axis is determined based on a predetermined viewpoint direction.

候補選定部22の候補選定処理では、キャラクタオブジェクトの移動予定の経路を示す移動線分のデータ及びポリゴンデータ記憶部24に記憶された背景オブジェクトのポリゴンのデータに基づいて、交差判定部23による交差判定処理の対象とするポリゴン(キャラクタオブジェクトが衝突する候補のポリゴン)を選定する。
具体的には、候補選定部22は、3次元空間上の背景オブジェクトのポリゴン及びキャラクタオブジェクトの移動線分を2次元平面に投影し、2次元平面上においてポリゴンの辺がキャラクタオブジェクトの移動線分と交差するポリゴンを検索し、該当するポリゴンをキャラクタオブジェクトが衝突する候補のポリゴンに選定して交差判定部23に供給する。例えば、XZ平面において候補のポリゴンの検索を行う場合には、各点(ポリゴンの各頂点及び移動線分の各端点)を示す3次元の座標値(x,y,z)のうちの2次元の座標値(x,z)を用いることでXZ平面への投影結果が得られるので、2次元の座標値(x,z)を用いてポリゴンの辺と移動線分との交差を判定すればよい。
In the candidate selection process of the candidate selection unit 22, the intersection determination unit 23 performs the intersection based on the movement line segment data indicating the movement path of the character object and the polygon data of the background object stored in the polygon data storage unit 24. A polygon (candidate polygon with which a character object collides) is selected as a target of determination processing.
Specifically, the candidate selection unit 22 projects the polygons of the background object and the character object in a three-dimensional space onto a two-dimensional plane, and the sides of the polygon on the two-dimensional plane are the movement lines of the character object. Are searched for, and the corresponding polygon is selected as a candidate polygon with which the character object collides, and is supplied to the intersection determination unit 23. For example, when searching for candidate polygons in the XZ plane, two-dimensional of the three-dimensional coordinate values (x, y, z) indicating each point (each vertex of the polygon and each end point of the moving line segment) As a result of projection onto the XZ plane can be obtained by using the coordinate values (x, z), the intersection of the polygon side and the moving line segment can be determined using the two-dimensional coordinate values (x, z). Good.

図4には、XZ平面においてポリゴンの検索を行った結果を例示してある。図4では、XZ平面において移動線分Lと交差する辺を有するポリゴンに斜めハッチパターンを付してあり、背景オブジェクトを形成する多数のポリゴンのうちの12個のポリゴンが選定されている。当該選定されたポリゴンは、3次元空間において移動線分Lと交差する可能性があるポリゴンであり、交差判定部23による交差判定処理の対象となる。   FIG. 4 illustrates the result of searching for polygons in the XZ plane. In FIG. 4, diagonal hatch patterns are given to polygons having sides intersecting with the moving line segment L in the XZ plane, and 12 polygons among a large number of polygons forming the background object are selected. The selected polygon is a polygon that may cross the moving line segment L in the three-dimensional space, and is a target of intersection determination processing by the intersection determination unit 23.

交差判定部23の交差判定処理では、候補選定部22により選定されたポリゴンを対象にして、3次元空間上においてポリゴンの面がキャラクタオブジェクトの移動線分と交差するか否かを判定し、ポリゴンの面がキャラクタオブジェクトの移動線分と交差するポリゴン(キャラクタオブジェクトが衝突するポリゴン)を特定する。3次元空間におけるポリゴンの面と線分との交差は種々の公知技術を用いて判定することができ、詳細な説明については割愛する。   In the intersection determination process of the intersection determination unit 23, for the polygon selected by the candidate selection unit 22, it is determined whether the surface of the polygon intersects the moving line segment of the character object in the three-dimensional space. Specifies a polygon (polygon with which the character object collides) whose surface intersects the moving line of the character object. The intersection between the polygonal surface and the line segment in the three-dimensional space can be determined using various known techniques, and a detailed description thereof will be omitted.

図5の例では、移動線分Lと交差するポリゴンとして2つのポリゴンが特定されている。なお、選定された各ポリゴンの面と移動線分Lとの交差判定を、移動線分Lの始点(位置T)から終点(位置T’)に向かう方向に沿ったポリゴン順に実行し、ポリゴンの面が移動線分Lに交差するポリゴンが見付かった時点で処理を終了してもよい。この場合には、キャラクタオブジェクトが最初に衝突するポリゴン(移動線分Lの始点(位置T)側に位置するポリゴン)のみが特定される。   In the example of FIG. 5, two polygons are specified as polygons that intersect the moving line segment L. In addition, the intersection determination between the selected polygonal surface and the moving line segment L is executed in the order of the polygons along the direction from the starting point (position T) to the ending point (position T ′) of the moving line segment L. The process may be terminated when a polygon whose surface intersects the movement line segment L is found. In this case, only the polygon with which the character object collides first (polygon located on the start point (position T) side of the moving line segment L) is specified.

図6には、候補選定部22による候補選定処理の処理フローを例示してある。
候補選定処理では、2次元平面(例えば、XZ平面)において、移動線分の始点を内部に有するポリゴンの各辺について、移動線分と交差し且つ当該辺に対して移動線分の終点が外側にあるという条件を満たすかを判定する(ステップS11)。
ステップS11において、条件を満たす辺が見付からなかった場合には処理を終了し、条件を満たす辺が見付かった場合には当該辺を共有する他のポリゴンを検索する(ステップS12)。
ステップS12において、他のポリゴンが検索されなかった場合には処理を終了し、他のポリゴンが検索された場合にはステップS11に戻り、当該他のポリゴンについて上記の処理(ステップS11、S12)を行うことを、上記の条件を満たす辺を有しないポリゴンが検出されるまで繰り返す。
そして、これらの処理の対象となった各ポリゴンを、交差判定部23による交差判定処理の対象に選定する。
FIG. 6 illustrates a processing flow of candidate selection processing by the candidate selection unit 22.
In the candidate selection process, for each side of the polygon having the starting point of the moving line segment inside in a two-dimensional plane (for example, the XZ plane), the moving line segment intersects with the moving line segment and the end point of the moving line segment is outside the corresponding side. It is determined whether or not the condition that the condition is present is satisfied (step S11).
In step S11, if a side that satisfies the condition is not found, the process ends. If a side that satisfies the condition is found, another polygon that shares the side is searched (step S12).
If no other polygon is found in step S12, the process is terminated. If another polygon is found, the process returns to step S11, and the above process (steps S11, S12) is performed for the other polygon. This is repeated until a polygon that does not have an edge that satisfies the above conditions is detected.
Then, each polygon subjected to these processes is selected as an object of intersection determination processing by the intersection determination unit 23.

上記の候補選定処理について、図7に例示する具体例を参照しつつ説明する。
図7には、2次元平面に、ポリゴンa、ポリゴンb、ポリゴンcと、移動線分ABを投影した様子を示してある。移動線分ABは、2次元平面上でポリゴンaの内部に始点Aを有し且つポリゴンcの内部に終点Bを有している。なお、ポリゴンaは、頂点0,頂点1,頂点2を有しており、ポリゴンbは、頂点0,頂点2,頂点3を有しており、ポリゴンcは、頂点2,頂点4,頂点3を有している。
The candidate selection process will be described with reference to a specific example illustrated in FIG.
FIG. 7 shows a state in which a polygon a, a polygon b, a polygon c, and a moving line segment AB are projected onto a two-dimensional plane . Moving segment AB has an end point B on the inside of and polygons c has an internal start point A of the polygon a on a two-dimensional plane. Polygon a has vertex 0, vertex 1 and vertex 2, polygon b has vertex 0, vertex 2 and vertex 3, and polygon c has vertex 2, vertex 4 and vertex 3 have.

本例では、上記のポリゴンについて、図8に例示するようなデータをポリゴンデータ記憶部24に記憶している。
図8(a)は頂点データを例示しており、ポリゴンの各頂点となる3次元空間上の点の座標値を保持している。
図8(b)はポリゴンデータを例示しており、ポリゴン毎に、ポリゴンの各頂点及びその並び順を特定する情報を保持している。本例では、ポリゴンの各頂点の並びにより当該ポリゴン面の向き(表裏)も定めている。すなわち、並び順に沿って各頂点を結んでポリゴンの輪郭線を描いた場合に、反時計回りの輪郭線であれば表面(背景オブジェクトの外面側)とし、時計回りの輪郭線であれば裏面(背景オブジェクトの内面側)とする。例えば、ポリゴンaの輪郭線は、頂点0→頂点1を結ぶ外辺と、頂点1→頂点2を結ぶ外辺と、頂点2→頂点0を結ぶ外辺とで表現され、これらの外辺を繋げた輪郭線が反時計回りであれば表面と判断される。
In this example, for the above polygon, data as illustrated in FIG. 8 is stored in the polygon data storage unit 24.
FIG. 8A illustrates the vertex data, and holds the coordinate values of the points on the three-dimensional space that are the vertices of the polygon.
FIG. 8B illustrates polygon data, and holds information for specifying each vertex of the polygon and the arrangement order thereof for each polygon. In this example, the direction (front and back) of the polygon surface is determined by the arrangement of the vertices of the polygon. That is, when the polygonal outline is drawn by connecting the vertices along the arrangement order, if it is a counterclockwise outline, it will be the front surface (the outer surface side of the background object), and if it is a clockwise outline, the back surface ( The inner side of the background object). For example, the outline of the polygon a is expressed by an outer side connecting vertex 0 → vertex 1, an outer side connecting vertex 1 → vertex 2, and an outer side connecting vertex 2 → vertex 0. If the connected contour line is counterclockwise, it is determined as the surface.

図8(c)はリンクデータを例示しており、ポリゴンの輪郭線を成す外辺(2つの頂点間を結ぶ線)の終点となる頂点毎に、当該終点に至る外辺の始点となる頂点と当該外辺を有するポリゴンとの組を特定する情報を保持している。このようなリンクデータを用いれば、或るポリゴンの外辺を共有する他のポリゴンの特定を簡易に行える。すなわち、例えば、ポリゴンaの各外辺のうち、頂点2→頂点0を結ぶ外辺(始点を頂点2とし且つ終点を頂点0とした外辺)を共有する他のポリゴンは、頂点0→頂点2を結ぶ外辺(始点を頂点0とし且つ終点を頂点2とした外辺)を有するポリゴンbであることを、リンクデータの参照により特定できる。   FIG. 8C illustrates link data. For each vertex that is the end point of the outer side (line connecting two vertices) that forms the outline of the polygon, the vertex that is the starting point of the outer side that reaches the end point And information specifying a set of polygons having the outer side. By using such link data, it is possible to easily specify other polygons sharing the outer side of a certain polygon. That is, for example, among the outer sides of the polygon a, other polygons sharing the outer side connecting the vertex 2 → vertex 0 (the outer side having the start point as the vertex 2 and the end point as the vertex 0) are the vertex 0 → vertex It can be specified by referring to the link data that the polygon b has the outer side connecting 2 (the outer side having the start point as vertex 0 and the end point as vertex 2).

候補選定処理では、まず、移動線分ABの始点Aを内部に有するポリゴンaの各外辺について、移動線分ABと交差し且つ当該外辺に対して移動線分ABの終点Bが外側にあるという条件を満たすかを判定する。この結果、頂点2→頂点0を結ぶ外辺が特定される。
次に、リンクデータを参照して、頂点2→頂点0を結ぶ外辺とは逆向きの外辺を有するポリゴンを検索する。この結果、頂点0→頂点2を結ぶ外辺を有するポリゴンbが特定される。
次に、ポリゴンbの各外辺について、移動線分ABと交差し且つ当該外辺に対して移動線分ABの終点Bが外側にあるという条件を満たすかを判定する。この結果、頂点2→頂点3を結ぶ外辺が特定される。
次に、リンクデータを参照して、頂点2→頂点3を結ぶ外辺とは逆向きの外辺を有するポリゴンを検索する。この結果、頂点3→頂点2を結ぶ外辺を有するポリゴンcが特定される。
次に、ポリゴンbの各外辺について、移動線分ABと交差し且つ当該外辺に対して移動線分ABの終点Bが外側にあるという条件を満たすかを判定する。この結果、当該条件を満たす辺が存在しないので、検索を終了する。
そして、上記の処理の対象となったポリゴンa、b、cを、交差判定部23による交差判定処理の対象に選定する。
In the candidate selection process, first, for each outer side of the polygon a having the starting point A of the moving line segment AB inside, the moving line segment AB intersects the moving line segment AB and the end point B of the moving line segment AB is outside the outer side. It is determined whether or not a certain condition is satisfied. As a result, the outer side connecting vertex 2 → vertex 0 is specified.
Next, referring to the link data, a polygon having an outer side opposite to the outer side connecting vertex 2 → vertex 0 is searched. As a result, the polygon b having the outer side connecting the vertex 0 to the vertex 2 is specified.
Next, for each outer side of the polygon b, it is determined whether or not the condition that the moving line segment AB intersects with the moving line segment AB and the end point B of the moving line segment AB is outside the outer side is satisfied. As a result, the outer side connecting vertex 2 → vertex 3 is specified.
Next, referring to the link data, a polygon having an outer side opposite to the outer side connecting vertex 2 → vertex 3 is searched. As a result, a polygon c having an outer side connecting vertex 3 → vertex 2 is specified.
Next, for each outer side of the polygon b, it is determined whether or not the condition that the moving line segment AB intersects with the moving line segment AB and the end point B of the moving line segment AB is outside the outer side is satisfied. As a result, there is no edge that satisfies the condition, and the search is terminated.
Then, the polygons a, b, and c that are the objects of the above processing are selected as the objects of the intersection determination process by the intersection determination unit 23.

なお、或る外辺に対して移動線分の終点が外側にあるか否かは、移動線分と外辺との外積により判定できる。ポリゴンの輪郭線(各外辺)が反時計回りの場合に表向きとした本例では、移動線分のベクトルについて外辺のベクトルとの外積を算出した場合に、外積の符号が正であれば移動線分の終点が内側にあると判定し、外積の符号が負であれば移動線分の終点が外側にあると判定する。   Note that whether or not the end point of the moving line segment is outside the certain outer side can be determined by the outer product of the moving line segment and the outer side. In this example, when the polygon outline (each outer edge) is face-up counterclockwise, when the outer product of the moving line segment vector and the outer vector is calculated, the sign of the outer product is positive. It is determined that the end point of the moving line segment is inside, and if the sign of the outer product is negative, it is determined that the end point of the moving line segment is outside.

本例では、候補選定部22による一連の候補選定処理が終了した後に、これにより選定された複数のポリゴンを順番に対象にして、交差判定部23による交差判定処理を行っているが、例えば、候補選定部22によりポリゴンが選定される毎に、当該選定されたポリゴンを対象にして交差判定部23による交差判定処理を行うようにしてもよい。   In this example, after a series of candidate selection processes by the candidate selection unit 22 is completed, the intersection determination process by the intersection determination unit 23 is performed on a plurality of polygons selected in this order in order. Each time the candidate selection unit 22 selects a polygon, the intersection determination process by the intersection determination unit 23 may be performed on the selected polygon.

以上のように、本例のゲーム装置では、候補選定部22が、3次元空間上の背景オブジェクトのポリゴン及びキャラクタオブジェクトの移動線分を2次元平面に投影し、2次元平面上においてポリゴンの辺がキャラクタオブジェクトの移動線分と交差するポリゴンを選定して交差判定部23に供給し、交差判定部23が、候補選定部22により選定されたポリゴンを対象にして、3次元空間上においてポリゴンの面がキャラクタオブジェクトの移動線分と交差するか否かを判定し、ポリゴンの面がキャラクタオブジェクトの移動線分と交差するポリゴン(キャラクタオブジェクトが衝突するポリゴン)を特定している。
このように、本例のゲーム装置では、3次元空間上での交差判定の対象とするポリゴンを2次元平面上で効果的に絞り込むことで、衝突判定に係る処理負担を軽減している。
As described above, in the game device of this example, the candidate selection unit 22 projects the polygon of the background object and the moving line of the character object on the two-dimensional plane in the three-dimensional space, and the polygon side on the two-dimensional plane. Selects a polygon that intersects the moving line segment of the character object and supplies the polygon to the intersection determination unit 23, and the intersection determination unit 23 targets the polygon selected by the candidate selection unit 22 as a polygon in a three-dimensional space. It is determined whether or not the plane intersects with the moving line segment of the character object, and a polygon (polygon with which the character object collides) whose polygon plane intersects with the moving line segment of the character object is specified.
Thus, in the game device of this example, the processing load related to the collision determination is reduced by effectively narrowing down the polygons to be subjected to the intersection determination on the three-dimensional space on the two-dimensional plane.

なお、以上の説明では、3角形形状のポリゴンを用いたが、例えば6角形形状のポリゴンなど、他の形状のポリゴンを用いるようにしてもよい。
また、本発明は、キャラクタオブジェクトと背景オブジェクトとの衝突判定以外に適用してもよく、例えば、キャラクタオブジェクト同士の衝突判定に適用してもよい。また、例えば、キャラクタオブジェクトの視線の先にある背景オブジェクトを特定するに際し、視線の向きを示す線分と背景オブジェクトのポリゴンとの交差判定に適用してもよい。
また、本発明は、ゲーム装置以外の3次元空間データ処理装置にも適用することができ、例えば、航空機やレーシングカー等の訓練を仮想的な3次元空間上で行うための装置における衝突判定などに適用してもよい。
In the above description, a triangular polygon is used. However, other polygons such as a hexagonal polygon may be used.
Further, the present invention may be applied in addition to the collision determination between the character object and the background object. For example, the present invention may be applied to the collision determination between character objects. Further, for example, when specifying the background object ahead of the line of sight of the character object, it may be applied to the intersection determination between the line segment indicating the direction of the line of sight and the polygon of the background object.
The present invention can also be applied to a three-dimensional space data processing device other than a game device, for example, collision determination in a device for performing training of an aircraft, a racing car, etc. in a virtual three-dimensional space. You may apply to.

11:CPU、 12:RAM、 13:ROM、 14:通信部、 15:操作受付部、 16:画像出力部、 17:音声出力部、 18:外部媒体アクセス部、
21:衝突検出部、 22:候補選定部、 23:交差判定部、 24:ポリゴンデータ記憶部
11: CPU, 12: RAM, 13: ROM, 14: Communication unit, 15: Operation receiving unit, 16: Image output unit, 17: Audio output unit, 18: External medium access unit,
21: Collision detection unit, 22: Candidate selection unit, 23: Intersection determination unit, 24: Polygon data storage unit

Claims (3)

平面多角形の形状を有する複数のポリゴンを用いて表現される3次元空間について、3次元空間上の線分とポリゴンとの交差を判定する3次元空間データ処理装置において、
3次元空間上の線分及びポリゴンを2次元平面に投影し、2次元平面上において前記線分と交差する辺を有するポリゴンを選定する選定手段と、
前記選定手段により選定されたポリゴンを対象にして、3次元空間上においてポリゴンの面が前記線分と交差するか否かを判定する判定手段と、
を備え、
前記線分は3次元空間上の始点と終点が定められており、
前記選定手段は、前記線分及びポリゴンが投影された2次元平面において、2次元平面上で前記線分の始点を内部に有するポリゴンの各辺について、前記線分と交差し且つ当該辺に対して前記線分の終点が外側にあるという条件を満たすかを判定する処理を行い、前記条件を満たす辺を共有する他のポリゴンの各辺について前記処理を行うことを、前記条件を満たす辺を有しないポリゴンが検出されるまで繰り返し、前記処理の対象となったポリゴンを前記判定手段による判定の対象として選定する、
ことを特徴とする3次元空間データ処理装置。
In a three-dimensional space data processing apparatus for determining the intersection of a line segment in a three-dimensional space and a polygon for a three-dimensional space expressed using a plurality of polygons having a planar polygon shape,
Selecting means for projecting line segments and polygons in a three-dimensional space onto a two-dimensional plane, and selecting polygons having sides intersecting the line segments on the two-dimensional plane;
Determination means for determining whether or not a surface of the polygon intersects the line segment in a three-dimensional space for the polygon selected by the selection means;
With
The line segment has a starting point and an ending point in a three-dimensional space,
In the two-dimensional plane on which the line segment and the polygon are projected, the selection means intersects the line segment with respect to each side of the polygon having the start point of the line segment on the two-dimensional plane. Processing to determine whether the condition that the end point of the line segment is outside is satisfied, and performing the processing for each side of other polygons sharing the edge that satisfies the condition, Repeat until a polygon that does not have is detected, and select the polygon to be processed as a determination target by the determination means.
A three-dimensional spatial data processing device.
前記3次元空間データ処理装置は、3次元空間上で辺を共有するポリゴン同士の関連を示すリンクデータを記憶する記憶手段を備え、
前記選定手段は、2次元平面において前記条件を満たす辺が存在する場合に、当該辺を共有する他のポリゴンとして、当該辺について前記リンクデータにより関連付けられた他のポリゴンを特定する、
ことを特徴とする請求項1に記載の3次元空間データ処理装置。
The three-dimensional spatial data processing device includes storage means for storing link data indicating a relationship between polygons sharing sides in a three-dimensional space,
The selection unit specifies, when there is a side satisfying the condition in the two-dimensional plane, as another polygon that shares the side, as another polygon associated by the link data for the side.
The three-dimensional spatial data processing device according to claim 1.
平面多角形の形状を有する複数のポリゴンを用いて表現される3次元空間について、3次元空間上の線分とポリゴンとの交差を判定する処理を実行するコンピュータに、
3次元空間上の線分及びポリゴンを2次元平面に投影し、2次元平面上において前記線分と交差する辺を有するポリゴンを選定する選定機能と、
前記選定機能により選定されたポリゴンを対象にして、3次元空間上においてポリゴンの面が前記線分と交差するか否かを判定する判定機能と、
を実現させるためのプログラムであって、
前記線分は3次元空間上の始点と終点が定められており、
前記選定機能は、前記線分及びポリゴンが投影された2次元平面において、2次元平面上で前記線分の始点を内部に有するポリゴンの各辺について、前記線分と交差し且つ当該辺に対して前記線分の終点が外側にあるという条件を満たすかを判定する処理を行い、前記条件を満たす辺を共有する他のポリゴンの各辺について前記処理を行うことを、前記条件を満たす辺を有しないポリゴンが検出されるまで繰り返し、前記処理の対象となったポリゴンを前記判定機能による判定の対象として選定する、
ことを特徴とするプログラム。
A computer that executes a process of determining the intersection between a line segment in a three-dimensional space and a polygon for a three-dimensional space expressed using a plurality of polygons having a planar polygonal shape,
A selection function for projecting line segments and polygons in a three-dimensional space onto a two-dimensional plane, and selecting polygons having sides intersecting the line segments on the two-dimensional plane;
A determination function for determining whether or not a polygon plane intersects the line segment in a three-dimensional space for the polygon selected by the selection function ;
Is a program for realizing
The line segment has a starting point and an ending point in a three-dimensional space,
In the two-dimensional plane on which the line segment and the polygon are projected, the selection function intersects the line segment with respect to each side of the polygon having the start point of the line segment on the two-dimensional plane. Processing to determine whether the condition that the end point of the line segment is outside is satisfied, and performing the processing for each side of other polygons sharing the edge that satisfies the condition, Repeat until a polygon that does not have is detected, and select the polygon to be processed as a determination target by the determination function .
A program characterized by that.
JP2010286990A 2010-12-24 2010-12-24 Three-dimensional spatial data processing apparatus and program Active JP5787514B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010286990A JP5787514B2 (en) 2010-12-24 2010-12-24 Three-dimensional spatial data processing apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010286990A JP5787514B2 (en) 2010-12-24 2010-12-24 Three-dimensional spatial data processing apparatus and program

Publications (2)

Publication Number Publication Date
JP2012133701A JP2012133701A (en) 2012-07-12
JP5787514B2 true JP5787514B2 (en) 2015-09-30

Family

ID=46649200

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010286990A Active JP5787514B2 (en) 2010-12-24 2010-12-24 Three-dimensional spatial data processing apparatus and program

Country Status (1)

Country Link
JP (1) JP5787514B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115272379B (en) * 2022-08-03 2023-11-28 上海新迪数字技术有限公司 Projection-based three-dimensional grid model outline extraction method and system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191743A (en) * 1993-12-27 1995-07-28 Toshiba Corp Moving route generation method

Also Published As

Publication number Publication date
JP2012133701A (en) 2012-07-12

Similar Documents

Publication Publication Date Title
CN108225358B (en) Vehicle navigation
US8466363B2 (en) Sound generation processing apparatus, sound generation processing method and a tangible recording medium
US8111257B2 (en) System and method for the generation of navigation graphs in real-time
US8882593B2 (en) Game processing system, game processing method, game processing apparatus, and computer-readable storage medium having game processing program stored therein
KR100506822B1 (en) Method for displaying three dimensional polygon on screen
JP2003150980A (en) Video game device, display method of character in video game, program, and recording medium
US20080186312A1 (en) Method, medium and apparatus detecting model collisions
JP5498437B2 (en) Information processing device, information processing method, information processing program, computer-readable recording medium storing information processing program, thickness region setting device, thickness region setting method, thickness region setting program, computer readable storing thickness region setting program Data structure related to various recording media and surfaces in virtual space
US10824775B2 (en) Simulation method and device for determining collision between objects
JP5263748B2 (en) Method, system and computer-readable recording medium for providing information about an object using a viewing frustum
JP5787514B2 (en) Three-dimensional spatial data processing apparatus and program
KR101500814B1 (en) Apparatus and method for generating bounding volume using intersection of spheres
JP2003022452A (en) Image processor and solid-shape display program
CN109242973A (en) A kind of crash tests method, apparatus, electronic equipment and storage medium
JP3581673B2 (en) Method for expressing movement of crowd, storage medium, and information processing apparatus
US9259646B2 (en) Object control device, computer readable storage medium storing object control program, and object control method
JP2017086542A (en) Image change system, method, and program
US11501496B2 (en) Navigation system and method using a bounding volume hierarchy
JP2006277672A (en) Three-dimensional model processing method
JP6572137B2 (en) Three-dimensional data processing apparatus and method
JP2013196648A (en) Information processing device, information processing method, program and computer readable storage medium
JP6512425B2 (en) 3D map display system
JP2005342360A (en) Group character movement control method, recording medium, simulation device and game device
WO2022202056A1 (en) Information processing device, information processing method, and program
KR102321704B1 (en) METHOD AND APPARATUS FOR RECONSTRUCTION OF 3D SPACE MODEL using adjacency plane information

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131206

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20140905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141014

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150331

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150522

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150728

R150 Certificate of patent or registration of utility model

Ref document number: 5787514

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250