KR101100650B1 - 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 그 방법 - Google Patents

맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 그 방법 Download PDF

Info

Publication number
KR101100650B1
KR101100650B1 KR1020090026450A KR20090026450A KR101100650B1 KR 101100650 B1 KR101100650 B1 KR 101100650B1 KR 1020090026450 A KR1020090026450 A KR 1020090026450A KR 20090026450 A KR20090026450 A KR 20090026450A KR 101100650 B1 KR101100650 B1 KR 101100650B1
Authority
KR
South Korea
Prior art keywords
map
displacement
light source
indirect
map data
Prior art date
Application number
KR1020090026450A
Other languages
English (en)
Other versions
KR20100053413A (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 한국전자통신연구원
Publication of KR20100053413A publication Critical patent/KR20100053413A/ko
Application granted granted Critical
Publication of KR101100650B1 publication Critical patent/KR101100650B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/586Depth or shape recovery from multiple images from multiple light sources, e.g. photometric stereo
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/60Shadow generation
    • 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
    • G06T17/205Re-meshing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2215/00Indexing scheme for image rendering
    • G06T2215/12Shadow map, environment map

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Image Generation (AREA)

Abstract

본 발명은 맵데이터를 이용한 간접조명과 다층 변위매핑 시스템 및 방법에 관한 것이다. 즉, 본 발명에서는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 방법에 있어서, 간접조명 표현을 위해 조명맵 데이터와 객체 상세 표현을 위해 다층 변위매핑을 활용하고, 맵데이터를 GPU 등의 대용량 그래픽 데이터 처리 프로세서를 이용함으로써 렌더링 속도를 향상시키고, 장면을 구성하는 각 객체에 대한 간접조명 표현과 상세 표현을 보다 자연스럽게 표현할 수 있다.
맵데이터, 맵전처리, 맵연산, 간접조명, 다층 매핑, 다층 변위맵, 광원

Description

맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 그 방법{A SYSTEM FOR INDIRECT LIGHTING AND MULTI-LAYERED DISPLACEMENT MAPPING USING MAP DATA AND ITS METHOD}
본 발명은 그래픽 데이터(graphic data) 처리 방법에 관한 것으로, 특히 GPU(graphics processing unit)와 같이 대량의 데이터 처리에 유용한 시스템을 활용하여 장면 조건에 따라 맵 데이터(map data)를 생성하고 콘텐츠 표현 때 생성된 맵 데이터를 활용하여 간접조명 표현과 다층 변위매핑을 계산함으로써 장면에 대한 렌더링(rendering) 처리를 빠르게 수행할 수 있도록 하는 맵데이터를 이용한 간접조명과 다층 변위매핑 시스템 및 방법에 관한 것이다.
본 발명은 지식경제부 및 정보통신연구진흥원의 IT신성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2006-S-045-03, 과제명: 기능 확장형 초고속 랜더러 개발].
일반적으로 전역조명(global illumination)을 표현하기 위해서, 광선 추적법(ray tracing), 래디오시티(radiosity), 포톤 매핑(photon mapping) 등의 기법들 을 사용하지만, 계산량이 많아 제작 비용을 증가시키는 단점으로 잘 활용되지 않고 있다.
또한, 위와 같은 대부분의 방법들은 광선이나 포톤과 같은 점 광원과 같은 형태로 고려하고 있어, 간접조명을 표현하기 위해서 여러 샘플에 대한 광선 혹은 포톤의 미리 계산된 크기(가중치)를 곱한 평균값으로 계산하는 방법을 택하기 때문에 그림자와 같은 경계부분에서 많은 계산량을 필요로 한다. 이러한 문제는 광선 추적법에 의한 그림자 생성 시 그림자 경계에서 많은 샘플링을 하여야 자연스런 그림자 표현이 가능하다는 사실로 알 수 있으며, 광원이 적은 경우는 많은 샘플링을 통해 해결할 수 있지만, 광원이 많으면 그만큼 계산량이 늘어나는 문제점을 안고 있다.
또한, 종래에는 그래픽 데이터 처리 시 상세한 표현을 위해서는 대량의 다각형 메쉬 모델(mesh model)을 이용하였으나, 메쉬 모델의 복잡도가 커짐에 따라 애니메이션 키(animation key)를 생성하는 과정이나, 렌더링시에 많은 시간이 소요되어 제작 효율이 떨어졌다. 이에 따라, 미소한 굴곡을 나타내는 부분은 변위매핑을 활용하여 작은 메쉬 모델로도 복잡한 모델과 같은 상세함을 표현할 수 있었으나, 단일 변위매핑에는 표현의 한계로 다양한 굴곡 표현을 위해서는 복잡한 메쉬를 요구하는 경우가 많다는 문제점이 있었다.
위와 같은, 단일 변위매핑 방법으로 부조매핑(relief mapping), 피라미드식 변위매핑(pyramidal displacement mapping) 등은 GPU(graphics processing unit)로 구현된 변위 매핑 기법들로 각각 다른 방식을 사용하여 광선과 변위 맵과의 교차점 을 구하고 있고, 일반화된 변위매핑(GDM, generalized displacement mapping)은 전처리 과정에서 광선의 방향과 위치를 샘플링(sampling)하여 높이 값과의 거리를 5차원 정보로 저장하였다. 이는 단층 높이 맵을 사용한 방식 보다 복잡하고 다양한 형태를 정의할 수 있는 방법이지만 5차원 정보는 많은 저장 공간을 필요로 하고 압축이 필수적이다.
또한 전처리 과정에서의 샘플링 횟수가 화면의 품질을 좌우하고, 프리즘 입체(prism volume)을 이용한 입체 텍스처 매핑(volumetric texture mapping) 방식을 이용한다. 따라서 구멍이 뚫리거나 투과와 같은 다양한 표현은 가능하나 그만큼 처리 복잡도와 맵 저장 공간이 많이 필요하게 되는 문제점이 있었다.
즉, 종래에는 GPU가 직접조명(direct lighting)에 주로 사용하여 간접조명 효과와 같은 자연스런 광원 효과 표현이 부족했고, 단층 변위매핑으로 표현하다 보니 변위 매핑에 한계로 표현상에 제약이 있어 왔다.
또한, 디지털 콘텐츠(digital contents)가 많이 쓰이는 영화나 게임에서 점점 더 자연스런 표현과 다양한 표현을 위해 실제와 같은 간접조명법과 변위매핑이 많이 사용되고 있으나, 간접조명과 변위매핑 표현을 위해서는 많은 계산 시간을 요구하여 콘텐츠 제작 효율을 저하시키는 문제점이 있었다.
따라서, 본 발명은 GPU와 같이 대량의 데이터 처리에 유용한 시스템을 활용 하여 장면 조건에 따라 맵 데이터를 생성하고, 콘텐츠 표현 때 생성된 맵 데이터를 활용하여 간접조명 표현과 다층 변위매핑을 계산함으로써, 모델링된 그래픽 데이터를 빠르고 상세하게 표현할 수 있도록 하는 맵데이터를 이용한 간접조명과 다층 변위매핑 시스템 및 방법을 제공하고자 한다.
상술한 본 발명은 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템으로서, 그래픽 구현하고자 하는 장면의 정보를 입력받아 상기 장면을 구성하는 각 객체에 대해 간접조명 정보와, 변위 정보를 가지는 맵데이터를 생성하는 맵 전처리부와, 상기 맵데이터 중 상기 간접조명 정보에 대한 맵데이터와 상기 변위 정보에 대한 맵데이터를 처리 설정 방식에 따라 구별하여 출력시키는 처리 선택부와, 상기 처리 선택부를 통해 전처리된 상기 맵데이터를 이용하여 상기 각 개체에 대해 광원에 의한 영향을 계산하고, 상기 변위가 존재하는 각 개체에 대해서는 다층 변위매핑을 계산하는 맵 연산 처리부를 포함한다. 여기서 객체란 장면을 구성하는 캐릭터, 배경, 광원 등의 장면 구성 요소를 의미한다.
또한, 상기 맵 전처리부는, 상기 장면을 구성하는 각 객체에 대한 간접조명 정보의 표현을 위한 조명맵을 생성하는 조명맵 생성기와, 상기 각 객체에 대한 변위 정보의 표현을 위한 다층 변위맵을 생성하는 다층 변위맵 생성기를 포함하고, 조명맵 생성기는 상기 각 객체에 대해 모든 광원으로부터 받는 정보를 텍스처맵 형태로 저장하고, 각 텍스처맵에 누적된 광량정보를 가지는 객체 음영맵을 생성하는 객체 음영맵 생성기와, 각 광원에 비쳐지는 상기 각 객체의 집합과 광원 사이의 영향 정보를 가지는 광원 조명맵을 생성하는 광원 조명맵 생성기를 포함한다.
또한, 상기 맵 연산 처리부는, 상기 조명맵의 데이터를 이용하여 상기 장면을 구성하는 각 객체에 대한 간접조명을 계산하는 간접 조명 계산기와, 상기 다층 변위맵의 데이터를 이용하여 상기 각 객체 중 변위가 존재하는 객체의 상세 표현을 위해 다층 변위매핑을 계산하는 다층 변위매핑 계산기를 포함하고, 상기 간접 조명 계산기는, 상기 조명맵을 이용하여 광원에 의한 상기 각 객체에서의 간접조명을 계산하는 광원 조명맵 계산기와, 상기 광원에 의해 상기 각 객체에 누적된 간접광원 정보에 의한 상기 각 객체에서의 간접조명을 계산하는 객체 음영맵 계산기를 포함한다.
또한, 본 발명은 맵 데이터를 이용한 간접조명 표현과 다층 변위매핑 방법으로서, 그래픽 구현하고자 하는 장면의 정보를 전처리 수행하여 상기 장면을 구성하는 각 객체에 대한 간접조명 정보와 변위정보를 가지는 맵데이터를 생성하는 단계와, 상기 맵데이터 중 상기 간접조명 정보에 대한 맵데이터와 상기 변위 정보에 대한 맵데이터를 구별하여 설정에 따라 출력시키는 단계와, 상기 맵데이터를 이용하여 상기 각 객체에 대해 광원에 의한 영향을 계산하고, 상기 변위가 존재하는 각 객체에 대해서는 다층 변위매핑을 계산하는 단계를 포함한다.
본 발명에서는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 방법에 있어서, 간접조명 표현을 위해 조명맵 데이터와 객체 상세 표현을 위해 다층 변위매핑을 활용하고, 맵데이터를 GPU 등의 대용량 그래픽 데이터 처리 프로세서를 이용함으로써 렌더링 속도를 향상시키고, 장면을 구성하는 각 객체에 대한 간접조명 표현과 상세 표현을 보다 자연스럽게 표현할 수 있는 이점이 있다.
이하, 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 실시 예에 따른 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 구성을 도시한 것으로, 본 발명의 시스템은 크게 맵전처리부(100)와, 맵연산 처리부(102)를 포함하며, 그래픽 처리하고자 하는 장면에 맞게 자동적으로 또는 사용자 선택에 따라 맵전처리와 연산처리를 선택하는 처리 선택기(104)를 두어 효율적으로 그래픽 처리 수행할 수 있도록 한다.
도 1을 참조하면, 맵전처리부(100)는 조명맵 생성기(106)와 다층 변위맵 생 성기(108)를 포함한다. 조명맵 생성기(106)는 그래픽 처리를 하고자 하는 장면에 대한 정보가 입력되는 경우 장면을 구성하는 각 객체에 대한 간접조명 정보의 표현을 위한 조명맵을 생성한다. 다층 변위맵 생성기(108)는 장면에 대한 정보를 이용하여 장면을 구성하는 각 객체에 대해 상세 표현을 위한 다층 변위맵을 생성한다.
맵연산 처리부(102)는 간접조명 계산기(110)와, 다층 변위매핑 계산기(112)를 포함한다. 간접조명 계산기(110)는 맵전처리부(100)내 조명맵 생성기(106)에서 생성되는 조명맵을 이용하여, 장면을 구성하는 각 객체에 대해 광원에 의한 간접조명을 계산한다. 다층 변위매핑 계산기(112)는 맵전처리부(100)내 다층 변위맵 생성기(108)에서 생성되는 다층 변위맵을 이용하여, 장면을 구성하는 각 객체 중 변위가 존재하는 객체의 상세표현을 위해 다층 변위매핑을 계산한다.
처리 선택기(104)는 맵전처리부(100)와 맵연산 처리부(102)에 상호 연결되어 그래픽 데이터 처리가 요청되는 장면에 대해 초기 설정된 조건에 따라 자동으로 맵전처리와 맵연산이 처리되도록 하거나, 또는 사용자의 선택에 따라 수동으로 처리되도록 한다. 이때, 자동으로 처리된다는 것은 기존 렌더링 과정인 장면해석 정보에 의해, 광원의 수, 객체의 수, 다층 변위맵이 사용될 객체 정보 등을 받아들여, 초기 설정 조건 값과 비교하여 많고 적음에 따라 자동 처리된다는 것을 의미하고, 수동으로 처리된다는 것은 초기 조건과 상관없이 사용자 설정에 따라 처리된다는 것을 의미한다.
이때, 맵데이터를 생성하고 처리하는 것은 순차적이기 보다 병렬적인 연산이 많으므로, 맵전처리와 맵연산 처리 동작은 GPU 등과 같은 대용량 그래픽 데이터 처 리 프로세서를 이용하는 것이 바람직하다.
도 2는 본 발명의 실시 예에 따른 맵전처리부(100)와 맵연산 처리부(102)로 구성되는 다층 변위매핑 시스템에서의 그래픽 데이터 처리 개념을 도시한 것이다.
이하, 도 2를 참조하여 동작을 설명하기로 한다. 먼저, 맵전처리부(100)에서는 그래픽 처리를 하고자 하는 장면에 대해 미리 해석된 결과에 따른 장면 정보를 입력받아, 내부 프로세스인 처리 선택기(104)에 의해 설정된 결과에 따라 맵 전처리를 수행한 후, 이미지 생성을 위한 픽셀 연산과정에서 전처리에 의해 생성된 맵데이터를 제공한다.
즉, 처리 선택기(104)는 기존 렌더링 과정인 장면해석과 픽셀연산 수행에서 새로운 내부 수행과정의 하나로, 데이터 생성 여부 및 생성된 데이터의 활용 여부를 결정한다. 즉, 맵 데이터가 필요하면 맵전처리부(100)을 통해 맵 데이터를 생성하거나, 미리 만들어진 맵 데이터 정보가 있으면 그 데이터를 활용하여 맵 데이터를 생성한다. 여기서, 맵 데이터 생성은 맵 데이터가 필요하면 언제든 사용할 수 있는 형태로 만들어 놓음을 의미한다.
이때, 픽셀 연산 과정에서 맵 연산이 설정되어 있다면 맵연산 처리부(102)에서는 처리 선택기(104)에 의해 선택된 처리 환경에 맞게 맵전처리부(100)에서 생성된 맵데이터를 이용하여 연산 처리를 수행함으로써, 최종적인 픽셀의 색 결정에 참여하는 과정으로 이뤄진다. 이러한 과정은 GPU 등의 프로세서를 이용하여 대용량을 한꺼번에 처리하는데 이용될 수도 있고, 부분 부분 조각으로 나눠어진 처리에도 활용될 수 있으며, 순차적인 광선 추적법과 같이 픽셀 하나를 개별적으로 처리하는 과정에도 사용될 수 있다.
도 3은 본 발명의 실시 예에 따른 맵전처리부(100)에서 맵데이터를 생성하는 동작 흐름을 도시한 것으로, 먼저 장면 해석을 통해 장면에 대한 해석된 정보가 처리 선택기(104)로 입력되고, 처리 선택기(104)에서는 미리 설정된 값에 의해 자동으로 맵전처리부(100)에서 전처리가 수행되도록 하거나, 사용자 의도에 맞게 수동으로 전처리가 수행되도록 한다.
위와 같이, 선택된 방법에 따라 맵전처리부(100)의 조명맵 생성기(106)에서 각 광원에 대한 조명맵이 생성되는데, 모두 선택되었다면 모두 생성될 수도 있지만, 효율이 떨어질 수 있기 때문에 오프라인으로 미리 처리하는 경우에 활용하는 것이 바람직하고, 대부분은 장면에 맞게 선택적으로 생성하게 된다. 즉, 모든 광원에 대해 조명맵 생성이 선택되었다면 수행 중에 모든 광원에 대해 조명맵이 생성될 수도 있다. 조명맵 변경이 없는 정적인 환경의 경우 오프라인으로 미리 처리하여 맵 데이터를 재활용하는 것이 바람직하고, 사용자 요청에 따라 장면에 맞게 중요한 광원에 대해서만 선택적으로 생성하여 처리함으로써 렌더링 속도를 높일 수도 있다.
조명맵 생성기(106)는 객체 음영맵 생성기(114)와 광원 조명맵 생성기(116)를 포함한다. 광원 조명맵 생성기(116)는 각 광원에 의해 비추어지는 장면을 구성하는 각 객체의 집합과 광원 사이의 영향 정보를 가지는 광원 조명맵을 생성한다. 광원 조명맵은 광원별로 저장되며 저장된 물체 식별자와 교차하는 위치 정보가 저장되어 간접 조명효과 표현에 사용된다. 각 광원별로 광원 조명맵이 생성되기 때문 에 광원의 개수가 적고 객체들이 많을수록 효율적이다. 광원 조명맵은 필요에 따라 누적된 값으로도 근사적으로 활용될 수도 있다.
객체 음영맵 생성기(114)는 장면을 구성하는 각 객체에 대해 모든 광원으로부터 받는 정보를 텍스처맵(texture map) 형태로 저장하고, 각 텍스처맵 형태로 누적된 광량정보를 가지는 객체 음영맵을 생성한다. 이때, 가장 높은 광량을 제공하는 방향과 그 광원 식별자를 저장하여 간접조명에 이용할 수 있다. 각 객체별로 처리되기 때문에 광원이 많고 객체가 적은 경우에 효율적이다. 이러한 방법은 광원 조명맵 생성시 하나나 혹은 몇 개의 그룹 광원맵을 생성할 때 유사하게 광원의 영향을 근사적으로 저장하여 속도를 향상시키는 방법이다.
다층 변위맵 생성기(108)는 장면을 구성하는 각 객체에 대한 변위 정보의 표현을 위해 변위가 존재하는 각 객체에 대해 다층 변위맵을 생성한다. 이때, 매핑에 사용되는 기본 메쉬와 상세 표현을 위해 사용되는 상세 메쉬(mesh)간의 변위를 저장하는데, 기본 메쉬에 법선 방향으로 직선을 그엇을때 만나는 모든 상세 메쉬의 위치를 기본 메쉬 기준으로 외곽인 부분부터 순서적으로 저장한다. 겹치는 부분이 없다면 단일 변위맵과 동일하고, 겹치는 부분은 순서에 따라 다른 층의 맵에 저장된다.
일반적으로, 동일 특성을 갖는 것으로 가정하지만, 경우에 따른 다른 특성이 있는 경우에는 특성을 구분하기 위하여 상세 메쉬의 특성 식별자도 저장한다. 그리고, 기본 메쉬의 법선 방향에 대해 교차되는 상세 메쉬의 법선 방향을 저장하면 조명 계산시 좀 더 정확히 계산할 수 있다.
위와 같이, 저장된 광원 조명맵, 객체 음영맵, 다층 변위맵은 처리 선택기(104)의 선택에 따라 생성되어 맵데이터로 관리되며, 맵연산 처리부(102)에서 활용된다. 맵데이터 관리는 바로 활용할 때에는 메모리에 관리할 수 있고, 데이터가 많거나 미리 오프라인 처리 시에는 파일로 관리할 수 있다.
도 4는 본 발명의 실시 예에 따른 맵연산 처리부(102)에서 맵연산을 수행하는 동작 흐름을 도시한 것으로, 픽셀 연산 과정 중에 맵연산을 처리하는 과정으로 우선 처리 선택기(104)의 선택에 따라 처리 맵을 선택하여 처리하고, 선택된 맵은 맵 데이터 관리 방법에 따라 제공된다.
간접조명 계산기(110)는 광원 조명맵 계산기(118)와 객체 음영맵 계산기(120)를 포함한다.
광원 조명맵 계산기(118)는 맵전처리부(100)내 광원 조명맵 생성기(116)로부터 생성된 광원 조명맵을 이용하여 광원에 의해 각 객체에서 발생하는 간접광원에 의한 각 객체에서의 간접조명을 계산한다. 이때, 간접 조명을 계산 시 모든 광원 조명맵을 조사하고 자신에게 영향을 주는 맵 내부 정보를 이용하여 간접조명을 계산한다. 광원 조명맵은 간접 조명 역할을 하는 객체와 광원과의 가시성이 처리된 경우이므로 이 부분에 대한 계산을 줄일 수 있다.
객체 음영맵 계산기(120)은 객체 음영맵 자체가 간접광원이기 때문에 직접광원의 연산과 유사하게 계산할 수 있다. 그리고, 광원의 최대 광량을 발생하는 방향을 함께 고려하여 계산할 수 있다.
다층 변위맵핑 계산기(112)는 맵전처리부(100)의 다층 변위맵 생성기(108)에 서 생성되는 다층 변위맵의 맵데이터를 이용하여 각 객체 중 변위가 존재하는 객체의 상세 표현을 위해 다층 변위매핑을 계산한다.
즉, 기본 메쉬에 교차된 경우 다층 변위맵 내 교차점을 찾는 부분으로 다층 변위맵을 입체로 고려하여 처리함으로써 교차점을 계산할 수 있다. 이때, 다층 변위맵에 특성 식별자가 있는 경우는 여러 특성이 맵핑된 경우로, 교차점 계산시 식별자가 다른 경우는 동일 외각층이라도 보간하지 않고 처리 되어야 한다.
일반적으로 동일 외각층의 경우 보간 처리하면 보다 좋은 결과를 얻을 수 있지만, 각이 두드러져 보이는 외각층의 경우는 보간을 하면 두드러진 각이 무디어지는 오차가 발생될 수 있는데, 특성이 다른 경우는 그 오차가 더 커져 질 수 있기 때문이다. 그리고, 다층 변위맵 내에 법선 벡터 데이터가 있는 경우에는 직접조명 계산이나 간접조명 계산에서 광원의 방향벡터와 법선 벡터간에 코사인(cosine)값이 0보다 작으면 광원에 가려지는 음영으로 판단할 수 있다. 그 외의 경우는 다층 변위매핑 내에서 먼저 계산하고, 교차점이 없으면 외부에 쉐도우 광선(shadow ray) 방식을 이용하거나, 쉐도우 맵(shadow map)을 이용하여 그림자를 계산할 수 있다.
이때, 변위맵 내에서 먼저 계산한다는 것은 변위 매핑된 객체 내부를 먼저 계산한다는 의미이다. 즉, 시점에서 변위맵내 처음 위치를 찾는 방식과 유사하게, 현재 교차된 변위맵내 위치부터 현재 광원까지의 경로 중에서 변위맵 객체가 만나는 위치까지를 고려하여 변위맵내에 현재 교차위치 이외의 지점에서 만나는지를 판단하여 만나면 그림자 영역으로 처리하여 그림자 계산을 종료하고, 그렇지 않으면 객체(변위맵 외부)에 대한 그림자 영역인지 여부를 계산하여야 한다.
객체의 그림자 영역 여부 계산에서 쉐도우 광선 방식은 현재 교차 지점에서 계산 중인 현재 광원으로 광선(ray)를 발사하여, 그 광원과 처음으로 만나면 광원에 영향을 받는 것으로 고려하여 색을 계산하고, 그렇지 않으면 그림자 영역으로 결정하여 그림자로 처리한다. 쉐도우 맵 방식은 현재 교차 지점을 현재 광원에 대한 쉐도우 맵의 위치로 변환하고, 그 변환된 위치의 깊이가 쉐도우 맵의 깊이값보다 작거나 같으면 광원에 영향을 받는 것으로 고려하여 색을 계산하고, 그렇지 않으면 그림자 영역으로 결정하여 그림자로 처리한다.
즉, 변위맵을 사용하는 경우 변위맵(객체 내부)을 먼저 고려한 이후, 변위맵내에서 가려지지 않으면 변위매핑된 원래 객체에 대해 쉐도우 광선 방식이나 쉐도우 맵을 이용하여 그림자를 계산하게 된다.
그리고, 처리 선택기(104)는 맵전처리부(100)로부터 인가되는 광원 조명맵 또는 객체 음영맵 등의 조명맵에 대해서 광원이 많은 객체가 적은 경우는 객체 음영맵을 활용하고, 광원이 적고 객체가 많은 경우는 광원 조명맵을 활용하도록 기본 설정되며, 이때 정확한 계산이 요구되는 경우에는 광원 맵방식을 활용하여 계산하게 된다.
상기한 바와 같이, 본 발명에서는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 방법에 있어서, 간접조명 표현을 위해 맵데이터와 다층 변위매핑을 활용하고, 맵데이터를 GPU 등의 대용량 그래픽 데이터 처리 프로세서를 이용함으로써 렌더링 속도를 향상시키고, 장면을 구성하는 각 객체에 대한 간접조명 표현과 상세 표현을 보다 자연스럽게 표현할 수 있다.
한편 상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 따라서 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
도 1은 본 발명의 실시 예에 따른 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템의 블록 구성도,
도 2는 본 발명의 실시 예에 따른 다층 변위매핑 시스템에서 그래픽 데이터 처리 개념도,
도 3은 본 발명의 실시 예에 따른 맵전처리부에서 맵데이터 생성 동작 흐름도,
도 4는 본 발명의 실시 예에 따른 맵연산 처리부에서 맵데이터 처리 동작 흐름도.
<도면의 주요 부호에 대한 간략한 설명>
100 : 맵전처리부 102 : 맵연산 처리부
104 : 처리 선택기 106 : 조명맵 생성기
108 : 다층 변위맵 생성기 110 : 간접조명 계산기
112 : 다층 변위매핑 계산기 114 : 객체 음영맵 생성기
116 : 광원 조명맵 생성기 118 : 광원 조명맵 계산기
120 : 객체 음영맵 계산기

Claims (17)

  1. 그래픽 구현을 하고자 하는 장면의 정보를 입력받아 상기 장면을 구성하는 각 객체에 대해 간접조명 정보와, 변위 정보를 가지는 맵데이터를 생성하는 맵 전처리부와,
    상기 맵데이터 중 상기 간접조명 정보에 대한 맵데이터와 상기 변위 정보에 대한 맵데이터를 구별하여 출력시키는 처리 선택부와,
    상기 처리 선택부를 통해 인가되는 상기 맵데이터를 이용하여 상기 각 객체에 대해 광원에 의한 영향을 계산하고, 변위가 존재하는 각 객체에 대해서는 다층 변위매핑을 계산하는 맵 연산 처리부
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템.
  2. 제 1 항에 있어서,
    상기 맵 전처리부는,
    상기 장면을 구성하는 각 객체에 대한 간접조명 정보의 표현을 위한 조명맵을 생성하는 조명맵 생성기와,
    상기 각 객체에 대한 변위 정보의 표현을 위한 다층 변위맵을 생성하는 다층 변위맵 생성기
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템.
  3. 제 2 항에 있어서,
    상기 조명맵 생성기는,
    상기 각 객체에 대해 모든 광원으로부터 받는 정보를 텍스처맵 형태로 저장하고, 각 텍스처맵 형태로 누적된 광량정보를 가지는 객체 음영맵을 생성하는 객체 음영맵 생성기와,
    각 광원에 비쳐지는 상기 각 객체의 집합과 광원 사이의 영향 정보를 가지는 광원 조명맵을 생성하는 광원 조명맵 생성기
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템.
  4. 제 2 항에 있어서,
    상기 다층 변위맵은,
    매핑에 사용되는 기본 메쉬와 상세 표현을 위해 사용되는 상세 메쉬간 변위 정보를 저장하고, 상기 기본 메쉬에 법선 방향으로 직선을 그엇을 때 만나는 모든 상세 메쉬의 위치 정보를 상기 기본 메쉬를 기준으로 외곽인 부분부터 순서적으로 저장하고 있는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템.
  5. 제 2 항에 있어서,
    상기 맵 연산 처리부는,
    상기 조명맵의 데이터를 이용하여 상기 장면을 구성하는 각 객체에 대한 간접조명을 계산하는 간접 조명 계산기와,
    상기 다층 변위맵의 데이터를 이용하여 상기 각 객체 중 변위가 존재하는 객체의 상세 표현을 위해 다층 변위매핑을 계산하는 다층 변위매핑 계산기
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템.
  6. 제 5 항에 있어서,
    상기 간접 조명 계산기는,
    상기 조명맵을 이용하여 광원에 의한 상기 각 객체에서의 간접조명을 계산하는 광원 조명맵 계산기와,
    상기 광원에 의해 상기 각 객체에서 발생하는 간접광원에 의한 상기 각 객체에서의 간접조명을 계산하는 객체 음영맵 계산기
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템.
  7. 제 5 항에 있어서,
    상기 다층 변위매핑 계산기는,
    상기 객체를 표시하는 메쉬에서 상기 다층 변위맵내 교차점을 계산하고, 상기 교차점의 계산 시 상기 다층 변위맵에 특성 식별자가 다른 경우에는 상기 메쉬에서 동일 외각층이라도 보간하지 않고 처리하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템.
  8. 제 5 항에 있어서,
    상기 다층 변위매핑 계산기는,
    상기 다층 변위맵내 법선 벡터 데이터가 있는 경우에는 직접조명이나 간접조명에서 상기 광원의 방향벡터와 법선 벡터간 코사인 값이 0보다 작으면 해당 객체가 상기 광원에 가려지는 것으로 판단하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템.
  9. 제 8 항에 있어서,
    상기 다층 변위매핑 계산기는,
    상기 각 객체의 변위맵 내에서 광원으로부터 가려지지 않으면, 쉐도우 광선 또 쉐도우 맵 방식을 이용하여 상기 각 객체의 그림자를 계산하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템.
  10. 맵 데이터를 이용한 간접조명 표현과 다층 변위매핑 방법으로서,
    그래픽 구현을 하고자 하는 장면의 정보를 전처리 수행하여 상기 장면을 구성하는 각 객체에 대한 간접조명 정보와 변위정보를 가지는 맵데이터를 생성하는 단계와,
    상기 맵데이터 중 상기 간접조명 정보에 대한 맵데이터와 상기 변위 정보에 대한 맵데이터를 구별하여 출력시키는 단계와,
    상기 맵데이터를 이용하여 상기 각 객체에 대해 광원에 의한 영향을 계산하고, 상기 변위가 존재하는 각 객체에 대해서는 다층 변위매핑을 계산하는 단계
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 방법.
  11. 제 10 항에 있어서,
    상기 맵 데이터를 생성하는 단계는,
    상기 장면을 구성하는 각 객체에 대한 간접조명 정보의 표현을 위한 조명맵을 생성하는 단계와,
    상기 각 객체에 대한 변위 정보의 표현을 위한 다층 변위맵을 생성하는 단계
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 방법.
  12. 제 11 항에 있어서,
    상기 조명맵을 생성하는 단계는,
    상기 각 객체에 대해 광원으로부터 받는 정보를 텍스처맵 형태로 구성하여 각 텍스처맵 형태로 누적된 광량정보를 가지는 객체 음영맵을 생성하는 단계와,
    각 광원에 의해 비쳐지는 상기 각 객체의 집합과 광원 사이의 영향 정보를 가지는 광원 조명맵을 생성하는 단계
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 방법.
  13. 제 12 항에 있어서,
    상기 객체 음영맵은,
    상기 광원의 수가 기설정된 수보다 많은 경우 생성되는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 방법.
  14. 제 12 항에 있어서,
    상기 광원 조명맵은,
    상기 객체의 수가 기설정된 수보다 많은 경우 생성되는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 방법.
  15. 제 11 항에 있어서,
    상기 다층 변위맵은,
    매핑에 사용되는 기본 메쉬와 상세 표현을 위해 사용되는 상세 메쉬간 변위 정보를 저장하고, 상기 기본 메쉬에 법선 방향으로 직선을 그엇을 때 만나는 모든 상세 메쉬의 위치 정보를 상기 기본 메쉬를 기준으로 외곽인 부분부터 순서적으로 저장하고 있는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 방법.
  16. 제 10 항에 있어서,
    상기 다층 변위 매핑을 계산하는 단계는,
    다층 변위맵의 데이터를 이용하여 상기 각 객체 중 변위가 존재하는 객체의 그림자 영역이 아닌 영역을 검색하는 단계와,
    상기 그림자 영역이 아닌 영역에 대해 조명맵의 데이터를 이용하여 상기 장면을 구성하는 각 객체에 대한 간접조명을 계산하는 단계
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 방법.
  17. 제 16 항에 있어서,
    상기 간접 조명을 계산하는 단계는,
    광원 조명맵을 이용하는 경우는 간접조명 역할을 하는 객체의 광량을 광원 조명맵을 이용하여 계산한 후, 계산된 광량을 간접광원으로 고려하여 상기 간접광원과 객체 사이의 광원의 영향 정도를 계산하는 단계와,
    객체 음영맵을 이용하는 경우는 상기 객체 음영맵 자체를 간접광원으로 고려하여 상기 간접광원과 객체 사이의 광원의 영향 정도를 계산하는 단계
    를 포함하는 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 방법.
