KR101227183B1 - Apparatus and method for stereoscopic rendering 3-dimension graphic model - Google Patents

Apparatus and method for stereoscopic rendering 3-dimension graphic model Download PDF

Info

Publication number
KR101227183B1
KR101227183B1 KR1020110025382A KR20110025382A KR101227183B1 KR 101227183 B1 KR101227183 B1 KR 101227183B1 KR 1020110025382 A KR1020110025382 A KR 1020110025382A KR 20110025382 A KR20110025382 A KR 20110025382A KR 101227183 B1 KR101227183 B1 KR 101227183B1
Authority
KR
South Korea
Prior art keywords
rendering
function
model
graphic
graphic model
Prior art date
Application number
KR1020110025382A
Other languages
Korean (ko)
Other versions
KR20120107711A (en
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 KR1020110025382A priority Critical patent/KR101227183B1/en
Priority to PCT/KR2011/003962 priority patent/WO2012128421A1/en
Publication of KR20120107711A publication Critical patent/KR20120107711A/en
Application granted granted Critical
Publication of KR101227183B1 publication Critical patent/KR101227183B1/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/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects

Abstract

3D 그래픽 모델 입체 렌더링 장치는 3D 그래픽 모델의 렌더링을 위한 렌더링 함수를 포함하는 그래픽 처리 함수를 호출하는 함수 호출부, 상기 3D 그래픽 모델에 대한 제1 시점 영상 및 제2 시점 영상을 생성하기 위하여 상기 함수 호출부로부터 전달받은 렌더링 함수를 제1 렌더링 함수와 제2 렌더링 함수로 변경하는 함수 변경부, 및 상기 제1 렌더링 함수를 적용하여 상기 3D 그래픽 모델에 대해 제1 지오메트리 변환을 수행하고, 상기 제2 렌더링 함수를 적용하여 상기 3D 그래픽 모델에 대해 제2 지오메트리 변환을 수행하는 지오메트리 처리부를 포함한다. The 3D graphic model stereoscopic rendering apparatus includes a function caller for calling a graphics processing function including a rendering function for rendering a 3D graphic model, the function to generate a first view image and a second view image for the 3D graphic model. A function changer for changing a rendering function received from a caller into a first rendering function and a second rendering function, and applying the first rendering function to perform a first geometry transformation on the 3D graphic model, And a geometry processor configured to apply a rendering function to perform a second geometry transformation on the 3D graphic model.

Description

3D 그래픽 모델 입체 렌더링 장치 및 입체 렌더링 방법{Apparatus and method for stereoscopic rendering 3-dimension graphic model}3D graphic model stereoscopic rendering device and stereoscopic rendering method {Apparatus and method for stereoscopic rendering 3-dimension graphic model}

본 발명은 3D 그래픽 모델 입체 렌더링 장치 및 입체 렌더링 방법에 관한 것으로, 보다 상세하게는 단일 시점의 영상을 좌안 영상 및 우안 영상으로 실시간으로 변환할 수 있는 3D 그래픽 모델 입체 렌더링 장치 및 입체 렌더링 방법에 관한 것이다.The present invention relates to a 3D graphic model stereoscopic rendering apparatus and a stereoscopic rendering method, and more particularly, to a 3D graphic model stereoscopic rendering apparatus and stereoscopic rendering method capable of converting a single-view image into a left eye image and a right eye image in real time. will be.

실시간 렌더링(Realtime Rendering)은 컴퓨터 프로그램을 이용하여 3D 그래픽 모델 정보로부터 래스터 그래픽스 이미지라 불리는 영상을 실시간으로 만드는 과정을 의미한다. 3D 그래픽 모델 정보는 3D 물체에 대한 정보로서, 지오메트리(geometry), 시점, 텍스처 매핑(texture mapping), 조명, 셰이딩(shading) 정보 등을 포함할 수 있다. 실시간 렌더링은 아키텍처, 비디오 게임, 시뮬레이터, 특수 효과, 디자인 시각화 등 다양한 분야에 사용된다. Realtime rendering refers to the process of creating a video called raster graphics image in real time from 3D graphic model information using a computer program. The 3D graphic model information is information about a 3D object and may include geometry, viewpoint, texture mapping, lighting, and shading information. Real-time rendering is used in a variety of fields, including architecture, video games, simulators, special effects, and design visualization.

실시간 렌더링은 많은 연산이 필요로 하기 때문에 렌더링 속도 향상을 위하여 그래픽 가속기를 사용한다. 그래픽 가속기는 단말에 하드웨어칩 형태로 장착될 수 있다. 단말의 소프트웨어 플랫폼에서 단말에 부착된 그래픽 가속기를 사용하기 위해서는 해당 그래픽 가속기용 그래픽 라이브러리가 존재하게 되며, 그래픽 라이브러리를 사용하여야만 실질적인 그래픽 가속기의 그래픽 가속을 활용할 수 있게 된다. Real-time rendering requires a lot of computation, so we use a graphics accelerator to speed up rendering. The graphics accelerator may be mounted in the form of a hardware chip in the terminal. In order to use the graphic accelerator attached to the terminal in the software platform of the terminal, there is a graphic library for the graphic accelerator, and only the graphic library can be used to utilize the graphic acceleration of the graphic accelerator.

이때, 그래픽 라이브러리라 함은 산업계에서 보편적으로 활용되고 있는 실시간 렌더링 그래픽 개발 API(application programming interface)를 구현한 것이다. 그래픽 라이브러리 내부에서 하드웨어 그래픽 가속기 드라이버를 통해 가속기를 제어한다. 그래픽 라이브러리는 크게 데이터 설정 함수, 상태 변환 함수, 렌더링 함수로 나누어진다(이하, 이러한 모든 함수를 그래픽 처리 함수로 명한다). 데이터 설정 함수는 모델 데이터(3D Vertex 등)을 설정하고, 상태 변환 함수는 렌더링 방식을 설정하는 함수이다. 렌더링 함수는 실질적으로 지오메트리 처리 및 프레임버퍼에 래스터화(rasterization)를 수행하는 함수이다.In this case, the graphic library is an implementation of a real-time rendering graphics development API (application programming interface) commonly used in the industry. The accelerator is controlled by a hardware graphics accelerator driver inside the graphics library. The graphics library is divided into data setting functions, state transformation functions, and rendering functions (hereinafter, all these functions are referred to as graphic processing functions). The data setting function sets the model data (3D vertex, etc.), and the state transformation function sets the rendering method. Rendering functions are functions that actually perform rasterization on geometry processing and framebuffers.

단일 플랫폼에서 그래픽 가속기를 지원하기 위한 그래픽 라이브러리는 그래픽 가속기 제조사에서 제공한다. PC의 그래픽 라이브러리로는 DirectX 및 OpenGL이 있다. 임베디드(embedded) 기기 상에서는 대부분 OpenGL ES 스펙에 따라 라이브러리가 제공되고 있으며, 윈도우즈 계열에서는 Direct3D Mobile이 추가로 제공되고 있다. 이와 같이, 단일 플랫폼에서 그래픽 가속기를 지원하는 그래픽 라이브러리는 크게 두 가지를 넘지 않다. 대부분의 3D 게임은 이 두 가지 중 하나만을 이용하여 제작된다. 상기 그래픽 함수 중 렌더링 함수의 예로서 OpenGL ES API의 경우 glDrawArrays, glDrawElements 가 있다.Graphics libraries to support graphics accelerators on a single platform are provided by graphics accelerator manufacturers. PC graphics libraries include DirectX and OpenGL. On embedded devices, libraries are mostly provided according to the OpenGL ES specification, and Direct3D Mobile is additionally provided on Windows. As such, there are no more than two graphics libraries that support graphics accelerators on a single platform. Most 3D games are built using only one of these two. Examples of rendering functions among the graphic functions include glDrawArrays and glDrawElements in the case of the OpenGL ES API.

인간은 좌안과 우안의 간격에 의해 하나의 물체가 좌안과 우안에 서로 다른 방향에서 보이는 효과에 의해 입체감을 느낀다. 입체영상 표시장치는 이러한 원리를 이용하여 좌안 영상을 사용자의 좌안에 보여주고 우안 영상을 사용자의 우안에 보여줌으로써 사용자가 입체감을 느끼도록 한다. Humans feel a three-dimensional effect by the effect of a single object being seen in different directions due to the gap between the left and right eyes. The stereoscopic image display device displays a left eye image on the left eye of the user and a right eye image on the right eye of the user by using this principle, so that the user feels a 3D effect.

실사의 경우, 양안 카메라를 이용하여 제작 시부터 입체 영상의 좌안 영상과 우안 영상을 제작할 수 있다. 그러나, 단일 시점의 영상을 실시간으로 입체 영상으로 변환하는 것은 쉽지 않다. In the case of due diligence, a left eye image and a right eye image of a stereoscopic image may be produced from a production time using a binocular camera. However, it is not easy to convert a single viewpoint image into a stereoscopic image in real time.

본 발명이 해결하고자 하는 기술적 과제는 실시간 3D 그래픽 렌더링 기술에서 단일 시점 실시간 렌더링 방식을 좌안 및 우안 영상 생성을 위한 렌더링 방식으로 변경하여 실시간으로 입체영상을 생성 하게하는 3D 그래픽 모델 입체 렌더링 장치 및 입체 렌더링 방법을 제공하기 위한 것이다.The technical problem to be solved by the present invention is a 3D graphics model stereoscopic rendering apparatus and stereoscopic rendering to generate a three-dimensional image in real time by changing the single-view real-time rendering method in the real-time 3D graphics rendering technology to a rendering method for generating left and right eyes image It is to provide a method.

본 발명의 일 실시 예에 따른 3D 그래픽 모델 입체 렌더링 장치는 3D 그래픽 모델의 렌더링을 위한 렌더링 함수를 포함하는 그래픽 처리 함수를 호출하는 함수 호출부, 상기 3D 그래픽 모델에 대한 제1 시점 영상 및 제2 시점 영상을 생성하기 위하여 상기 함수 호출부로부터 전달받은 렌더링 함수를 제1 렌더링 함수와 제2 렌더링 함수로 변경하는 함수 변경부, 및 상기 제1 렌더링 함수를 적용하여 상기 3D 그래픽 모델에 대해 제1 지오메트리 변환을 수행하고, 상기 제2 렌더링 함수를 적용하여 상기 3D 그래픽 모델에 대해 제2 지오메트리 변환을 수행하는 지오메트리 처리부를 포함한다. 3D graphics model stereoscopic rendering apparatus according to an embodiment of the present invention, a function call unit for calling a graphics processing function including a rendering function for rendering a 3D graphics model, a first viewpoint image and the second for the 3D graphics model A function changer for changing a rendering function received from the function caller into a first rendering function and a second rendering function to generate a view image, and applying the first rendering function to first geometry for the 3D graphic model And a geometry processor configured to perform a transformation, and apply a second rendering function to perform a second geometry transformation on the 3D graphic model.

상기 제1 지오메트리 변환이 수행된 3D 그래픽 모델에 대해 래스터화(rasterization)를 수행하여 제1 시점 영상을 생성하고, 상기 제2 지오메트리 변환이 수행된 3D 그래픽 모델에 대해 래스터화를 수행하여 제2 시점 영상을 생성하는 래스터 처리부를 더 포함할 수 있다.A first viewpoint image is generated by performing rasterization on the 3D graphic model on which the first geometry transformation has been performed, and a second viewpoint by rasterizing the 3D graphic model on which the second geometry transformation has been performed. The apparatus may further include a raster processor configured to generate an image.

상기 함수 호출부가 상기 그래픽 처리 함수를 호출하는 호출 순서 및 데이터를 저장하는 데이터 저장부를 더 포함할 수 있다.The function caller may further include a data storage to store a call order and data for calling the graphic processing function.

상기 함수 호출부는 상기 제1 렌더링 함수를 이용한 제1 렌더링이 수행된 후 상기 데이터 저장부에 저장된 상기 호출 순서대로 상기 그래픽 처리 함수를 호출할 수 있다. The function caller may call the graphic processing function in the calling order stored in the data storage unit after the first rendering using the first rendering function is performed.

상기 함수 변경부는 상기 호출 순서대로 호출되는 그래픽 처리 함수 중 렌더링 함수를 상기 제2 렌더링 함수로 변경할 수 있다. The function changing unit may change a rendering function among the graphic processing functions called in the calling order to the second rendering function.

상기 데이터 저장부는 상기 함수 호출부에서 호출되는 그래픽 처리 함수에 대한 정보를 프레임 단위로 저장할 수 있다.The data storage unit may store information on a graphic processing function called by the function caller in units of frames.

본 발명의 다른 실시예에 따른 3D 그래픽 모델 입체 렌더링 방법은 3D 그래픽 모델에 대한 제1 시점 영상을 생성하기 위해 렌더링 함수를 호출하고, 호출된 렌더링 함수를 변경하여 제1 렌더링 방식을 설정하는 단계, 상기 제1 렌더링 방식을 통해 상기 3D 그래픽 모델에 대한 렌더링을 수행하여 제1 시점 영상을 생성하는 단계, 상기 3D 그래픽 모델에 대한 제2 시점 영상을 생성하기 위해 상기 렌더링 함수를 변경하여 제2 렌더링 방식을 설정하는 단계, 및 상기 제2 렌더링 방식을 통해 상기 3D 그래픽 모델에 대한 렌더링을 수행하여 제2 시점 영상을 생성하는 단계를 포함한다.According to another aspect of the present invention, there is provided a 3D graphic model stereoscopic rendering method, comprising: calling a rendering function to generate a first view image of a 3D graphic model, changing a called rendering function, and setting a first rendering method; Generating a first view image by performing rendering on the 3D graphic model through the first rendering method, and changing the rendering function to generate a second view image of the 3D graphic model And generating a second viewpoint image by rendering the 3D graphic model through the second rendering method.

상기 제1 렌더링 방식을 설정하는 단계는, 상기 렌더링 함수의 호출 전에 설정되어 있던 모델뷰 행렬 값을 변경하여 상기 3D 그래픽 모델의 시점을 제1 시점으로 변경하는 단계를 포함할 수 있다.The setting of the first rendering method may include changing a viewpoint of the 3D graphic model to a first viewpoint by changing a model view matrix value set before the rendering function is called.

상기 제1 렌더링 방식을 설정하는 단계는, 상기 렌더링 함수의 호출 전에 설정되어 있던 투영 행렬 값을 변경하여 상기 제1 시점에서 상기 3D 그래픽 모델을 제1 시점의 가상의 공간에 맵핑시키는 단계를 더 포함할 수 있다.The setting of the first rendering method may further include mapping the 3D graphic model to the virtual space at the first viewpoint by changing the projection matrix value set before the invoking the rendering function. can do.

상기 제1 렌더링 방식을 설정하는 단계는, 상기 렌더링 함수의 호출 전에 설정되어 있던 뷰포트를 변경하여 상기 제1 시점에서 상기 3D 그래픽 모델을 스크린 상의 제1 시점 좌표계로 변환하는 단계를 더 포함할 수 있다.The setting of the first rendering method may further include converting the 3D graphic model to a first viewpoint coordinate system on a screen at the first viewpoint by changing a viewport set before the rendering function is called. .

상기 제2 렌더링 방식을 설정하는 단계는, 상기 렌더링 함수의 호출 전에 설정되어 있던 모델뷰 행렬 값을 변경하여 상기 3D 그래픽 모델의 시점을 제2 시점으로 변경하는 단계를 포함할 수 있다.The setting of the second rendering method may include changing a viewpoint of the 3D graphic model to a second viewpoint by changing a model view matrix value set before the rendering function is called.

상기 제2 렌더링 방식을 설정하는 단계는, 상기 렌더링 함수의 호출 전에 설정되어 있던 투영 행렬 값을 변경하여 상기 제2 시점에서 상기 3D 그래픽 모델을 제2 시점의 가상의 공간에 맵핑시키는 단계를 더 포함할 수 있다.The setting of the second rendering method may further include mapping the 3D graphic model to the virtual space at the second viewpoint by changing the projection matrix value set before the call to the rendering function. can do.

상기 제2 렌더링 방식을 설정하는 단계는, 상기 렌더링 함수의 호출 전에 설정되어 있던 뷰포트 행렬 값을 변경하여 상기 제2 시점에서 상기 3D 그래픽 모델을 스크린 상의 제2 시점 좌표계로 변환하는 단계를 더 포함할 수 있다.The setting of the second rendering method may further include converting the 3D graphic model to a second viewpoint coordinate system on the screen at the second viewpoint by changing a viewport matrix value that was set before the rendering function is called. Can be.

상기 제1 렌더링 방식을 설정하는 단계는, 상기 렌더링 함수를 포함하는 그래픽 처리 함수가 호출되는 호출 순서를 저장하는 단계를 더 포함하고, 상기 호출 순서대로 호출되는 그래픽 처리 함수 중 렌더링 함수를 변경하여 상기 제2 렌더링 방식을 설정할 수 있다.The setting of the first rendering method may further include storing a calling order in which a graphic processing function including the rendering function is called, and changing a rendering function among graphic processing functions called in the calling order. The second rendering method may be set.

상기 시점 변경에 따른 렌더링 방식은 제1, 제2 이외에 추가적으로 제3, 제4 등의 여러 시점을 위한 렌더링에 동일하게 활용할 수 있다.The rendering method according to the viewpoint change may be equally used for rendering for various viewpoints such as the third and fourth in addition to the first and second.

실시간 그래픽 렌더링 기술을 이용한 어플리케이션(게임, 그래픽 프로그램 등)의 단일 시점 실시간 렌더링 방식을 어플리케이션 수정 없이 좌안 및 우안 영상 생성을 위한 렌더링 방식으로 변경하여 실시간으로 좌안 및 우안 영상으로 구성되는 입체 영상을 생성할 수 있다. It is possible to generate a three-dimensional image composed of left and right eye images in real time by changing the single-view real-time rendering method of an application (game, graphic program, etc.) using real-time graphic rendering technology to a rendering method for generating left and right eye images without application modification. Can be.

도 1은 본 발명의 일 실시예에 따른 3D 그래픽 모델 입체 렌더링 장치를 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 3D 그래픽 모델 입체 렌더링 방법을 나타내는 흐름도이다.
도 3은 본 발명의 다른 실시예에 따른 3D 그래픽 모델 입체 렌더링 장치를 나타내는 블록도이다.
도 4는 본 발명의 다른 실시예에 따른 3D 그래픽 모델 입체 렌더링 방법을 나타내는 흐름도이다.
1 is a block diagram illustrating a 3D graphic model stereoscopic rendering device according to an embodiment of the present invention.
2 is a flowchart illustrating a 3D graphic model stereoscopic rendering method according to an embodiment of the present invention.
3 is a block diagram illustrating a 3D graphic model stereoscopic rendering device according to another embodiment of the present invention.
4 is a flowchart illustrating a 3D graphic model stereoscopic rendering method according to another embodiment of the present invention.

이하, 첨부한 도면을 참고로 하여 본 발명의 실시예들에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예들에 한정되지 않는다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. The present invention may be embodied in many different forms and is not limited to the embodiments described herein.

또한, 여러 실시예들에 있어서, 동일한 구성을 가지는 구성요소에 대해서는 동일한 부호를 사용하여 대표적으로 제1 실시예에서 설명하고, 그 외의 실시예에서는 제1 실시예와 다른 구성에 대해서만 설명하기로 한다.In addition, in the various embodiments, components having the same configuration are represented by the same reference symbols in the first embodiment. In the other embodiments, only components different from those in the first embodiment will be described .

본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다.In order to clearly illustrate the present invention, parts not related to the description are omitted, and the same or similar components are denoted by the same reference numerals throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is said to "include" a certain component, it means that it can further include other components, without excluding other components unless specifically stated otherwise.

도 1은 본 발명의 일 실시예에 따른 3D 그래픽 모델 입체 렌더링 장치를 나타내는 블록도이다.1 is a block diagram illustrating a 3D graphic model stereoscopic rendering device according to an embodiment of the present invention.

도 1을 참조하면, 3D 그래픽 모델 입체 렌더링 장치(100)는 함수 호출부(110), 함수 변경부(120), 지오메트리(geometry) 처리부(130), 및 래스터(raster) 처리부(140)를 포함한다.Referring to FIG. 1, the 3D graphic model stereoscopic rendering apparatus 100 includes a function caller 110, a function changer 120, a geometry processor 130, and a raster processor 140. do.

함수 호출부(110)는 3D 그래픽 모델의 렌더링을 위한 렌더링 함수를 포함하는 그래픽 처리 함수를 호출한다. 그래픽 처리 함수는 데이터 설정 함수, 상태 변환 함수, 렌더링 함수를 포함한다. 함수 호출부(110)는 3D 그래픽 모델 정보를 수신하고 3D 그래픽 모델의 렌더링 방식을 설정하는 렌더링 인터페이스일 수 있다. 3D 그래픽 모델 정보는 3D 그래픽 모델에 대한 지오메트리(geometry), 시점(viewpoint), 조명, 셰이딩(shading) 정보 등을 포함할 수 있다. 3D 그래픽 모델 정보는 특정 저장매체에 저장되어 있는 정보일 수 있으며, 특정 저장매체에서 함수 호출부(110)로 제공될 수 있다.The function caller 110 calls a graphics processing function including a rendering function for rendering the 3D graphics model. Graphics processing functions include data setting functions, state transformation functions, and rendering functions. The function call unit 110 may be a rendering interface that receives 3D graphic model information and sets a rendering method of the 3D graphic model. The 3D graphic model information may include geometry, viewpoint, lighting, shading information, and the like for the 3D graphic model. The 3D graphic model information may be information stored in a specific storage medium, and may be provided to the function call unit 110 in a specific storage medium.

함수 호출부(110)는 호출되는 그래픽 처리 함수를 함수 변경부(120) 및/또는 지오메트리 변환부(130)에 전달한다. 특히, 함수 호출부(110)는 호출되는 그래픽 처리 함수 중에서 실제 렌더링을 수행하는 렌더링 함수를 함수 변경부(120)에 전달하고, 그외의 함수들은 지오메트리 변환부(130)에 전달한다. The function caller 110 transmits the called graphic processing function to the function changer 120 and / or the geometry converter 130. In particular, the function call unit 110 transmits a rendering function that performs actual rendering among the called graphic processing functions to the function change unit 120, and other functions to the geometry transformation unit 130.

본 발명의 실시 예에서는 그래픽 처리 함수 중 렌더링 함수가 변경되는 경우를 설명하고 있다. 그러나 본 발명이 이에 한정되는 것은 아니고 필요에 따라 그래픽 처리 함수들 중 렌더링 함수 이외의 다른 함수도 함수 변경부(120)에 전달 될 수 있다.An embodiment of the present invention describes a case where a rendering function is changed among graphic processing functions. However, the present invention is not limited thereto, and other functions other than the rendering function among the graphic processing functions may be transferred to the function changer 120 as necessary.

함수 변경부(120)는 3D 그래픽 모델의 입체 변환을 실시간으로 수행한다. 함수 변경부(120)는 제1 시점 영상 및 제2 시점 영상을 생성하기 위하여 그래픽 처리 함수 중에서 렌더링 함수를 제1 렌더링 함수와 제2 렌더링 함수로 변경한다. 함수 변경부(120)에서는 함수 호출부(110)의 렌더링 함수 호출 시 제1 렌더링 함수 및 제2 렌더링 함수를 호출하도록 할 수 있다. 제1 렌더링 함수는 3D 그래픽 모델에 대한 제1 시점 영상을 생성하기 위하여 모델뷰 행렬 값, 투영 행렬 값 및 뷰포트 값을 포함하고, 제2 렌더링 함수는 3D 그래픽 모델에 대한 제2 시점 영상을 생성하기 위하여 모델뷰 행렬 값, 투영 행렬 값 및 뷰포트 값을 포함한다. 제1 렌더링 함수는 제1 시점 영상을 생성하기 위하여 모델뷰 행렬 값, 투영 행렬 값 및 뷰포트 값을 변경하여 렌더링을 수행하는 함수를 의미한다. 제2 렌더링 함수는 제2 시점 영상을 생성하기 위하여 모델뷰 행렬 값, 투영 행렬 값 및 뷰포트 값을 변경하여 렌더링을 수행하는 함수를 의미한다. The function change unit 120 performs stereoscopic transformation of the 3D graphic model in real time. The function changing unit 120 changes the rendering function to the first rendering function and the second rendering function among the graphic processing functions to generate the first view image and the second view image. The function changer 120 may call the first render function and the second render function when the function call unit 110 calls the render function. The first rendering function includes a model view matrix value, a projection matrix value, and a viewport value to generate a first viewpoint image for the 3D graphic model, and the second rendering function generates a second viewpoint image for the 3D graphic model. This includes model view matrix values, projection matrix values, and viewport values. The first rendering function refers to a function that performs rendering by changing a model view matrix value, a projection matrix value, and a viewport value to generate a first view image. The second rendering function refers to a function that performs rendering by changing a model view matrix value, a projection matrix value, and a viewport value to generate a second view image.

모델뷰 행렬(Model-View Matrix)은 3D 그래픽 모델의 시점을 변경하는 행렬 값이고, 투영 행렬(Projection Matrix)은 3D 그래픽 모델을 가상의 공간에 맵핑시키는 행렬 값이며, 뷰포트(Viewport)는 3D 그래픽 모델을 스크린 상의 좌표계로 변환하는 값이다. 뷰포트의 의미에는 클립 영역(Clip Area)을 포함 할 수 있다.Model-View Matrix is a matrix value that changes the viewpoint of the 3D graphics model, Projection Matrix is a matrix value that maps the 3D graphics model to the virtual space, and Viewport is a 3D graphics This value converts the model to the coordinate system on the screen. The meaning of the viewport may include a clip area.

제1 시점 영상은 좌안 영상 및 우안 영상 중 어느 하나, 제2 시점 영상은 다른 하나를 의미한다. 제1 시점 영상 및 제2 시점 영상의 조합으로 입체 영상이 표시된다. The first view image refers to any one of a left eye image and a right eye image, and the second view image refers to the other. The stereoscopic image is displayed by combining the first viewpoint image and the second viewpoint image.

이때, 투영 행렬 값과 뷰포트 값 변경은 최종 입체 영상의 형식에 따라 정해질 수 있다. 통상 Side by side (전체 영역 중 좌측 반은 좌안 또는 우안 영상, 우측 반은 우안 또는 좌안 영상), Top-down (전체 영역 중 상위 반은 좌안 또는 우안 영상, 하위 반은 우안 또는 좌안 영상) 의 형식에 따라 투영 행렬 값과 뷰포트 값이 결정 될 수 있으며, 이 외의 영역 분할에 대해서도 투영 행렬 값과 뷰포트 값 설정이 가능할 수 있다.In this case, the projection matrix value and the viewport value change may be determined according to the format of the final stereoscopic image. Normally, the form of Side by side (left half of the whole area is left or right eye image, right half is right or left eye image), and Top-down (upper half of the whole area is left or right eye image, lower half is right or left eye image) The projection matrix value and the viewport value may be determined, and the projection matrix value and the viewport value may be set for other region divisions.

즉, 함수 변경부(120)는 지오메트리 처리 전 3D 그래픽 모델을 좌안 시점(Viewpoint) 위치로 이동/회전시켜 좌안 영상이 생성되도록 하고, 3D 그래픽 모델을 우안 시점(Viewpoint) 위치로 이동/회전시켜 우안 영상이 생성되도록 모델뷰 행렬을 변경할 수 있다. 이때 회전은 초점 위치에 맞도록 회전 할 수 있는데 초점의 위치는 임의의 점을 지정하거나 렌더링 장치의 Depth 정보를 이용하여 제일 가까이 있는 점을 구하여 자동으로 설정 가능하다. 그리고/또는 함수 변경부(120)는 3D 그래픽 모델에 대하여 카메라의 위치가 좌안 시점 또는 우안 시점으로 이동 설정되도록 모델뷰 행렬 값을 변경할 수 있다. That is, the function changer 120 moves / rotates the 3D graphic model to the left eye viewpoint position before the geometry processing to generate a left eye image, and moves / rotates the 3D graphic model to the right eye view point to the right eye. The model view matrix can be changed to generate an image. At this time, the rotation can be rotated to match the focus position. The focus position can be set automatically by specifying an arbitrary point or by finding the nearest point using Depth information of the rendering device. And / or the function changer 120 may change the model view matrix value such that the camera position is set to move to the left eye view or the right eye view with respect to the 3D graphic model.

그리고 함수 변경부(120)는 3D 그래픽 모델의 이동/회전 및/또는 카메라의 위치 설정에 따라 변경된 시점에서 3D 그래픽 모델이 입방체에 맵핑되도록 투영 행렬 값을 변경한다. 3D 그래픽 모델이 맵핑되는 입방체는 좌안 영상 또는 우안 영상이 표시되는 가상의 공간을 의미한다. 그리고 함수 변경부(120)는 좌안 시점 또는 우안 시점에서 3D 그래픽 모델이 스크린 상의 좌표계로 변환되도록 뷰포트를 변경한다. 이때, 투영 행렬 값 및 뷰포트 값 둘다 변경 되거나 둘 중 하나만 변경 될 수 있다.The function changing unit 120 changes the projection matrix value so that the 3D graphic model is mapped to the cube at the changed time point according to the movement / rotation of the 3D graphic model and / or the position setting of the camera. The cube to which the 3D graphic model is mapped refers to a virtual space in which a left eye image or a right eye image is displayed. The function changing unit 120 changes the viewport so that the 3D graphic model is converted into a coordinate system on the screen at the left eye view or the right eye view. At this time, both the projection matrix value and the viewport value may be changed, or only one of the two may be changed.

함수 변경부(120)는 함수 호출부(110)에서 전달되는 렌더링 함수들에 대해 좌안 시점 및 우안 시점에 해당하는 모델뷰 행렬값, 투영 행렬값, 뷰포트 값을 변경하여 지오메트리 처리부(130)에 전달한다. 여기서 함수 변경부(120)는 두 번에 걸쳐 좌안 및 우안에 대해 변경된 모델뷰 행렬값, 투영 행렬값, 뷰포트 값을 지오메트리 처리부(130)에 전달하게 된다.The function changer 120 changes the model view matrix value, the projection matrix value, and the viewport value corresponding to the left eye view and the right eye view with respect to the rendering functions transferred from the function caller 110 and transmits them to the geometry processor 130. do. Here, the function changer 120 transmits the model view matrix value, the projection matrix value, and the viewport value changed for the left and right eyes to the geometry processor 130 twice.

이와 같이, 함수 변경부(120)에서 제1 시점(좌안)에 대해 모델뷰 행렬값, 투영 행렬값 및 뷰포트가 변경되어 3D 그래픽 모델에 대한 제1 시점 영상을 생성하기 위한 제1 렌더링 방식이 설정된다. 그리고 제1 시점 영상 생성 이후 제2 시점(우안)에 대한 모델뷰 행렬값, 투영 행렬값 및 뷰포트가 변경되어 3D 그래픽 모델에 대한 제2 시점 영상을 생성하기 위한 제2 렌더링 방식이 설정된다.As such, the model view matrix value, the projection matrix value, and the viewport are changed with respect to the first viewpoint (left eye) in the function changer 120 to set a first rendering method for generating a first viewpoint image for the 3D graphic model. do. After the first view image is generated, the model view matrix value, the projection matrix value, and the viewport for the second view point (right eye) are changed to set a second rendering method for generating a second view image for the 3D graphic model.

지오메트리 처리부(130)는 3D 그래픽 모델에 대한 지오메트리 변환(geometry transformation)을 수행한다. 지오메트리 변환은 어파인 변환(affine transformation)을 이용하여 3D 그래픽 모델을 변형하는 과정이다. 어파인 변환은 도형의 이동, 확대/축소 및 회전 변환을 포함한다. 지오메트리 변환은 3D 그래픽 모델에 대한 모델뷰 변환(model-view transformation), 조명 산출(lighting calculation), 투영 변환(projection transformation), 클립 테스트(clip test), 뷰포트 변환(view port transformation) 등을 포함한다. The geometry processor 130 performs geometry transformation on the 3D graphic model. Geometry transformation is the process of transforming a 3D graphic model using affine transformation. Affine transformations include translation, zooming and rotation transformations of figures. Geometry transformations include model-view transformations, lighting calculations, projection transformations, clip tests, view port transformations, etc., for 3D graphical models. .

모델뷰 변환은 3D 그래픽 모델의 시점(viewpoint)을 변환하는 과정이다. 조명 산출은 점 광원, 평행 광원, 집중 광원 등과 같은 소정의 광원으로부터 3D 그래픽 모델에 투사되는 투사광의 방향 및 광량, 반사광의 방향 및 광량, 주변광 등을 산출하는 과정이다. 투영 변환은 카메라 안에 있는 물체(시야절두체)를 입방체에 맵핑시키는 과정으로, 투영 변환에 의해 카메라에 가까이 위치한 개체가 확대되는 원근감 효과가 생긴다. 클립 테스트는 뷰포트 변환을 위해 3D 그래픽 모델에서 맵핑된 입방체의 영역을 벗어나는 부분 및 보이지 않는 부분을 잘라내는 과정이다. 뷰포트 변환은 투영 변환된 3D 그래픽 모델을 스크린 상의 좌표계로 변환하는 과정이다. Model view conversion is a process of converting a viewpoint of a 3D graphic model. The illumination calculation is a process of calculating the direction and amount of projection light, the direction and amount of reflected light, the ambient light, etc., projected onto the 3D graphic model from a predetermined light source such as a point light source, a parallel light source, a concentrated light source, and the like. Projection transformation is a process of mapping an object in the camera (field frustum) to a cube, resulting in a perspective effect in which an object located near the camera is enlarged by the projection transformation. Clip testing is the process of cutting out invisible and invisible parts of the mapped cube in the 3D graphics model for viewport transformation. Viewport transformation is the process of converting a projection-converted 3D graphic model into a coordinate system on the screen.

지오메트리 처리부(130)는 지오메트리 변환을 통하여 3D 그래픽 모델을 벡터 그래픽스(vector graphics)로 변환한다. 벡터 그래픽스는 선의 위치, 길이, 방향을 수학적으로 표현하는 방법이다. 즉, 지오메트리 처리부(130)는 각 과정을 수행하는 모델뷰 변환 함수, 조명 산출 함수, 투영 변환 함수, 클립 테스트 함수 및 뷰포트 변환 함수를 이용하여 지오메트리 변환을 수행할 수 있다. 특히, 모델뷰 변환 함수 및 투영 변환 함수는 3D 그래픽 모델의 좌표를 변환하는 4 X 4 매트릭스로 표현될 수 있다. The geometry processor 130 converts the 3D graphic model into vector graphics through geometry transformation. Vector graphics are a way of mathematically expressing the position, length, and direction of a line. That is, the geometry processor 130 may perform geometry transformation by using a model view transformation function, an illumination calculation function, a projection transformation function, a clip test function, and a viewport transformation function that perform each process. In particular, the modelview transform function and the projection transform function may be represented by a 4 × 4 matrix that transforms the coordinates of the 3D graphic model.

지오메트리 처리부(130)는 하드웨어에 의해 지오메트리 변환을 고속화하는 지오메트리 엔진을 이용할 수 있다. The geometry processor 130 may use a geometry engine that speeds up geometry transformation by hardware.

지오메트리 처리부(130)는 제1 시점(좌안)에 대해 모델뷰 행렬값 변경, 투영 행렬값 및 뷰포트 변경을 포함하는 제1 렌더링 함수를 적용하여 3D 그래픽 모델에 대한 제1 지오메트리 변환을 수행한다. 그리고 지오메트리 처리부(130)는 제2 시점(우안)에 대해 모델뷰 행렬값 변경, 투영 행렬값 및 뷰포트 변경을 포함하는 제2 렌더링 함수를 적용하여 3D 그래픽 모델에 대한 제2 지오메트리 변환을 수행한다.The geometry processor 130 performs a first geometry transformation on the 3D graphic model by applying a first rendering function including a model view matrix value change, a projection matrix value, and a viewport change to the first viewpoint (left eye). The geometry processor 130 performs a second geometry transformation on the 3D graphic model by applying a second rendering function including a model view matrix value change, a projection matrix value, and a viewport change to the second viewpoint (right eye).

래스터 처리부(140)는 지오메트리 변환에 의해 벡터 그래픽스로 변환된 3D 그래픽 모델에 대해 래스터화(rasterization)를 수행한다. 래스터화는 벡터 그래픽스를 픽셀 패턴 이미지로 변환하는 과정이다. 즉, 래스터 처리부(140)는 실태가 없었던 3D 그래픽 모델의 폴리곤(polygon)을 화면상의 픽셀에 대응시켜 붙여주는 과정을 수행한다. 폴리곤은 3D 그래픽 모델을 표현하는 가장 작은 단위의 다각형을 의미한다. 제1 지오메트리 변환이 수행된 3D 그래픽 모델에 대해 래스터화가 수행되어 제1 시점 영상(좌안 영상)이 생성된다. 제2 지오메트리 변환이 수행된 3D 그래픽 모델에 대해 래스터화가 수행되어 제2 시점 영상(우안 영상)이 생성된다. 래스터 처리부(140)는 래스터화가 수행된 좌안 영상 및 우안 영상을 프레임 버퍼(160)에 전달하여 프레임 버퍼(160)에 좌안 영상 및 우안 영상이 실시간으로 생성되도록 한다.The raster processor 140 performs rasterization on the 3D graphic model converted into vector graphics by the geometric transformation. Rasterization is the process of converting vector graphics into pixel pattern images. That is, the raster processor 140 performs a process of pasting a polygon of a 3D graphic model, which has not existed, corresponding to a pixel on the screen. Polygon means the smallest unit of polygon that represents a 3D graphic model. Rasterization is performed on the 3D graphic model on which the first geometry transformation is performed to generate a first viewpoint image (left eye image). Rasterization is performed on the 3D graphic model on which the second geometry transformation is performed to generate a second viewpoint image (right eye image). The raster processor 140 transfers the rasterized left eye image and the right eye image to the frame buffer 160 so that the left eye image and the right eye image are generated in real time in the frame buffer 160.

래스터 처리부(140)는 하드웨어에 의해 래스터화 변환을 고속화하는 래스터 엔진을 이용할 수 있다.The raster processing unit 140 may use a raster engine that speeds up the rasterization conversion by hardware.

프레임 버퍼(160)는 3D 그래픽 모델 렌더링 장치(100)에서 생성된 좌안 영상 및 우안 영상을 일시적으로 저장하여 표시부(170)에 전달한다.The frame buffer 160 temporarily stores the left eye image and the right eye image generated by the 3D graphic model rendering apparatus 100 and transmits them to the display unit 170.

표시부(170)는 프레임 버퍼(160)에 생성된 좌안 영상 및 우안 영상을 표시한다. 표시부(170)는 특수 안경을 이용하는 입체영상 표시장치 및 특수 안경을 이용하지 않는 입체영상 표시장치를 포함한다. 특수 안경을 이용하는 입체영상 표시장치는 색안경 방식, 편광안경 방식, 셔터안경 방식 등으로 좌안 영상 및 우안 영상이 분리 선택되도록 한다. 특수 안경을 이용하지 않는 입체영상 표시장치는 렌티큘라 시트(lenticular sheet) 방식, 백라이트 분배(back light distribution) 방식, 슬릿 베리어(slit barrier) 방식 등으로 좌안 영상 및 영상 및 우안 영상이 분리 선택되도록 한다.The display unit 170 displays the left eye image and the right eye image generated in the frame buffer 160. The display unit 170 includes a stereoscopic image display apparatus using special glasses and a stereoscopic image display apparatus not using special glasses. The stereoscopic image display apparatus using the special glasses allows the left eye image and the right eye image to be separately selected by using a sunglasses, a polarized glasses, a shutter glasses. A stereoscopic image display device that does not use special glasses allows the left eye image, the right eye image, and the right eye image to be separately selected by a lenticular sheet method, a back light distribution method, or a slit barrier method. .

이제, 도 1 및 2를 참조하여 단일 시점의 영상을 좌안 영상 및 우안 영상으로 실시간으로 변환하는 일 실시예에 따른 3D 그래픽 모델의 렌더링 방법에 대하여 설명한다.A method of rendering a 3D graphic model according to an exemplary embodiment of converting an image of a single viewpoint into a left eye image and a right eye image in real time will now be described with reference to FIGS. 1 and 2.

도 2는 본 발명의 일 실시예에 따른 3D 그래픽 모델 입체 렌더링 방법을 나타내는 흐름도이다.2 is a flowchart illustrating a 3D graphic model stereoscopic rendering method according to an embodiment of the present invention.

도 1 및 2를 참조하면, 3D 그래픽 모델 입체 렌더링 장치(100)는 3D 그래픽 모델 정보를 수신하고, 그래픽 처리 함수가 정의되어 있는 함수 호출부(110)에서 그래픽 처리 함수를 호출한다(S110). 이때, 함수 호출부(110)는 해당 렌더링 함수를 함수 변경부(120)에 전달한다. 1 and 2, the 3D graphic model stereoscopic rendering apparatus 100 receives 3D graphic model information and calls the graphic processing function from the function call unit 110 in which the graphic processing function is defined (S110). In this case, the function call unit 110 transmits the corresponding rendering function to the function change unit 120.

3D 그래픽 모델 입체 렌더링 장치(100)는 제1 시점으로의 시점 변경을 위해 모델뷰 행렬 값 및 투영 행렬 값을 변경한다(S120). 함수 변경부(120)에서 좌/우안 각각 모델뷰 행렬 값, 투영 행렬 값 및 뷰포트 값이 변경된다. The 3D graphic model stereoscopic rendering apparatus 100 changes the model view matrix value and the projection matrix value to change the viewpoint to the first viewpoint (S120). In the function changing unit 120, the model view matrix value, the projection matrix value, and the viewport value are changed in each of the left and right eyes.

함수 변경부(120)는 렌더링 함수가 호출되기 전에 설정된 모델뷰 행렬 값을 변경하여 3D 그래픽 모델의 시점을 제1 시점으로 변경한다. 즉, 함수 변경부(120)는 3D 그래픽 모델을 임의의 축을 기준으로 제1 방향(반시계방향 또는 시계방향)으로 회전 및 카메라의 위치가 제1 시점(좌안 시점 또는 우안 시점)으로 이동 설정되도록 모델뷰 행렬 값을 변경한다. 즉, 3D 그래픽 모델 입체 렌더링 장치(100)는 모델뷰 행렬 값의 변경에 따라 3D 그래픽 모델의 시점을 제1 시점으로 변경한다.The function changing unit 120 changes the viewpoint of the 3D graphic model to the first viewpoint by changing the model view matrix value set before the rendering function is called. That is, the function changer 120 rotates the 3D graphic model in a first direction (counterclockwise or clockwise) with respect to an axis and moves the camera position to a first viewpoint (left eye view or right eye view). Change the model view matrix value. That is, the 3D graphic model stereoscopic rendering apparatus 100 changes the viewpoint of the 3D graphic model to the first viewpoint according to the change of the model view matrix value.

그리고, 함수 변경부(120)는 제1 시점에서 3D 그래픽 모델이 입방체(가상의 공간)에 맵핑되도록 투영 행렬 값을 변경한다. 즉, 함수 변경부(120)는 렌더링 함수가 호출되기 전에 설정된 투영 행렬 값을 변경하여 제1 시점에서 3D 그래픽 모델을 제1 시점의 가상 공간에 맵핑되도록 한다.The function change unit 120 changes the projection matrix value so that the 3D graphic model is mapped to a cube (virtual space) at the first time point. That is, the function changer 120 changes the projection matrix value set before the rendering function is called to map the 3D graphic model to the virtual space at the first viewpoint.

3D 그래픽 모델 입체 렌더링 장치(100)는 제1 시점에서 3D 그래픽 모델이 스크린 상의 좌표계로 변환되도록 뷰포트 변경을 수행한다(S130). 즉, 함수 변경부(120)는 렌더링 함수가 호출되기 전에 설정된 뷰포트를 변경하여 제1 시점에서 3D 그래픽 모델이 스크린 상의 제1 시점 좌표계로 변환되도록 한다. The 3D graphic model stereoscopic rendering apparatus 100 performs a viewport change so that the 3D graphic model is converted into a coordinate system on the screen at the first viewpoint (S130). That is, the function change unit 120 changes the viewport set before the rendering function is called so that the 3D graphic model is converted into the first view coordinate system on the screen at the first view.

3D 그래픽 모델 입체 렌더링 장치(100)는 제1 시점 영상에 대한 렌더링을 수행한다(S140). 즉, 3D 그래픽 모델 입체 렌더링 장치(100)는 제1 시점 영상의 생성을 위해 모델뷰 행렬 값 변경, 투영 행렬 값 변경 및 뷰포트 값을 변경하여 제1 시점 영상의 생성을 위한 제1 렌더링 방식을 설정한다. 3D 그래픽 모델 입체 렌더링 장치(100)는 제1 렌더링 방식을 통해 3D 그래픽 모델에 대한 렌더링을 수행하여 제1 시점 영상을 생성한다. The 3D graphic model stereoscopic rendering apparatus 100 performs rendering on the first viewpoint image (S140). That is, the 3D graphic model stereoscopic rendering apparatus 100 sets a first rendering method for generating a first viewpoint image by changing a model view matrix value, a projection matrix value, and a viewport value to generate a first viewpoint image. do. The 3D graphic model stereoscopic rendering apparatus 100 generates a first view image by rendering a 3D graphic model through a first rendering method.

3D 그래픽 모델 입체 렌더링 장치(100)는 제2 시점으로의 시점 변경을 위해 모델뷰 행렬 값 및 투영 행렬 값을 변경한다(S150). 함수 변경부(120)는 렌더링 함수가 호출되기 전에 설정된 모델뷰 행렬 값을 변경하여 3D 그래픽 모델의 시점을 제2 시점으로 변경한다. 즉, 함수 변경부(120)는 3D 그래픽 모델을 임의의 축을 기준으로 제2 방향(반시계방향 또는 시계방향)으로 회전 및 카메라의 위치가 제2 시점(좌안 시점 또는 우안 시점)으로 이동 설정되도록 모델뷰 행렬 값을 변경할 수 있다. 3D 그래픽 모델 입체 렌더링 장치(100)는 모델뷰 행렬 값의 변경에 따라 3D 그래픽 모델의 시점을 제2 시점으로 변경할 수 있다.The 3D graphic model stereoscopic rendering apparatus 100 changes the model view matrix value and the projection matrix value to change the viewpoint to the second viewpoint (S150). The function changing unit 120 changes the viewpoint of the 3D graphic model to the second viewpoint by changing the model view matrix value set before the rendering function is called. That is, the function changer 120 rotates the 3D graphic model in a second direction (counterclockwise or clockwise) with respect to an axis and moves the camera to a second viewpoint (left eye view or right eye view). You can change the model view matrix value. The 3D graphic model stereoscopic rendering apparatus 100 may change the viewpoint of the 3D graphic model to the second viewpoint according to the change of the model view matrix value.

그리고, 함수 변경부(120)는 렌더링 함수가 호출되기 전에 설정된 투영 행렬 값을 변경하여 제2 시점에서 3D 그래픽 모델이 제2 시점의 가상의 공간에 맵핑되도록 한다.The function change unit 120 changes the projection matrix value set before the rendering function is called so that the 3D graphic model is mapped to the virtual space at the second view.

3D 그래픽 모델 입체 렌더링 장치(100)는 제2 시점에서 3D 그래픽 모델이 스크린 상의 좌표계로 변환되도록 뷰포트 변경을 수행한다(S160). 즉, 함수 변경부(120)는 렌더링 함수가 호출되기 전에 설정된 뷰포트 행렬 값을 변경하여 제2 시점에서 3D 그래픽 모델이 스크린 상의 제2 시점 좌표계로 변환되도록 한다. The 3D graphic model stereoscopic rendering apparatus 100 performs a viewport change so that the 3D graphic model is converted into a coordinate system on the screen at the second viewpoint (S160). That is, the function changer 120 changes the viewport matrix value set before the rendering function is called so that the 3D graphic model is converted into the second view coordinate system on the screen at the second view.

3D 그래픽 모델 입체 렌더링 장치(100)는 제2 시점 영상에 대한 렌더링을 수행한다(S170). 즉, 3D 그래픽 모델 입체 렌더링 장치(100)는 제2 시점 영상의 생성을 위해 모델뷰 행렬 값 변경, 투영 행렬 값 변경 및 뷰포트 값 변경을 적용하여 제2 시점 영상의 생성을 위한 제2 렌더링 방식을 설정한다. 3D 그래픽 모델 입체 렌더링 장치(100)는 제2 렌더링 방식을 통해 3D 그래픽 모델에 대한 렌더링을 수행하여 제2 시점 영상을 생성한다. The 3D graphic model stereoscopic rendering apparatus 100 performs rendering on the second viewpoint image (S170). That is, the 3D graphic model stereoscopic rendering apparatus 100 applies a second rendering method for generating a second viewpoint image by applying a model view matrix value change, a projection matrix value change, and a viewport value change to generate a second viewpoint image. Set it. The 3D graphic model stereoscopic rendering apparatus 100 generates a second view image by rendering the 3D graphic model through the second rendering method.

생성된 제1 시점 영상 및 제2 시점 영상은 프레임 버퍼(160)에 일시적으로 저장되어 표시부(170)에 전달되고, 표시부(170)에서 제1 시점 영상 및 제2 시점 영상에 의한 입체 영상이 표시된다. The generated first view image and the second view image are temporarily stored in the frame buffer 160 and transferred to the display unit 170, and the display unit 170 displays a stereoscopic image by the first view image and the second view image. do.

이와 같이, 3D 그래픽 모델에 대한 렌더링 함수를 변경하여 단일 시점 렌더링 방식을 좌안 및 우안 영상 생성을 위한 렌더링 방식으로 변경하여 실시간으로 좌안 및 우안으로 구성된 입체 영상을 생성 할 수 있다.As such, by changing the rendering function for the 3D graphic model, a single view rendering method may be changed to a rendering method for generating left and right eye images to generate a stereoscopic image composed of left and right eyes in real time.

도 3은 본 발명의 다른 실시예에 따른 3D 그래픽 모델 입체 렌더링 장치를 나타내는 블록도이다. 3 is a block diagram illustrating a 3D graphic model stereoscopic rendering device according to another embodiment of the present invention.

도 3을 참조하면, 3D 그래픽 모델 입체 렌더링 장치(200)는 함수 호출부(210), 함수 변경부(220), 지오메트리 처리부(230), 래스터 처리부(240) 및 데이터 저장부(250)를 포함한다. 3D 그래픽 모델 입체 렌더링 장치(200)는 도 1과 비교하여 데이터 저장부(250)를 더 포함한다. 도 1과 비교하여 차이점 위주로 설명하며, 설명되지 않는 부분은 도 1의 설명에 따라 해석될 수 있다.Referring to FIG. 3, the 3D graphic model stereoscopic rendering apparatus 200 includes a function caller 210, a function changer 220, a geometry processor 230, a raster processor 240, and a data storage 250. do. The 3D graphic model stereoscopic rendering apparatus 200 further includes a data storage unit 250 as compared with FIG. 1. The description will be made mainly on the difference compared to FIG. 1, and parts not described may be interpreted according to the description of FIG. 1.

데이터 저장부(250)는 제1 시점 영상이 생성되는 과정 동안 함수 호출부(210)에서 호출되는 그래픽 처리 함수에 대한 정보를 저장한다. 그래픽 처리 함수에 대한 정보는 함수 호출부(210)에서 호출되는 그래픽 처리 함수의 호출 순서 및 데이터 정보를 포함한다. 즉, 데이터 저장부(250)는 함수 호출부(210)에서 호출되는 그래픽 처리 함수의 호출 순서 및 데이터 정보를 저장할 수 있다. 데이터 저장부(250)는 함수 호출부(210)에서 호출되는 그래픽 처리 함수에 대한 정보를 좌안 영상 또는 우안 영상의 하나의 프레임 단위로 저장할 수 있다. 데이터 정보는 렌더링 함수의 기능, 상태, 데이터 등을 포함한다. 제1 시점 영상의 생성 과정은 도 2에서 설명한 바와 같이, 제1 시점에 대해 모델뷰 행렬 값, 투영 행렬 값 및 뷰포트 값이 변경되고, 변경된 모델뷰 행렬, 투영 행렬 및 뷰포트가 적용된 제1 렌더링 방식으로 3D 그래픽 모델에 대한 렌더링이 수행되는 과정을 포함한다. 즉, 제1 시점 영상이 생성되는 동안 호출되는 그래픽 처리 함수는 지오메트리 변환을 위한 함수를 포함한다. 지오메트리 변환을 위한 함수는 모델뷰 변환 함수, 조명 산출 함수, 투영 변환 함수, 클립 테스트 함수, 뷰포트 변환 함수 등을 포함한다.The data storage unit 250 stores information about the graphic processing function called by the function call unit 210 during the process of generating the first view image. The information on the graphic processing function includes a call order and data information of the graphic processing function called by the function caller 210. That is, the data storage unit 250 may store a call order and data information of the graphic processing function called by the function caller 210. The data storage unit 250 may store information about a graphic processing function called by the function caller 210 in one frame unit of a left eye image or a right eye image. The data information includes the function, state, data, etc. of the rendering function. As described with reference to FIG. 2, the generation process of the first view image includes a first rendering method in which the model view matrix value, the projection matrix value, and the viewport value are changed and the changed model view matrix, the projection matrix, and the viewport are applied to the first viewpoint. As such, the rendering of the 3D graphic model is performed. That is, the graphic processing function that is called while the first view image is generated includes a function for transforming geometry. Functions for geometric transformation include model view transformation function, lighting calculation function, projection transformation function, clip test function, viewport transformation function, and so on.

데이터 저장부(250)에 저장된 그래픽 처리 함수 정보는 제2 시점 영상의 생성 과정에서 함수 호출부(210)에 전달된다. The graphic processing function information stored in the data storage unit 250 is transferred to the function call unit 210 in the process of generating the second view image.

함수 호출부(210)는 데이터 저장부(250)에 저장된 그래픽 처리 함수 정보, 즉 그래픽 처리 함수의 호출 순서 및 데이터 정보를 이용하여 순차적으로 그래픽 처리 함수를 호출하고 제2 시점 영상의 생성을 위한 제2 렌더링 방식을 설정할 수 있다. 즉, 함수 호출부(210)는 제1 렌더링 함수를 이용한 제1 렌더링이 수행된 후 데이터 저장부(250)에 저장된 그래픽 처리 함수를 저장된 호출 순서대로 호출할 수 있다. 함수 호출부(210)는 호출되는 그래픽 처리 함수 중 렌더링 함수를 함수 변경부(220) 및/또는 지오메트리 변환부(230)에 전달한다. The function caller 210 sequentially calls the graphic processing function by using the graphic processing function information stored in the data storage 250, that is, the calling order and data information of the graphic processing function, and generates a second view image. 2 Rendering method can be set. That is, the function call unit 210 may call the graphic processing functions stored in the data storage unit 250 in the stored calling order after the first rendering using the first rendering function is performed. The function caller 210 transmits a rendering function among the called graphic processing functions to the function changer 220 and / or the geometry converter 230.

제2 시점 영상의 생성 과정에서 함수 변경부(220)는 함수 호출부(210)에서 호출 순서대로 호출되는 그래픽 처리 함수 중 렌더링 함수를 제2 렌더링 함수로 변경한다. 함수 변경부(220)는 제2 시점 영상의 생성을 위해 모델뷰 행렬 값, 투영 행렬 값 및 뷰포트 값을 변경하여 지오메트리 처리부(230)에 전달한다. In the process of generating the second view image, the function changing unit 220 changes the rendering function among the graphic processing functions that are called in the calling order in the function caller 210 to the second rendering function. The function changer 220 changes the model view matrix value, the projection matrix value, and the viewport value to generate the second view image, and transmits the changed model view matrix value to the geometry processor 230.

지오메트리 처리부(230)는 제2 시점 영상의 생성을 위해 변경된 함수가 적용된 제2 렌더링 방식으로 3D그래픽 모델에 대한 지오메트리 변환을 수행할 수 있다. 즉, 제2 시점 영상의 생성을 위해 함수 변경부(120)로 전달될 렌더링 함수를 제외한 나머지 그래픽 처리 함수들은 제1 시점 영상의 생성 과정에서 사용된 함수들이 사용될 수 있다. The geometry processor 230 may perform geometry transformation on the 3D graphic model in a second rendering method to which the changed function is applied to generate the second view image. That is, except for the rendering function to be transferred to the function changer 120 for generating the second view image, the functions used in the process of generating the first view image may be used.

이제, 도 3 및 4를 참조하여 단일 시점의 영상을 좌안 영상 및 우안 영상으로 실시간으로 변환하는 다른 실시예에 따른 3D 그래픽 모델의 입체 렌더링 방법에 대하여 설명한다.3 and 4, a three-dimensional rendering method of a 3D graphic model according to another exemplary embodiment of converting an image of a single viewpoint into a left eye image and a right eye image in real time will be described.

도 4는 본 발명의 다른 실시예에 따른 3D 그래픽 모델 입체 렌더링 방법을 나타내는 흐름도이다.4 is a flowchart illustrating a 3D graphic model stereoscopic rendering method according to another embodiment of the present invention.

도 3 및 4를 참조하면, 3D 그래픽 모델 입체 렌더링 장치(200)는 3D 그래픽 모델 정보를 수신하고, 그래픽 처리 함수가 정의되어 있는 함수 호출부(210)에서 그래픽 처리 함수를 호출한다(S210). 이때, 함수 호출부(210)는 3D 그래픽 모델에 대한 렌더링 함수를 함수 변경부(220)에 전달한다. 3 and 4, the 3D graphic model stereoscopic rendering apparatus 200 receives 3D graphic model information and calls the graphic processing function from the function caller 210 in which the graphic processing function is defined (S210). In this case, the function call unit 210 transmits a rendering function for the 3D graphic model to the function change unit 220.

3D 그래픽 모델 입체 렌더링 장치(200)는 제1 시점 영상이 생성되는 과정 동안 함수 호출부(210)에서 호출되는 그래픽 처리 함수 정보를 데이터 저장부(250)에 저장한다(S220). 호출되는 그래픽 처리 함수는 지오메트리 변환을 위한 모델뷰 변환 함수, 조명 산출 함수, 투영 변환 함수, 클립 테스트 함수, 뷰포트 변환 함수 등을 포함할 수 있다. The 3D graphic model stereoscopic rendering apparatus 200 stores the graphic processing function information called by the function call unit 210 in the data storage unit 250 during the process of generating the first view image (S220). The graphics processing function that is called may include a modelview transform function, a light calculation function, a projection transform function, a clip test function, a viewport transform function, and the like, for geometric transformation.

3D 그래픽 모델 입체 렌더링 장치(200)는 제1 시점으로의 시점 변경을 위해 모델뷰 행렬 값 및 투영 행렬 값을 변경한다(S230). 즉, 함수 변경부(220)는 3D 그래픽 모델을 임의의 축을 기준으로 제1 방향(반시계방향 또는 시계방향)으로 회전 및 카메라의 위치가 제1 시점(좌안 시점 또는 우안 시점)으로 이동 설정되도록 모델뷰 행렬 값을 변경한다. 그리고, 함수 변경부(220)는 제1 시점에서 3D 그래픽 모델이 제1 시점의 가상 공간에 맵핑되도록 투영 행렬 값을 변경한다. The 3D graphic model stereoscopic rendering apparatus 200 changes the model view matrix value and the projection matrix value to change the viewpoint to the first viewpoint (S230). That is, the function changer 220 rotates the 3D graphic model in a first direction (counterclockwise or clockwise) with respect to an axis and moves the camera position to a first viewpoint (left eye view or right eye view). Change the model view matrix value. The function changing unit 220 changes the projection matrix value so that the 3D graphic model is mapped to the virtual space of the first view at the first view.

3D 그래픽 모델 입체 렌더링 장치(200)는 제1 시점에서 3D 그래픽 모델이 스크린 상의 좌표계로 변환되도록 뷰포트 변경을 수행한다(S240). 즉, 함수 변경부(220)는 제1 시점에서 3D 그래픽 모델이 스크린 상의 제1 시점 좌표계로 변환되도록 뷰포트 값을 변경 변경한다. The 3D graphic model stereoscopic rendering apparatus 200 performs a viewport change so that the 3D graphic model is converted into a coordinate system on the screen at the first viewpoint (S240). That is, the function change unit 220 changes and changes the viewport value so that the 3D graphic model is converted into the first view coordinate system on the screen at the first view.

3D 그래픽 모델 입체 렌더링 장치(200)는 제1 시점 영상에 대한 렌더링을 수행한다(S250). 3D 그래픽 모델 입체 렌더링 장치(200)는 제1 시점 영상의 생성을 위해 변경된 모델뷰 행렬 값, 투영 행렬 값 및 뷰포트 값을 적용하여 제1 시점 영상의 생성을 위한 제1 렌더링 방식을 설정할 수 있다. 3D 그래픽 모델 입체 렌더링 장치(200)는 제1 렌더링 방식을 통해 3D 그래픽 모델에 대한 렌더링을 수행하여 제1 시점 영상을 생성한다. The 3D graphic model stereoscopic rendering apparatus 200 performs rendering on the first viewpoint image (S250). The 3D graphic model stereoscopic rendering apparatus 200 may set the first rendering method for generating the first viewpoint image by applying the changed model view matrix value, the projection matrix value, and the viewport value to generate the first viewpoint image. The 3D graphic model stereoscopic rendering apparatus 200 generates a first view image by rendering a 3D graphic model through a first rendering method.

3D 그래픽 모델 입체 렌더링 장치(200)는 데이터 저장부(250)에 저장된 그래픽 처리 함수 정보를 이용하여 그래픽 처리 함수를 재호출한다(S260). 즉, 3D 그래픽 모델 입체 렌더링 장치(200)는 데이터 저장부(250)에 저장된 그래픽 처리 함수 정보, 즉 그래픽 처리 함수의 호출 순서 및 데이터 정보를 이용하여 그래픽 처리 함수를 순차적으로 호출할 수 있다. 이때, 함수 호출부(210)는 3D 그래픽 모델에 대한 렌더링 함수를 함수 변경부(220)에 전달한다.The 3D graphic model stereoscopic rendering apparatus 200 recalls the graphic processing function using the graphic processing function information stored in the data storage unit 250 (S260). That is, the 3D graphic model stereoscopic rendering apparatus 200 may sequentially call the graphic processing function using the graphic processing function information stored in the data storage 250, that is, the calling order and data information of the graphic processing function. In this case, the function call unit 210 transmits a rendering function for the 3D graphic model to the function change unit 220.

3D 그래픽 모델 입체 렌더링 장치(200)는 제2 시점으로의 시점 변경을 위해 모델뷰 행렬 값 및 투영 행렬 값을 변경한다(S270). 즉, 함수 변경부(220)는 3D 그래픽 모델을 임의의 축을 기준으로 제2 방향(시계방향 또는 반시계방향)으로 회전 및 카메라의 위치가 제2 시점(우안 시점 또는 좌안 시점)으로 이동 설정되도록 모델뷰 행렬 값을 변경한다. 그리고, 함수 변경부(220)는 제2 시점에서 3D 그래픽 모델이 제2 시점의 가상 공간에 맵핑되도록 투영 행렬 값을 변경한다.The 3D graphic model stereoscopic rendering apparatus 200 changes the model view matrix value and the projection matrix value to change the viewpoint to the second viewpoint (S270). That is, the function changing unit 220 rotates the 3D graphic model in a second direction (clockwise or counterclockwise) with respect to an axis and moves the camera position to a second viewpoint (right eye view or left eye view). Change the model view matrix value. The function changing unit 220 changes the projection matrix value so that the 3D graphic model is mapped to the virtual space of the second view at the second view.

3D 그래픽 모델 입체 렌더링 장치(200)는 제2 시점에서 3D 그래픽 모델이 스크린 상의 제2 시점 좌표계로 변환되도록 뷰포트 값을 변경한다(S280). 즉, 함수 변경부(220)는 제2 시점에서 3D 그래픽 모델이 스크린 상의 좌표계로 변환되도록 뷰포트 값을 변경한다. The 3D graphic model stereoscopic rendering apparatus 200 changes the viewport value so that the 3D graphic model is converted into a second viewpoint coordinate system on the screen at the second viewpoint (S280). That is, the function change unit 220 changes the viewport value so that the 3D graphic model is converted into a coordinate system on the screen at the second time point.

3D 그래픽 모델 입체 렌더링 장치(200)는 제2 시점 영상에 대한 렌더링을 수행한다(S290). 3D 그래픽 모델 입체 렌더링 장치(200)는 제2 시점 영상의 생성을 위해 변경된 모델뷰 행렬 값, 투영 행렬 값 및 뷰포트 값을 적용하여 제2 시점 영상의 생성을 위한 제2 렌더링 방식을 설정할 수 있다. 3D 그래픽 모델 입체 렌더링 장치(200)는 제2 렌더링 방식을 통해 3D 그래픽 모델에 대한 렌더링을 수행하여 제2 시점 영상을 생성한다. The 3D graphic model stereoscopic rendering apparatus 200 performs rendering on the second viewpoint image (S290). The 3D graphic model stereoscopic rendering apparatus 200 may set a second rendering method for generating the second view image by applying the changed model view matrix value, the projection matrix value, and the viewport value to generate the second view image. The 3D graphic model stereoscopic rendering apparatus 200 generates a second view image by rendering the 3D graphic model through the second rendering method.

상기 시점 변경에 따른 렌더링 방식은 제1 시점 및 제2 시점 이외에 추가적으로 제3 시점, 제4 시점 등의 여러 시점을 위한 렌더링에 동일하게 활용 할 수 있다. 제3 시점, 제4 시점 이상의 시점 변경 방식은 상기 시점 변경에 따른 방식과 동일하며, 그래픽 처리 함수를 저장하는 경우 제1 렌더링 시 저장된 정보를 이용하여 제2 시점, 제3 시점, 제4 시점 이상의 시점 변경에 동일하게 활용될 수 있다.The rendering method according to the viewpoint change may be equally used for rendering for various viewpoints such as the third viewpoint and the fourth viewpoint in addition to the first viewpoint and the second viewpoint. The viewpoint change method of the third view point and the fourth view point or more is the same as the method according to the view point change, and when storing the graphic processing function, the second view point, the third view point, or the fourth view point or more by using the information stored in the first rendering. The same can be used for changing the viewpoint.

생성된 제1 시점 영상 및 제2 시점 영상은 프레임 버퍼(260)에 일시적으로 저장되어 표시부(270)에 전달되고, 표시부(270)에서 제1 시점 영상 및 제2 시점 영상에 의한 입체 영상이 표시된다. The generated first view image and the second view image are temporarily stored in the frame buffer 260 and transferred to the display unit 270, and the display unit 270 displays a stereoscopic image by the first view image and the second view image. do.

지금까지 참조한 도면과 기재된 발명의 상세한 설명은 단지 본 발명의 예시적인 것으로서, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다. It is to be understood that both the foregoing general description and the following detailed description of the present invention are illustrative and explanatory only and are intended to be illustrative of the invention and are not to be construed as limiting the scope of the invention as defined by the appended claims. It is not. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.

100, 200 : 3D 그래픽 모델 입체 렌더링 장치
110, 210 : 함수 호출부
120, 220 : 함수 변경부
130, 230 : 지오메트리 처리부
140, 240 : 래스터 처리부
250 : 데이터 저장부
160, 260 : 프레임 버퍼
170, 270 : 표시부
100, 200: 3D graphics model stereoscopic rendering device
110, 210: function call unit
120, 220: function change unit
130, 230: geometry processing unit
140, 240: raster processing unit
250: data storage
160, 260: frame buffer
170, 270 display unit

Claims (14)

3D 그래픽 모델의 렌더링을 위한 렌더링 함수를 포함하는 그래픽 처리 함수를 호출하는 함수 호출부;
상기 3D 그래픽 모델에 대한 제1 시점 영상 및 제2 시점 영상을 생성하기 위하여 상기 함수 호출부로부터 전달받은 렌더링 함수를 제1 렌더링 함수와 제2 렌더링 함수로 변경하는 함수 변경부;
상기 제1 렌더링 함수를 적용하여 상기 3D 그래픽 모델에 대해 제1 지오메트리 변환을 수행하고, 상기 제2 렌더링 함수를 적용하여 상기 3D 그래픽 모델에 대해 제2 지오메트리 변환을 수행하는 지오메트리 처리부; 및
상기 제1 지오메트리 변환이 수행된 3D 그래픽 모델에 대해 래스터화(rasterization)를 수행하여 제1 시점 영상을 생성하고, 상기 제2 지오메트리 변환이 수행된 3D 그래픽 모델에 대해 래스터화를 수행하여 제2 시점 영상을 생성하는 래스터 처리부를 포함하는 3D 그래픽 모델 입체 렌더링 장치.
A function caller for calling a graphics processing function including a rendering function for rendering a 3D graphic model;
A function changer for changing a rendering function received from the function caller into a first rendering function and a second rendering function to generate a first view image and a second view image of the 3D graphic model;
A geometry processing unit configured to apply a first rendering function to the 3D graphic model by applying the first rendering function, and perform a second geometry transformation on the 3D graphic model by applying the second rendering function; And
A first viewpoint image is generated by performing rasterization on the 3D graphic model on which the first geometry transformation has been performed, and a second viewpoint by rasterizing the 3D graphic model on which the second geometry transformation has been performed. 3D graphics model stereoscopic rendering apparatus including a raster processing unit for generating an image.
삭제delete 제1 항에 있어서,
상기 함수 호출부가 상기 그래픽 처리 함수를 호출하는 호출 순서 및 데이터를 저장하는 데이터 저장부를 더 포함하는 3D 그래픽 모델 입체 렌더링 장치.
The method according to claim 1,
And a data storage unit for storing a call order and data for the function caller to call the graphic processing function.
제3 항에 있어서,
상기 함수 호출부는 상기 제1 렌더링 함수를 이용한 제1 렌더링이 수행된 후 상기 데이터 저장부에 저장된 상기 호출 순서대로 상기 그래픽 처리 함수를 호출하는 3D 그래픽 모델 입체 렌더링 장치.
The method of claim 3,
And the function caller calls the graphic processing function in the calling order stored in the data storage after the first rendering using the first rendering function is performed.
제4 항에 있어서,
상기 함수 변경부는 상기 호출 순서대로 호출되는 그래픽 처리 함수 중 렌더링 함수를 상기 제2 렌더링 함수로 변경하는 그래픽 모델 입체 렌더링 장치.
5. The method of claim 4,
And the function changer changes the rendering function of the graphic processing functions called in the calling order to the second rendering function.
제4 항에 있어서,
상기 데이터 저장부는 상기 함수 호출부에서 호출되는 그래픽 처리 함수에 대한 정보를 프레임 단위로 저장하는 3D 그래픽 모델 입체 렌더링 장치.
5. The method of claim 4,
And the data storage unit stores information on a graphics processing function called by the function caller in units of frames.
3D 그래픽 모델에 대한 제1 시점 영상을 생성하기 위해 렌더링 함수를 호출하고 호출된 렌더링 함수를 변경하여 제1 렌더링 방식을 설정하는 단계;
상기 제1 렌더링 방식을 통해 상기 3D 그래픽 모델에 대한 렌더링을 수행하여 제1 시점 영상을 생성하는 단계;
상기 3D 그래픽 모델에 대한 제2 시점 영상을 생성하기 위해 상기 렌더링 함수를 변경하여 제2 렌더링 방식을 설정하는 단계; 및
상기 제2 렌더링 방식을 통해 상기 3D 그래픽 모델에 대한 렌더링을 수행하여 제2 시점 영상을 생성하는 단계를 포함하고,
상기 제1 렌더링 방식을 설정하는 단계는,
상기 렌더링 함수의 호출 전에 설정되어 있던 모델뷰 행렬 값을 변경하여 상기 3D 그래픽 모델의 시점을 제1 시점으로 변경하는 단계; 및
상기 렌더링 함수의 호출 전에 설정되어 있던 투영 행렬 값을 변경하여 상기 제1 시점에서 상기 3D 그래픽 모델을 제1 시점의 가상의 공간에 맵핑시키는 단계를 포함하는 3D 그래픽 모델 입체 렌더링 방법.
Setting a first rendering scheme by calling a rendering function and changing the called rendering function to generate a first viewpoint image for the 3D graphic model;
Generating a first view image by performing rendering on the 3D graphic model through the first rendering method;
Setting a second rendering scheme by changing the rendering function to generate a second viewpoint image for the 3D graphic model; And
Generating a second view image by performing rendering on the 3D graphic model through the second rendering method;
The setting of the first rendering method may include:
Changing a viewpoint of the 3D graphic model to a first viewpoint by changing a model view matrix value set before the rendering function is called; And
And changing the projection matrix value set before the call of the rendering function to map the 3D graphic model to the virtual space of the first view at the first view.
삭제delete 삭제delete 제7 항에 있어서,
상기 제1 렌더링 방식을 설정하는 단계는,
상기 렌더링 함수의 호출 전에 설정되어 있던 뷰포트를 변경하여 상기 제1 시점에서 상기 3D 그래픽 모델을 스크린 상의 제1 시점 좌표계로 변환하는 단계를 더 포함하는 3D 그래픽 모델 입체 렌더링 방법.
The method of claim 7, wherein
The setting of the first rendering method may include:
And changing the viewport set before the call to the rendering function to convert the 3D graphic model to a first view coordinate system on a screen at the first view.
제7 항에 있어서,
상기 제2 렌더링 방식을 설정하는 단계는,
상기 렌더링 함수의 호출 전에 설정되어 있던 모델뷰 행렬 값을 변경하여 상기 3D 그래픽 모델의 시점을 제2 시점으로 변경하는 단계를 포함하는 3D 그래픽 모델 입체 렌더링 방법.
The method of claim 7, wherein
The setting of the second rendering method may include:
And changing the viewpoint of the 3D graphic model to a second viewpoint by changing a model view matrix value set before the rendering function is called.
제11 항에 있어서,
상기 제2 렌더링 방식을 설정하는 단계는,
상기 렌더링 함수의 호출 전에 설정되어 있던 투영 행렬 값을 변경하여 상기 제2 시점에서 상기 3D 그래픽 모델을 제2 시점의 가상 공간에 맵핑시키는 단계를 더 포함하는 3D 그래픽 모델 입체 렌더링 방법.
12. The method of claim 11,
The setting of the second rendering method may include:
And changing the projection matrix value set before the call of the rendering function to map the 3D graphic model to the virtual space of the second view at the second view.
제12 항에 있어서,
상기 제2 렌더링 방식을 설정하는 단계는,
상기 렌더링 함수의 호출 전에 설정되어 있던 뷰포트 행렬 값을 변경하여 상기 제2 시점에서 상기 3D 그래픽 모델을 스크린 상의 제2 시점 좌표계로 변환하는 단계를 더 포함하는 3D 그래픽 모델 입체 렌더링 방법.
The method of claim 12,
The setting of the second rendering method may include:
And converting the 3D graphic model to a second view coordinate system on the screen at the second viewpoint by changing a viewport matrix value set before the rendering function is called.
제7 항에 있어서,
상기 제1 렌더링 방식을 설정하는 단계는,
상기 렌더링 함수를 포함하는 그래픽 처리 함수가 호출되는 호출 순서를 저장하는 단계를 더 포함하고,
상기 호출 순서대로 호출되는 그래픽 처리 함수 중 렌더링 함수를 변경하여 상기 제2 렌더링 방식을 설정하는 3D 그래픽 모델 입체 렌더링 방법.
The method of claim 7, wherein
The setting of the first rendering method may include:
Storing a call order in which a graphics processing function including the rendering function is called;
3D graphics model stereoscopic rendering method of setting the second rendering method by changing a rendering function of the graphics processing functions to be called in the calling order.
KR1020110025382A 2011-03-22 2011-03-22 Apparatus and method for stereoscopic rendering 3-dimension graphic model KR101227183B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110025382A KR101227183B1 (en) 2011-03-22 2011-03-22 Apparatus and method for stereoscopic rendering 3-dimension graphic model
PCT/KR2011/003962 WO2012128421A1 (en) 2011-03-22 2011-05-31 3d graphic model spatial rendering device and 3d rendering method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110025382A KR101227183B1 (en) 2011-03-22 2011-03-22 Apparatus and method for stereoscopic rendering 3-dimension graphic model

Publications (2)

Publication Number Publication Date
KR20120107711A KR20120107711A (en) 2012-10-04
KR101227183B1 true KR101227183B1 (en) 2013-01-28

Family

ID=46879543

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110025382A KR101227183B1 (en) 2011-03-22 2011-03-22 Apparatus and method for stereoscopic rendering 3-dimension graphic model

Country Status (2)

Country Link
KR (1) KR101227183B1 (en)
WO (1) WO2012128421A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150121731A (en) * 2014-04-18 2015-10-30 엔에이치엔엔터테인먼트 주식회사 Rendering method and system for coproduction contents

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111340956B (en) * 2020-02-26 2024-02-06 陕西理工大学 Space graph drawing method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010023290A (en) * 1998-06-30 2001-03-26 요트.게.아. 롤페즈 Filter for transforming 3D data in a hardware accelerated rendering architecture
KR20060082736A (en) * 2005-01-13 2006-07-19 엘지전자 주식회사 Method and apparatus for 3 dimension rendering processing using the monochromatic lighting
KR20060088273A (en) * 2005-02-01 2006-08-04 삼성전자주식회사 Method for rendering 3d graphics data and apparatus therefore

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010023290A (en) * 1998-06-30 2001-03-26 요트.게.아. 롤페즈 Filter for transforming 3D data in a hardware accelerated rendering architecture
KR20060082736A (en) * 2005-01-13 2006-07-19 엘지전자 주식회사 Method and apparatus for 3 dimension rendering processing using the monochromatic lighting
KR20060088273A (en) * 2005-02-01 2006-08-04 삼성전자주식회사 Method for rendering 3d graphics data and apparatus therefore

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150121731A (en) * 2014-04-18 2015-10-30 엔에이치엔엔터테인먼트 주식회사 Rendering method and system for coproduction contents
KR101675956B1 (en) * 2014-04-18 2016-11-16 엔에이치엔엔터테인먼트 주식회사 Rendering method and system for coproduction contents

Also Published As

Publication number Publication date
WO2012128421A1 (en) 2012-09-27
KR20120107711A (en) 2012-10-04

Similar Documents

Publication Publication Date Title
KR101556835B1 (en) Stereoscopic conversion for shader based graphics content
KR101732836B1 (en) Stereoscopic conversion with viewing orientation for shader based graphics content
KR101145260B1 (en) Apparatus and method for mapping textures to object model
CN110546951B (en) Composite stereoscopic image content capture
CN101477700B (en) Real tri-dimension display method oriented to Google Earth and Sketch Up
CN108604385A (en) A kind of application interface display methods and device
JP2014199617A (en) Image generation system and program
US10217259B2 (en) Method of and apparatus for graphics processing
CN115552451A (en) Multi-layer reprojection techniques for augmented reality
CN101477702B (en) Built-in real tri-dimension driving method for computer display card
JP2018101415A (en) Method, apparatus, computer program and storage medium for determining lod for texturing cube map
JP2012190428A (en) Stereoscopic image visual effect processing method
CN106204703A (en) Three-dimensional scene models rendering intent and device
US20130210520A1 (en) Storage medium having stored therein game program, game apparatus, game system, and game image generation method
KR100381817B1 (en) Generating method of stereographic image using Z-buffer
CN101521828B (en) Implanted type true three-dimensional rendering method oriented to ESRI three-dimensional GIS module
KR101227183B1 (en) Apparatus and method for stereoscopic rendering 3-dimension graphic model
KR101227155B1 (en) Graphic image processing apparatus and method for realtime transforming low resolution image into high resolution image
CN101511034A (en) Truly three-dimensional stereo display method facing Skyline
JP4987890B2 (en) Stereoscopic image rendering apparatus, stereoscopic image rendering method, stereoscopic image rendering program
CN101482978B (en) ENVI/IDL oriented implantation type true three-dimensional stereo rendering method
US11915349B1 (en) Extrusion technique for curve rendering
US10453247B1 (en) Vertex shift for rendering 360 stereoscopic content
US11887228B2 (en) Perspective correct vector graphics with foveated rendering
US20220270312A1 (en) Perspective correct vector graphics rendering techniques

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170123

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180122

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee