KR100621867B1 - A method and appratus for transformation processing of 3_dimension graphic - Google Patents

A method and appratus for transformation processing of 3_dimension graphic Download PDF

Info

Publication number
KR100621867B1
KR100621867B1 KR1020050031805A KR20050031805A KR100621867B1 KR 100621867 B1 KR100621867 B1 KR 100621867B1 KR 1020050031805 A KR1020050031805 A KR 1020050031805A KR 20050031805 A KR20050031805 A KR 20050031805A KR 100621867 B1 KR100621867 B1 KR 100621867B1
Authority
KR
South Korea
Prior art keywords
feature point
shared
vertex
polygon
output
Prior art date
Application number
KR1020050031805A
Other languages
Korean (ko)
Inventor
오민석
Original Assignee
엠텍비젼 주식회사
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 엠텍비젼 주식회사 filed Critical 엠텍비젼 주식회사
Priority to KR1020050031805A priority Critical patent/KR100621867B1/en
Application granted granted Critical
Publication of KR100621867B1 publication Critical patent/KR100621867B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods

Abstract

본 발명은 3차원 객체를 나타내는 적어도 하나의 폴리곤을 변환 처리하는 방법에 있어서-상기 폴리곤은 복수의 특징점을 포함함-, 폴리곤의 복수의 특징점을 입력받는 단계, 각각의 특징점에 대하여 공유 특징점인지를 확인하는 단계, 각각의 특징점이 공유 특징점이 아닌 경우에, 월드 변환 처리 및 투영 변환 처리를 하여 출력 특징점을 산출하는 단계, 각각의 특징점이 공유 특징점인 경우에, 공유 특징점에 상응하는 미리 변환 완료된 출력 특징점을 추출하는 단계 및 산출된 출력 특징점 또는 추출된 출력 특징점을 저장하는 단계를 포함하는 3차원 그래픽 변환 처리 방법을 제공할 수 있다.The present invention relates to a method for transforming at least one polygon representing a three-dimensional object, the polygon comprising a plurality of feature points, receiving a plurality of feature points of the polygon, and whether each feature point is a shared feature point. Checking, if each feature point is not a shared feature point, calculating output feature points by performing a world transform process and a projection transform process; and if each feature point is a shared feature point, a pre-converted output corresponding to the shared feature point The method may include extracting a feature point and storing the calculated output feature point or the extracted output feature point.

3차원 그래픽, 가속 장치, 변환 장치, 변환 처리 장치 3D graphics, accelerators, converters, converters

Description

3차원 그래픽 변환 처리 방법 및 장치{A method and appratus for transformation processing of 3_dimension graphic}A method and appratus for transformation processing of 3_dimension graphic}

도 1은 종래 기술에 따른 3차원 그래픽 변환 처리 장치를 나타내는 도면.BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a diagram showing a three-dimensional graphic transformation processing apparatus according to the prior art.

도 2는 종래 기술에 따른 3차원 그래픽 변환 처리 과정을 설명하기 위한 도면.2 is a view for explaining a three-dimensional graphics conversion process according to the prior art.

도 3은 종래 기술에 따른 3차원 그래픽 변환 처리 과정을 나타내는 순서도.3 is a flow chart showing a three-dimensional graphics transformation process according to the prior art.

도 4는 본 발명의 바람직한 실시예에 따른 3차원 그래픽 변화 처리 장치를 나타내는 도면.4 illustrates a three-dimensional graphic change processing apparatus according to a preferred embodiment of the present invention.

도 5는 본 발명의 바람직한 실시예에 따른 3차원 그래픽 변환 처리 과정을 나타내는 순서도.5 is a flow chart showing a three-dimensional graphics transformation process according to a preferred embodiment of the present invention.

본 발명은 3차원 그래픽 변환 처리 방법 및 장치에 관한 것이다. The present invention relates to a three-dimensional graphics conversion processing method and apparatus.

최근 출시되는 거의 모든 게임이나 영상은 3차원 그래픽을 이용하여 구현된 다. 얼마전까지만 하여도 이러한 3차원 그래픽 영상은 소프트웨어적으로 구현되었기 때문에 웬만한 컴퓨터 성능이 되어도 640×480 256 컬러 모드 이상의 실행이 힘들었고 그래픽 화질이나 색감도 그리 좋은 편이 아니었다. 그러나 3차원 그래픽 가속 기능이 그래픽 프로세서에 내장되면서 CPU로 처리하는 것에 비하여 수십에서 수백배의 빠른 속도로 그래픽을 구현할 수 있게 되었으며 뛰어난 화질과 현실감으로 빠른 속도로 컴퓨터나 이동 통신 단말 등에 보급이 되어 이제는 기본적인 기능이 되고 있다.Almost every game or video released recently is implemented using 3D graphics. Until recently, these three-dimensional graphic images were implemented in software, so even at moderate computer performance, it was difficult to execute more than 640 × 480 256 color mode, and graphics quality and color were not good either. However, with 3D graphics acceleration built into the graphics processor, graphics can be realized at speeds of tens to hundreds of times faster than those processed by the CPU.It is now widely used in computers and mobile communication terminals with high image quality and realism. It is becoming a basic function.

3차원 가속 기능은 X, Y, Z 축으로 구성된 다각형을 이용하여 객체를 표현하고 이것을 2차원 평면인 컴퓨터나 이동 통신 단말 등의 디스플레이 상에 나타낼 수 있도록 2차원 그래픽으로 변환하는 처리를 하게 된다. 이 때 각종 그래픽 처리 기법이 동원되어 보다 현실감 있는 그래픽을 구현하게 된다.The 3D acceleration function expresses an object using a polygon composed of X, Y, and Z axes, and converts it into 2D graphics so that it can be displayed on a display such as a computer or a mobile communication terminal that is a 2D plane. At this time, various graphic processing techniques are mobilized to realize more realistic graphics.

3차원 그래픽 처리는 다음과 같은 과정으로 이루어진다. 먼저 삼각형으로 표현되어 있는 3차원 객체를 시점의 위치와 화면의 위치에 따라서 회전시키거나 수평 이동시키는 변환 작업이 수행된 후, 삼각형을 컴퓨터로 처리할 수 있도록 디지털화된 픽셀 단위로 분리시키는 작업이 이루어진다. 다음으로 픽셀에 텍스쳐를 입히고 밝기와 음영 정보를 부여하는 랜더링 작업이 이루어진다. 이렇게 모든 처리가 끝난 픽셀은 그래픽 메모리에 저장되고 램댁(RAMDAC; Random Access Memory Digital-Analog Converter)에 의해 디스플레이 상에 출력되는 것이다. Three-dimensional graphics processing consists of the following process. First, a transformation is performed to rotate or horizontally move a three-dimensional object represented by a triangle according to the position of the viewpoint and the position of the screen, and then separate the triangle into digitized pixels for computer processing. . Next, a rendering operation is performed to texture the pixels and provide brightness and shadow information. All processed pixels are stored in graphics memory and output on the display by a RAMDAC (Random Access Memory Digital-Analog Converter).

본 발명은 상기 그래픽 처리 과정 중 변환 과정에 관한 것이다.The present invention relates to a conversion process of the graphic processing.

종래 그래픽 변환 처리 과정에 대하여 도면을 참조하여 설명하기로 한다.A conventional graphic conversion process will be described with reference to the drawings.

도 1은 종래 기술에 따른 3차원 그래픽 변환 처리 장치를 나타내는 도면이다. 도 1을 참조하면, 종래 기술에 따른 그래픽 변환 처리 장치는 입력 정점 레지스터(103), 월드 변환 행렬 곱셈 장치(105), 투영 변환 행렬 곱셈 장치(107), 출력 정점 레지스터(109)를 포함한다. 3차원 객체를 나타내는 삼각형이 입력(101)되면 삼각형의 각 정점이 입력 정점 레지스터(103)에 저장된다. 이 때 각 정점의 공간 좌표는 로컬(Local) 좌표계를 사용한다.1 is a view showing a three-dimensional graphics conversion processing apparatus according to the prior art. Referring to FIG. 1, the graphic transformation processing apparatus according to the prior art includes an input vertex register 103, a world transformation matrix multiplication apparatus 105, a projection transformation matrix multiplication apparatus 107, and an output vertex register 109. When a triangle representing the three-dimensional object is input 101, each vertex of the triangle is stored in the input vertex register 103. In this case, the spatial coordinates of each vertex use a local coordinate system.

월드 변환 행렬 곱셈 장치(105)는 입력 레지스터(103)에 입력되어 있는 각 정점의 좌표를 로컬 좌표계에서 월드 좌표계로 변환해 주는 기능을 하는 장치이다. 월드 변환 행렬 곱셈 장치(105)에 적용되는 수식은 다음과 같다.The world transformation matrix multiplier 105 is a device that converts coordinates of each vertex input to the input register 103 from a local coordinate system to a world coordinate system. The equation applied to the world transform matrix multiplication apparatus 105 is as follows.

Figure 112005019959518-pat00001
Figure 112005019959518-pat00001

여기서 mij는 월드 변환 행렬의 각 성분을 나타내며, Vxo는 입력 정점의 X 좌표를, Vyo는 입력 정점의 Y좌표를, Vzo는 입력 정점의 Z좌표를 나타낸다. Vwo는 RHW(Reciprocal Homogeneous W) 값으로 동치 좌표(homogeneous coordinates)를 일반적인 좌표로 변환하는데 사용되는 변수이며, 일반적으로 입력 정점의 W값은 1로 설정된다. 각 행렬의 곱셈 연산을 통하여 월드 변환된 정점의 좌표가 생성되며, Vxm은 월드 변환된 정점의 X 좌표를, Vym은 월드 변환된 정점의 Y좌표를, Vzm은 월 드 변환된 정점의 Z좌표를, Vwm은 월드 변환된 정점의 W좌표를 나타낸다.Where m ij represents each component of the world transformation matrix, Vxo represents the X coordinate of the input vertex, Vyo represents the Y coordinate of the input vertex, and Vzo represents the Z coordinate of the input vertex. Vwo is a Reciprocal Homogeneous W (RHW) variable used to convert homogeneous coordinates to normal coordinates. In general, the W value of the input vertex is set to one. The multiplication operation of each matrix generates the coordinates of the world-converted vertex, Vxm is the X-coordinate of the world-converted vertex, Vym is the Y-coordinate of the world-converted vertex, and Vzm is the Z-coordinate of the world-converted vertex. , Vwm represents the W coordinate of the world transformed vertex.

투영 변환 행렬 곱셈 장치(107)는 월드 변환된 좌표를 실제 디스플레이 상에 출력하는 경우 원근감이 나타나도록 변환해 주는 기능을 하는 장치이다. 투영 변환 행렬 장치(107)에 적용되는 수식은 다음과 같다.The projection transformation matrix multiplier 107 is a device that converts the world transformed coordinates so that perspective appears when the coordinates are output on the actual display. The equation applied to the projection transformation matrix apparatus 107 is as follows.

Figure 112005019959518-pat00002
Figure 112005019959518-pat00002

여기서 pij는 투영 변환 행렬의 각 성분을 나타내며, Vxm은 월드 변환된 정점의 X 좌표를, Vym은 월드 변환된 정점의 Y좌표를, Vzm은 월드 변환된 정점의 Z좌표를, Vwm은 월드 변환된 정점의 W좌표를 나타낸다. 각 행렬의 곱셈 연산을 통하여 출력 정점이 생성되며 Vxp는 출력 정점의 X 좌표를, Vyp는 출력 정점의 Y 좌표를, Vzp는 출력 정점의 Z 좌표를, Vwp는 출력 정점의 W좌표를 나타낸다. Where p ij represents each component of the projection transformation matrix, Vxm represents the X coordinate of the world transformed vertex, Vym represents the Y coordinate of the world transformed vertex, Vzm represents the Z coordinate of the world transformed vertex, and Vwm represents the world transform It represents the W coordinate of the vertex. The output vertex is generated through the multiplication operation of each matrix, and Vxp represents the X coordinate of the output vertex, Vyp represents the Y coordinate of the output vertex, Vzp represents the Z coordinate of the output vertex, and Vwp represents the W coordinate of the output vertex.

출력 정점 레지스터(109)는 월드 변환 행렬 곱셈 장치(105)와 투영 변환 행렬 곱셈 장치(107)를 적용하여 산출된 출력 정점을 저장하는 기능을 하는 장치이다. 앞서 설명한 바와 같이 변환 처리 과정을 거친 삼각형은 컴퓨터로 처리할 수 있도록 디지털화된 픽셀 단위로 분리시키는 작업이 이루어진 다음, 픽셀에 텍스쳐를 입히고 밝기와 음영 정보를 부여하는 랜더링 작업이 이루지며, 모든 처리가 끝난 픽셀은 그래픽 메모리에 저장되고 램댁에 의해 모니터에 출력되는데 이를 위하여 변환 처리된 출력 정점을 저장하는 것이다.The output vertex register 109 is a device that stores an output vertex calculated by applying the world transformation matrix multiplication apparatus 105 and the projection transformation matrix multiplication apparatus 107. As described above, triangles that have undergone conversion processing are separated into digitized pixels for computer processing, and then rendering is performed to texture pixels and provide brightness and shadow information. The finished pixel is stored in graphics memory and output to the monitor by the RAM tac to store the transformed output vertices.

도 2는 종래 기술에 따른 3차원 그래픽 변환 처리 과정을 설명하기 위한 도면이다. 도 2를 참조하면, 3차원 그래픽에서의 객체는 3개의 정점으로 이루어진 삼각형들의 모임으로 구성된다. 이 삼각형들의 모임은 도시된 바와 같이 대부분 삼각형들 간에 1개 또는 2개의 정점을 공유하는 삼각형 스트립(200) 또는 삼각형 부채꼴의 형태(210)이다. 2 is a view for explaining a three-dimensional graphics conversion process according to the prior art. Referring to FIG. 2, an object in three-dimensional graphics consists of a collection of triangles consisting of three vertices. This collection of triangles is in the form of a triangular strip 200 or triangular sectoral shape 210 that shares one or two vertices between the triangles as shown.

도 3은 이러한 삼각형 스트립(도 2의 200) 또는 삼각형 부채꼴의 형태(210)를 예로 하는 종래 기술에 따른 3차원 그래픽 변환 처리 과정을 나타내는 순서도이다.FIG. 3 is a flow chart illustrating a three-dimensional graphics transformation process according to the prior art taking such a triangular strip (200 of FIG. 2) or triangular sector shape 210 as an example.

도 3을 참조하면, 먼저 삼각형이 입력되면, 삼각형의 세 입력 정점을 입력 정점 레지스터에 저장(단계 311)한다. 다음으로 입력 정점 레지스터에 저장된 입력 정점 1에 대하여 월드 변환 처리(단계 313)-통상 월드 변환 행렬과 입력 정점의 곱셈으로 이루어진다-를 한다. 월드 변환 처리가 끝난 정점에 대하여 투영 변환 처리(단계 315)-통상 투영 변환 행렬과 월드 변환 처리가 된 정점의 곱셈으로 이루어진다-를 한다. 마지막으로 변환 처리가 완료된 정점(출력 정점1)을 출력 정점 레지스터에 저장(단계 317)함으로써 입력 정점 1에 대한 변환 처리가 종료된다. 다음으로 입력 정점 2에 대하여 월드 변환 처리(단계 319), 투영 변환 처리(단계 321)를 한 후, 출력 정점 레지스터에 저장(단계 323)함으로써 입력 정점 2에 대한 변환 처리가 종료된다. 이러한 과정은 입력 정점 3에 대하여도 동일하게 적용(단계 325, 단계 327, 단계 329)된다.Referring to FIG. 3, when a triangle is input first, three input vertices of the triangle are stored in an input vertex register (step 311). Next, the input vertex 1 stored in the input vertex register is subjected to a world transform process (step 313), which is usually a multiplication of the world transform matrix and the input vertex. Projection transform processing (step 315) is performed on the vertices that have been subjected to the world transform processing (usually by multiplication of the projection transform matrix and the world transform processed vertex). Finally, the conversion process for input vertex 1 is terminated by storing the vertex (output vertex 1) on which the conversion process is completed (step 317) in the output vertex register. Next, after the world transform process (step 319) and the projection transform process (step 321) are performed on the input vertex 2, the process of converting the input vertex 2 is completed by storing it in the output vertex register (step 323). This process is the same for input vertex 3 (step 325, step 327, step 329).

이와 같이 종래 기술에 따른 3차원 그래픽 변환 처리 방법에 의하여 도 2의 삼각형 스트립(200)을 처리할 경우, 3차원 그래픽 변환 처리 장치는 삼각형 1의 변환 처리 과정에서 변환 처리가 완료된 정점 2와 정점 3을 삼각형 2의 변환 처리 과정에서 다시 월드 변환 처리 및 투영 변환 처리를 하게 된다. 이는 다음으로 입력되는 삼각형 3, 삼각형 4 등의 변환 처리 과정에서도 마찬가지이다. 따라서 종래 기술에 따른 3차원 그래픽 변환 처리 과정에 따르면 적게는 1개에서 많게는 2개의 정점에 대하여 변환 과정을 반복 처리하는 결과를 낳는다. As described above, when the triangular strip 200 of FIG. 2 is processed by the three-dimensional graphic transformation processing method according to the related art, the three-dimensional graphics transformation processing apparatus vertices 2 and vertex 3 in which the transformation processing is completed in the transformation process of the triangle 1 In the triangle 2 transformation process, the world transformation process and the projection transformation process are performed again. This also applies to the conversion process of triangle 3, triangle 4, and the like, which are input next. Thus, the three-dimensional graphics transformation process according to the prior art results in iterating the transformation process for at least one to many two vertices.

결과적으로 변환 처리 과정이 변환 정방 행렬과 정점의 공간 좌표를 나타내는 행렬의 곱셈 연산으로 5~10번의 반복 수행이 필요한 점을 고려하면, 이와 같은 공유 정점의 반복 변환 처리는 불필요한 연산을 반복하게 함으로써 그래픽 처리 속도를 저해하게 되는 것이다. As a result, considering that the transformation process requires 5 to 10 iterations as a multiplication operation of the transformation square matrix and the matrix representing the spatial coordinates of the vertices, such an iterative transformation process of the shared vertices causes the graphics to be repeatedly executed. It will slow down the processing speed.

본 발명의 일 목적은 공유 정점의 변환 처리를 방지하기 위한 3차원 그래픽 변환 처리 방법 및 장치를 제공하는데 있다.An object of the present invention is to provide a three-dimensional graphics transformation processing method and apparatus for preventing the transformation process of the shared vertices.

본 발명의 다른 목적은 그래픽 변환 처리 장치 내 연산 횟수 및 연산 순서를 최적화함으로써 그래픽 가속 장치의 속도를 향상시킬 수 있는 3차원 그래픽 변환 처리 방법 및 장치를 제공하는데 있다.Another object of the present invention is to provide a method and apparatus for converting a 3D graphic which can improve the speed of the graphic accelerator by optimizing the number of operations and the order of operations in the graphic conversion processing apparatus.

상술한 목적을 달성하기 위하여 본 발명의 일 측면에 따르면, 3차원 객체를 나타내는 적어도 하나의 폴리곤을 변환 처리하는 방법에 있어서-상기 폴리곤은 복수의 특징점을 포함함-, 상기 폴리곤의 상기 복수의 특징점을 입력받는 단계, 상기 각각의 특징점에 대하여 공유 특징점인지를 확인하는 단계, 상기 각각의 특징점이 공유 특징점이 아닌 경우에, 월드 변환 처리 및 투영 변환 처리를 하여 출력 특징점을 산출하는 단계, 상기 각각의 특징점이 공유 특징점인 경우에, 상기 공유 특징점에 상응하는 미리 변환 완료된 출력 특징점을 추출하는 단계 및 상기 산출된 출력 특징점 또는 상기 추출된 출력 특징점을 저장하는 단계를 포함하는 3차원 그래픽 변환 처리 방법을 제공할 수 있다.According to an aspect of the present invention to achieve the above object, in the method for transforming at least one polygon representing a three-dimensional object, the polygon comprises a plurality of feature points, the plurality of feature points of the polygon Receiving input, determining whether each feature point is a shared feature point, and if each feature point is not a shared feature point, calculating an output feature point by performing a world transform process and a projection transform process, respectively If the feature point is a shared feature point, extracting a pre-converted output feature point corresponding to the shared feature point; and storing the calculated output feature point or the extracted output feature point. can do.

바람직한 실시예에 있어서, 상기 입력된 복수의 특징점을 저장하는 단계를 더 포함하는 것을 특징으로 할 수 있다. 또한 상기 입력된 폴리곤의 모든 입력 특징점이 변환되었는지를 확인하는 단계를 더 포함하는 것을 특징으로 할 수 있다. 또한 상기 폴리곤은 삼각형인 것 을 특징으로 할 수 있으며, 상기 각각의 특징점은 상기 폴리곤의 꼭지점인 것을 특징으로 할 수 있다.In a preferred embodiment, the method may further include storing the input plurality of feature points. The method may further include checking whether all input feature points of the input polygon are converted. In addition, the polygon may be characterized in that the triangular, each feature point may be characterized in that the vertex of the polygon.

본 발명의 다른 측면에 따르면, 3차원 객체를 나타내는 적어도 하나의 폴리곤을 변환 처리하는 장치에 있어서-상기 폴리곤은 복수의 특징점을 포함함-, 상기 폴리곤의 상기 복수의 특징점을 입력받는 수단, 상기 각각의 특징점에 대하여 공유 특징점인지를 확인하는 수단, 상기 각각의 특징점이 공유 특징점이 아닌 경우에, 월드 변환 처리 및 투영 변환 처리를 하여 출력 특징점을 산출하는 수단, 상기 각각의 특징점이 공유 특징점인 경우에, 상기 공유 특징점에 상응하는 미리 변환 완료된 출력 특징점을 추출하는 수단 및 상기 산출된 출력 특징점 또는 상기 추출된 출력 특징점을 저장하는 수단을 포함하는 3차원 그래픽 변환 처리 장치를 제공할 수 있다.According to another aspect of the invention, there is provided an apparatus for transforming at least one polygon representing a three-dimensional object, the polygon comprising a plurality of feature points, means for receiving the plurality of feature points of the polygon, each Means for confirming whether the feature points are shared feature points; if each feature point is not a shared feature point; means for calculating an output feature point by performing world transform processing and projection transform processing; and when each feature point is a shared feature point. And a means for extracting a pre-converted output feature point corresponding to the shared feature point, and a means for storing the calculated output feature point or the extracted output feature point.

본 발명의 또 다른 측면에 따르면, 3차원 객체를 나타내는 적어도 하나의 폴리곤을 변환 처리하는 시스템에 있어서-상기 폴리곤은 복수의 특징점을 포함함-, 프로그램이 저장되어 있는 메모리, 상기 메모리에 결합되어 상기 프로그램을 실행하는 프로세서를 포함하되, 상기 프로세서는 상기 프로그램에 의해, 상기 폴리곤의 상기 복수의 특징점을 입력받는 단계, 상기 각각의 특징점에 대하여 공유 특징점인지를 확인하는 단계, 상기 각각의 특징점이 공유 특징점이 아닌 경우에, 월드 변환 처리 및 투영 변환 처리를 하여 출력 특징점을 산출하는 단계, 상기 각각의 특징점이 공유 특징점인 경우에, 상기 공유 특징점에 상응하는 미리 변환 완료된 출력 특징점을 추출하는 단계 및 상기 산출된 출력 특징점 또는 상기 추출된 출력 특징점을 저장하는 단계를 실행하는 것을 특징으로 하는 3차원 그래픽 변환 처리 시스템을 제공할 수 있다.According to another aspect of the present invention, in a system for transforming at least one polygon representing a three-dimensional object, the polygon includes a plurality of feature points, a memory in which a program is stored, coupled to the memory and A processor for executing a program, wherein the processor receives, by the program, the plurality of feature points of the polygon, checking whether each feature point is a shared feature point, and wherein each feature point is a shared feature point If not, calculating output feature points by performing world transform processing and projection transform processing; extracting pre-converted output feature points corresponding to the shared feature points when each feature point is a shared feature point; and calculating Storing the extracted output feature point or the extracted output feature point A three-dimensional graphic transformation processing system can be provided.

이하에서는 도면을 참조하여 본 발명의 바람직한 실시예에 따른 3차원 그래픽 변환 처리 방법에 대하여 상세히 설명하기로 한다.Hereinafter, a three-dimensional graphic transformation processing method according to a preferred embodiment of the present invention with reference to the drawings will be described in detail.

도 4는 본 발명의 바람직한 실시예에 따른 3차원 그래픽 변화 처리 장치를 나타내는 도면이다. 도 4를 참조하면, 본 발명의 바람직한 실시예에 따른 3차원 그래픽 처리 장치는 입력 정점 레지스터(403), 공유 정점 확인 장치(405), 월드 변환 행렬 곱셈 장치(407), 투영 변환 행렬 곱셈 장치(409), 출력 정점 레지스터(411), 출력 정점 추출 장치(413)를 포함한다. 4 is a diagram illustrating a three-dimensional graphic change processing apparatus according to a preferred embodiment of the present invention. Referring to FIG. 4, a three-dimensional graphics processing apparatus according to a preferred embodiment of the present invention includes an input vertex register 403, a shared vertex identification apparatus 405, a world transformation matrix multiplication apparatus 407, and a projection transformation matrix multiplication apparatus ( 409), an output vertex register 411, and an output vertex extracting device 413.

입력 정점 레지스터(403)는 입력되는 삼각형의 각 정점의 공간 좌표를 저장하는 기능을 하는 장치이다. 이는 산술적/논리적 연산이나 정보 해석, 전송 등을 할 수 있는 일정 길이의 2진 정보를 저장하는 3차원 그래픽 변환 처리 장치 내의 기억 장치로서 변환될 정점의 좌표를 일시적으로 저장하는 역할을 한다. 입력 정점 레지스터(403)에 저장된 정점의 공간 좌표는 로컬 좌표계를 사용한다.The input vertex register 403 is a device that stores a spatial coordinate of each vertex of an input triangle. This is a storage device in the three-dimensional graphics conversion processing apparatus that stores binary information of a certain length capable of performing arithmetic / logical operations, information interpretation, transmission, and the like, and temporarily stores coordinates of vertices to be converted. The spatial coordinates of the vertices stored in the input vertex register 403 use the local coordinate system.

공유 정점 확인 장치(405)는 새로 입력된 삼각형의 입력 정점이 종전에 입력된 삼각형의 입력 정점과 같은 정점을 나타내고 있는지 여부, 즉 공유 정점인지 여부를 확인하는 장치이다. 공유 정점 확인 장치(405)는 공유 정점에 대하여는 출력 정점 추출 장치에 공유 정점 확인 신호를 전송하고, 공유 정점이 아닌 정점에 대하여는 종전과 같은 변환 처리를 행하도록 한다.The shared vertex checking device 405 is a device for checking whether a newly input triangle input point represents the same vertex as a previously input triangle input, that is, whether it is a shared vertex. The shared vertex confirmation device 405 transmits the shared vertex confirmation signal to the output vertex extraction device for the shared vertex, and performs conversion processing as before for the vertex that is not the shared vertex.

월드 변환 행렬 곱셈 장치(407)는 입력 레지스터(403)에 입력된 각 입력 정점의 좌표를 로컬 좌표계에서 월드 좌표계로 변환해 주는 기능을 하는 장치이다. 월드 변환 행렬 곱셈 장치(407)에 적용되는 수식은 상기 [수학식 1]과 같을 수 있으나 이에 한정하지 않는다.The world transformation matrix multiplication apparatus 407 is a device that converts the coordinates of each input vertex input to the input register 403 from the local coordinate system to the world coordinate system. The equation applied to the world transform matrix multiplication apparatus 407 may be the same as Equation 1, but is not limited thereto.

투영 변환 행렬 곱셈 장치(409)는 월드 변환된 좌표를 실제 디스플레이 상에 출력하는 경우 원근감이 나타나도록 변환해 주는 기능을 하는 장치이다. 투영 변환 행렬 곱셈 장치(409)에 적용되는 수식은 [수학식 2]와 같을 수 있으나 이에 한정하지 않는다.The projection transformation matrix multiplier 409 is a device that converts the world transformed coordinates so that perspective appears when the world-transformed coordinates are output on an actual display. The equation applied to the projection transformation matrix multiplication apparatus 409 may be the same as Equation 2, but is not limited thereto.

출력 정점 레지스터(411)는 월드 변환 행렬 장치(417)와 투영 변환 행렬 곱셈 장치(419)를 적용하여 출력된 출력 정점을 저장하는 기능을 하는 장치이다. 이는 산술적/논리적 연산이나 정보 해석, 전송 등을 할 수 있는 일정 길이의 2진 정보를 저장하는 3차원 그래픽 변환 처리 장치 내의 기억 장치로서 변환될 정점의 좌표를 일시적으로 저장하는 역할을 하며, 출력 정점 레지스터에 저장된 출력 정점 좌표는 관점(ViewPoint) 좌표계를 사용한다. The output vertex register 411 is a device having a function of storing the output vertex output by applying the world transformation matrix apparatus 417 and the projection transformation matrix multiplication apparatus 419. It is a storage device in the three-dimensional graphics conversion processing device that stores binary information of a certain length capable of performing arithmetic / logical operations, information interpretation, transmission, etc., and temporarily stores the coordinates of the vertices to be converted. The output vertex coordinates stored in the register use the ViewPoint coordinate system.

출력 정점 추출 장치(413)는 공유 정점 확인 장치로부터 입력 정점이 종전에 변환 처리가 완료된 공유 정점임을 확인하는 신호가 수신되면, 그 공유 정점에 상응하는 출력 정점의 출력 정점 레지스터의 좌표를 그 공유 정점의 출력 정점이 저장될 위치에 저장하는 기능을 하는 장치이다. 이에 의하여 종전 변환 처리된 출력 정점을 공유 정점의 출력 정점 저장 위치에 저장함으로써 공유 정점의 반복적인 변환 처리 없이 삼각형의 모든 입력 정점에 대하여 변환된 출력 정점을 획득할 수 있다.When the output vertex extracting device 413 receives a signal from the shared vertex checking device confirming that the input vertex is a shared vertex that has been previously converted, the shared vertex coordinates of the output vertex register of the output vertex corresponding to the shared vertex are determined. A device that stores the output vertex at the location where it will be stored. In this way, the output vertex that has been previously converted may be stored in the output vertex storage location of the shared vertex, thereby obtaining the converted output vertex for all the input vertices of the triangle without repetitive transformation processing of the shared vertex.

도 5는 본 발명의 바람직한 실시예에 따른 3차원 그래픽 변환 처리 과정을 나타내는 순서도이다. 도 5를 참조하면, 본 발명의 바람직한 실시예에 따른 3차원 그래픽 변환 처리 과정은 입력된 삼각형의 공유 정점 여부를 판단하여, 공유 정점 이 아닌 경우에는 종래와 같이 변환 처리를 행하고, 공유 정점인 경우에는 출력 정점 레지스터의 위치만을 교환해 주는 것으로 행해진다.5 is a flow chart showing a three-dimensional graphics transformation process according to a preferred embodiment of the present invention. Referring to FIG. 5, the three-dimensional graphic transformation process according to the present invention determines whether a shared vertex of an input triangle is determined, and if the shared vertex is not a shared vertex, the transformation process is performed as in the prior art. Is done by swapping only the positions of the output vertex registers.

먼저, 입력된 삼각형의 세 개의 입력 정점을 입력 정점 레지스터에 저장(단계 501)한다. 세 개의 입력 정점 중 하나의 입력 정점에 대하여 공유 정점인지 여부를 판단(단계 503)한다. 이러한 판단은 공유 정점 확인 장치에 의하여 수행되며, 입력 정점의 저장과 공유 정점의 확인은 그 순서가 바뀌어도 무방하다. First, three input vertices of the input triangle are stored in the input vertex register (step 501). It is determined whether one of the three input vertices is a shared vertex (step 503). This determination is performed by the shared vertex checking apparatus, and the order of storing the input vertex and confirming the shared vertex may be changed.

입력 정점이 공유 정점이 아닌 것으로 판단된 경우 즉 새로운 입력 정점의 경우, 그 정점의 좌표에 대하여 월드 변환(모델/뷰 변환) 처리(단계 505)를 한다. 월드 변환 처리에 의하여 로컬 좌표계의 각 정점 좌표가 월드 좌표계로 변환됨은 앞서 설명한 바와 같다. 월드 변환 처리 단계가 완료되면, 그 출력 좌표에 대하여 투영 변환 처리(단계 507)를 한다. 상기 투영 변화 처리에 의하여 3차원 좌표가 디스플레이 상에 출력될 수 있는 2차원 좌표계로 변환됨은 앞서 설명한 바와 같다. 변환이 완료된 출력 정점의 좌표를 출력 정점 레지스터에 저장(단계 509)한다.If it is determined that the input vertex is not a shared vertex, that is, a new input vertex, a world transform (model / view transform) process (step 505) is performed on the coordinates of the vertex. As described above, each vertex coordinate of the local coordinate system is converted into the world coordinate system by a world transformation process. When the world transform processing step is completed, the projection transform process (step 507) is performed on the output coordinates. As described above, the 3D coordinates are converted into a 2D coordinate system which may be output on the display by the projection change process. The coordinates of the output vertex in which the conversion is completed are stored in the output vertex register (step 509).

입력 정점이 공유 정점으로 판단된 경우, 그 공유 정점에 대하여 종전 변환 처리되었던 출력 정점의 좌표를 상기 공유 정점에 대한 출력 정점의 좌표로 교환(단계 511)한다. 상기 교환된 출력 정점을 출력 정점 레지스터에 저장(단계 513)함으로써 공유 정점에 대한 변환 처리 없이 출력 정점을 획득할 수 있다. If the input vertex is determined to be a shared vertex, the coordinates of the output vertices that have been previously transformed with respect to the shared vertices are exchanged with the coordinates of the output vertices for the shared vertices (step 511). By storing the exchanged output vertices in an output vertex register (step 513), the output vertices can be obtained without conversion processing for the shared vertices.

하나의 입력 정점에 대한 변환 처리가 완료되면, 모든 입력 정점에 대한 처리가 완료되었는지를 여부를 판단(단계 515)하여 남은 입력 정점이 있는 경우, 공유 정점인지 여부를 판단하는 단계(단계 503)부터 출력 정점을 저장하는 단계(단계 509 또는 단계 513)를 반복한다. 남은 입력 정점이 없는 경우 삼각형을 출력함으로써 변화 처리 과정을 종료한다. When the conversion processing for one input vertex is completed, it is determined whether the processing for all the input vertices is completed (step 515), and if there are remaining input vertices, it is determined whether it is a shared vertex (step 503). The step of storing the output vertex (step 509 or step 513) is repeated. If there are no remaining input vertices, the change process is terminated by outputting a triangle.

본 발명의 바람직한 실시예에 따른 3차원 그래픽 처리 장치에 의할 경우 삼각형 간의 공유 정점을 반복 처리하지 않음으로써 변환 처리 수행 시간을 단축시킬 수 있다. 종전에 처리된 삼각형과 현재 입력 삼각형의 정점들 중 2개가 공유된 경우 본 발명에 따른 3차원 그래픽 변환 처리 장치는 종래 기술에 따른 3차원 그래픽 변환 처리 장치보다 약 60% 이상의 수행 시간을 단축시킬 수 있으며, 1개의 정점이 공유된 경우 약 30% 이상의 수행 시간을 단축시킬 수 있다.According to the 3D graphic processing apparatus according to the preferred embodiment of the present invention, the execution time of the transformation process can be shortened by not repeatedly processing the shared vertices between the triangles. When two of the previously processed triangles and the vertices of the current input triangle are shared, the 3D graphic transformation processing apparatus according to the present invention can shorten the execution time by about 60% or more than the 3D graphic transformation processing apparatus according to the prior art. If one vertex is shared, the execution time of about 30% or more can be shortened.