KR1020090026450A 2008-11-11 2009-03-27 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 그 방법 KR101100650B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20080111805 2008-11-11
KR1020080111805 2008-11-11

Publications (2)

Publication Number Publication Date
KR20100053413A KR20100053413A (ko) 2010-05-20
KR101100650B1 true KR101100650B1 (ko) 2012-01-03

Family

ID=42278540

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090026450A KR101100650B1 (ko) 2008-11-11 2009-03-27 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR101100650B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10297072B2 (en) 2014-12-15 2019-05-21 Samsung Electronics Co., Ltd. 3D rendering method and apparatus

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5795384B2 (ja) 2010-12-09 2015-10-14 サムスン エレクトロニクス カンパニー リミテッド 映像処理装置、照明処理装置及びその方法
US9715758B2 (en) 2013-07-16 2017-07-25 Samsung Electronics Co., Ltd. Image processing apparatus and method using virtual point light (VPL) information
GB2543562B (en) * 2015-10-23 2020-02-05 Geomerics Ltd Graphics processing
KR102108480B1 (ko) * 2018-11-01 2020-05-08 성균관대학교산학협력단 영상 기반 모델의 재질 추정 방법 및 장치
WO2021021755A1 (en) * 2019-07-26 2021-02-04 Warner Bros. Entertainment Inc. Efficient real-time shadow rendering
CN113628318B (zh) * 2021-07-20 2023-09-15 北京智源人工智能研究院 一种基于光线追踪的分布式实时神经元渲染方法和系统
KR102325647B1 (ko) * 2021-08-04 2021-11-12 파이어슈라이크게임즈 주식회사 라이트맵 기반 모바일 게임의 3d 객체 데이터 처리 방법, 장치 및 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0879092A (ja) * 1994-08-16 1996-03-22 Internatl Business Mach Corp <Ibm> データを圧縮及び圧縮解除するための方法及び装置
KR20050008242A (ko) * 2003-07-14 2005-01-21 삼성전자주식회사 3차원 객체의 영상 기반 표현 및 편집 방법 및 장치
KR20060088134A (ko) * 2006-07-24 2006-08-03 가부시끼가이샤 도시바 화상처리장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0879092A (ja) * 1994-08-16 1996-03-22 Internatl Business Mach Corp <Ibm> データを圧縮及び圧縮解除するための方法及び装置
KR20050008242A (ko) * 2003-07-14 2005-01-21 삼성전자주식회사 3차원 객체의 영상 기반 표현 및 편집 방법 및 장치
KR20060088134A (ko) * 2006-07-24 2006-08-03 가부시끼가이샤 도시바 화상처리장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10297072B2 (en) 2014-12-15 2019-05-21 Samsung Electronics Co., Ltd. 3D rendering method and apparatus