뿐만 아니라 이러한 3차원 그래픽 변환 처리 장치는 3차원 그래픽 가속 장치의 가장 앞부분에 해당하므로 변환 처리 장치의 수행 시간 성능이 삼각형을 컴퓨터로 처리할 수 있도록 디지털화된 픽셀 단위로 분리시키는 장치 및 픽셀에 텍스쳐를 입히고 밝기와 음영 정보를 부여하는 랜더링 장치의 수행 성능에 큰 영향을 미쳐 결과적으로 3차원 그래픽 가속 장치의 수행 시간을 단축시키는 결과를 가져온다.In addition, since the 3D graphics conversion processing unit is the front end of the 3D graphics accelerator, the processing time performance of the conversion processing unit separates the texture into pixels and devices that separate the triangles into digitized pixels for computer processing. This greatly affects the performance of the rendering device, which is coated and gives brightness and shadow information, resulting in shortening the execution time of the 3D graphics accelerator.

본 발명의 상세한 설명에서는 편리한 설명을 위하여 3차원 객체를 삼각형으로 나타내는 경우의 변환 처리 과정에 대하여 설명하였으나 이에 한정되지 아니하며, 3차원 객체를 나타낼 수 있는 임의의 폴리곤에 대하여도 본 발명의 기술을 적용할 수 있음은 자명한 사실이다.In the detailed description of the present invention, for the sake of convenience, the conversion process in the case where the 3D object is represented by a triangle has been described. However, the present invention is not limited thereto. It is obvious that it can be done.

또한, 본 발명은 설명의 편의를 위하여 변환 처리를 위하여 입력되는 데이터 를 삼각형의 세 정점으로 하였으나 이에 한정하지 아니하며, 객체의 특성을 나타낼 수 있는 한 임의의 폴리곤의 임의의 정점 또는 동점(이하 "특징점"이라 한다)에 대하여도 본 발명의 기술을 적용할 수 있음은 자명한 사실이다.For convenience of explanation, the present invention uses three vertices of a triangle as input data, but the present invention is not limited thereto. Any vertices or ties of an arbitrary polygon can be expressed as long as the characteristics of an object can be represented. It is obvious that the technique of the present invention can also be applied to "."

본 발명에 의하면, 공유 정점의 변환 처리를 방지한 3차원 그래픽 변환 처리 방법 및 장치를 제공할 수 있다.According to the present invention, it is possible to provide a three-dimensional graphic transformation processing method and apparatus which prevented the transformation processing of shared vertices.

또한 본 발명에 의하면, 그래픽 변환 처리 장치 내 연산 횟수 및 연산 순서를 최적화함으로써 그래픽 가속 장치의 속도를 향상시킨 3차원 그래픽 변환 처리 방법 및 장치를 제공할 수 있다.According to the present invention, it is possible to provide a three-dimensional graphics conversion processing method and apparatus which improves the speed of the graphics acceleration device by optimizing the number of calculations and the calculation order in the graphics conversion processing apparatus.

Claims (7)

3차원 객체를 나타내는 적어도 하나의 폴리곤을 변환 처리하는 방법에 있어서-상기 폴리곤은 복수의 특징점을 포함함-,A method of transforming at least one polygon representing a three-dimensional object, the polygon comprising a plurality of feature points, 상기 폴리곤의 상기 복수의 특징점을 입력받는 단계;Receiving the plurality of feature points of the polygon; 상기 각각의 특징점에 대하여 공유 특징점인지를 확인하는 단계;Checking whether each of the feature points is a shared feature point; 상기 각각의 특징점이 공유 특징점이 아닌 경우에, 월드 변환 처리 및 투영 변환 처리를 하여 출력 특징점을 산출하는 단계;Calculating output feature points by performing world transform processing and projection transform processing when each feature point is not a shared feature point; 상기 각각의 특징점이 공유 특징점인 경우에, 상기 공유 특징점에 상응하는 미리 변환 완료된 출력 특징점을 추출하는 단계; 및If each of the feature points is a shared feature point, extracting a pre-converted output feature point corresponding to the shared feature point; And 상기 산출된 출력 특징점 또는 상기 추출된 출력 특징점을 저장하는 단계Storing the calculated output feature point or the extracted output feature point 를 포함하는 3차원 그래픽 변환 처리 방법.3D graphics transformation processing method comprising a. 제1항에 있어서, The method of claim 1, 상기 입력된 복수의 특징점을 저장하는 단계Storing the input plurality of feature points 를 더 포함하는 3차원 그래픽 변화 처리 방법.3D graphics change processing method further comprising. 제1항에 있어서,The method of claim 1, 상기 입력된 폴리곤의 모든 입력 특징점이 변환되었는지를 확인하는 단계Checking whether all input feature points of the input polygon have been converted 를 더 포함하는 3차원 그래픽 변환 처리 방법.3D graphics transformation processing method further comprising. 제1항에 있어서, The method of claim 1, 상기 폴리곤은 삼각형인 것The polygon is triangular 을 특징으로 하는 3차원 그래픽 변환 처리 방법.3D graphics transformation processing method characterized in that. 제1항에 있어서,The method of claim 1, 상기 각각의 특징점은 상기 폴리곤의 꼭지점인 것Wherein each feature point is a vertex of the polygon 을 특징으로 하는 3차원 그래픽 변환 처리 방법.3D graphics transformation processing method characterized in that. 3차원 객체를 나타내는 적어도 하나의 폴리곤을 변환 처리하는 장치에 있어서-상기 폴리곤은 복수의 특징점을 포함함-,An apparatus for transforming at least one polygon representing a three-dimensional object, the polygon comprising a plurality of feature points, 상기 폴리곤의 상기 복수의 특징점을 입력받는 수단;Means for receiving the plurality of feature points of the polygon; 상기 각각의 특징점에 대하여 공유 특징점인지를 확인하는 수단;Means for ascertaining whether each feature point is a shared feature point; 상기 각각의 특징점이 공유 특징점이 아닌 경우에, 월드 변환 처리 및 투영 변환 처리를 하여 출력 특징점을 산출하는 수단;Means for calculating an output feature point by performing a world transform process and a projection transform process when each feature point is not a shared feature point; 상기 각각의 특징점이 공유 특징점인 경우에, 상기 공유 특징점에 상응하는 미리 변환 완료된 출력 특징점을 추출하는 수단; 및Means for extracting a pre-converted output feature point corresponding to the shared feature point if each feature point is a shared feature point; And 상기 산출된 출력 특징점 또는 상기 추출된 출력 특징점을 저장하는 수단Means for storing the calculated output feature point or the extracted output feature point 을 포함하는 3차원 그래픽 변환 처리 장치.3D graphics transformation processing apparatus comprising a. 3차원 객체를 나타내는 적어도 하나의 폴리곤을 변환 처리하는 시스템에 있어서-상기 폴리곤은 복수의 특징점을 포함함-,A system for transforming at least one polygon representing a three-dimensional object, the polygon comprising a plurality of feature points, 프로그램이 저장되어 있는 메모리;A memory in which a program is stored; 상기 메모리에 결합되어 상기 프로그램을 실행하는 프로세서A processor coupled to the memory to execute the program 를 포함하되,Including but not limited to: 상기 프로세서는 상기 프로그램에 의해,The processor by the program, 상기 폴리곤의 상기 복수의 특징점을 입력받는 단계;Receiving the plurality of feature points of the polygon; 상기 각각의 특징점에 대하여 공유 특징점인지를 확인하는 단계;Checking whether each of the feature points is a shared feature point; 상기 각각의 특징점이 공유 특징점이 아닌 경우에, 월드 변환 처리 및 투영 변환 처리를 하여 출력 특징점을 산출하는 단계;Calculating output feature points by performing world transform processing and projection transform processing when each feature point is not a shared feature point; 상기 각각의 특징점이 공유 특징점인 경우에, 상기 공유 특징점에 상응하는 미리 변환 완료된 출력 특징점을 추출하는 단계; 및If each of the feature points is a shared feature point, extracting a pre-converted output feature point corresponding to the shared feature point; And 상기 산출된 출력 특징점 또는 상기 추출된 출력 특징점을 저장하는 단계Storing the calculated output feature point or the extracted output feature point 를 실행하는 것을 특징으로 하는 3차원 그래픽 변환 처리 시스템.3D graphics conversion processing system, characterized in that for executing.
KR1020050031805A 2005-04-18 2005-04-18 A method and appratus for transformation processing of 3_dimension graphic KR100621867B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050031805A KR100621867B1 (en) 2005-04-18 2005-04-18 A method and appratus for transformation processing of 3_dimension graphic

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050031805A KR100621867B1 (en) 2005-04-18 2005-04-18 A method and appratus for transformation processing of 3_dimension graphic

Publications (1)

Publication Number Publication Date
KR100621867B1 true KR100621867B1 (en) 2006-09-19

Family

ID=37631388

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050031805A KR100621867B1 (en) 2005-04-18 2005-04-18 A method and appratus for transformation processing of 3_dimension graphic

Country Status (1)

Country Link
KR (1) KR100621867B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5651106A (en) 1995-06-08 1997-07-22 Hewlett-Packard Company Method and apparatus for vertex sorting in a computer graphics system
KR100207664B1 (en) 1996-04-02 1999-07-15 윤종용 Three-dimensional data storing method for parallel access of vertex data
KR19990085657A (en) * 1998-05-20 1999-12-15 윤종용 Method and device for compressing connectivity information of graphic modeling data
JP2001175879A (en) 1999-12-14 2001-06-29 Nec Corp Method and device for three-dimensional graphics drawing process

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5651106A (en) 1995-06-08 1997-07-22 Hewlett-Packard Company Method and apparatus for vertex sorting in a computer graphics system
KR100207664B1 (en) 1996-04-02 1999-07-15 윤종용 Three-dimensional data storing method for parallel access of vertex data
KR19990085657A (en) * 1998-05-20 1999-12-15 윤종용 Method and device for compressing connectivity information of graphic modeling data
JP2001175879A (en) 1999-12-14 2001-06-29 Nec Corp Method and device for three-dimensional graphics drawing process

Similar Documents

Publication Publication Date Title
JP6563048B2 (en) Tilt adjustment of texture mapping for multiple rendering targets with different resolutions depending on screen position
JP5232358B2 (en) Rendering outline fonts
KR101145260B1 (en) Apparatus and method for mapping textures to object model
EP1004988A2 (en) Method, apparatus and computer program product for generating perspective corrected data from warped information
US8878849B2 (en) Horizon split ambient occlusion
JP2018106712A (en) Fast rendering of quadrics and marking of silhouettes thereof
JP2005100176A (en) Image processor and its method
RU2680355C1 (en) Method and system of removing invisible surfaces of a three-dimensional scene
CN115512025A (en) Method and device for detecting model rendering performance, electronic device and storage medium
CN111583398A (en) Image display method and device, electronic equipment and computer readable storage medium
CN112149383B (en) Text real-time layout method based on GPU, electronic device and storage medium
CN111950057A (en) Loading method and device of Building Information Model (BIM)
KR100621867B1 (en) A method and appratus for transformation processing of 3_dimension graphic
KR101227155B1 (en) Graphic image processing apparatus and method for realtime transforming low resolution image into high resolution image
CN111667393B (en) Method and terminal for simulating raining in virtual scene
KR100848687B1 (en) 3-dimension graphic processing apparatus and operating method thereof
CN110689606B (en) Method and terminal for calculating raindrop falling position in virtual scene
CN114020390A (en) BIM model display method and device, computer equipment and storage medium
US6856325B2 (en) Information processing method and apparatus
CN115803782A (en) Augmented reality effect of perception geometry with real-time depth map
CN114494384B (en) Building shadow analysis method, device, equipment and storage medium
JP7368950B2 (en) Method and apparatus for efficient building footprint identification
CN111882631B (en) Model rendering method, device, equipment and storage medium
JP4106719B2 (en) Image processing device
JP3745152B2 (en) Image display device

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120710

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130826

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140827

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150728

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170829

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180823

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190826

Year of fee payment: 14