Also Published As

Publication number Publication date
KR20100053413A (ko) 2010-05-20

Similar Documents

Publication Publication Date Title
KR101100650B1 (ko) 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 그 방법
JP2669599B2 (ja) 陰影描画方法及び3次元グラフィック・コンピュータ・システム
US10817132B2 (en) Three-dimensional digital models in two-dimensional digital canvases
AU2006236289B2 (en) Techniques and workflows for computer graphics animation system
US7394464B2 (en) Preshaders: optimization of GPU programs
CN110969685B (zh) 使用渲染图的可定制渲染管线
US8725466B2 (en) System and method for hybrid solid and surface modeling for computer-aided design environments
JP2004038926A (ja) テクスチャマップ編集
US20080122838A1 (en) Methods and Systems for Referencing a Primitive Located in a Spatial Index and in a Scene Index
KR20090057994A (ko) 광선 추적 이미지 처리 시스템의 픽셀 컬러 결정
WO2008012199A2 (en) Ray tracing algorithm with recording of the index traversal history
WO2007067131A1 (en) A method to render a root-less scene graph with a user controlled order of rendering
CN113034656B (zh) 游戏场景中光照信息的渲染方法、装置及设备
US6791544B1 (en) Shadow rendering system and method
JP6864495B2 (ja) 3dシーンのグローバル・イルミネーションの描画
CN114820906A (zh) 图像渲染方法、装置、电子设备及存储介质
CN113034657B (zh) 游戏场景中光照信息的渲染方法、装置及设备
RU2680355C1 (ru) Способ и система удаления невидимых поверхностей трёхмерной сцены
CN111091620B (zh) 基于图形学的地图动态路网处理方法及系统、计算机设备
CN116993894B (zh) 虚拟画面的生成方法、装置、设备、存储介质及程序产品
KR100726031B1 (ko) 큐브 메쉬 구조를 이용한 지형 렌더링 방법
CN118037962A (zh) 一种实验设备的轻量化三维模型构建方法、系统及介质
CN117745962A (zh) 一种地质模型三维可视化方法
Strauss et al. Simplified Shadow Volumes using Silhouette Level-of-Detail
Easdon Ambient occlusion and shadows for molecular graphics

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee