KR20160103926A - 그림자 렌더링 방법 및 그림자 렌더링 장치 - Google Patents
그림자 렌더링 방법 및 그림자 렌더링 장치 Download PDFInfo
- Publication number
- KR20160103926A KR20160103926A KR1020160015059A KR20160015059A KR20160103926A KR 20160103926 A KR20160103926 A KR 20160103926A KR 1020160015059 A KR1020160015059 A KR 1020160015059A KR 20160015059 A KR20160015059 A KR 20160015059A KR 20160103926 A KR20160103926 A KR 20160103926A
- Authority
- KR
- South Korea
- Prior art keywords
- shadow
- region
- rendering
- penumbra
- light
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/60—Shadow generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
그림자 렌더링 방법이 개시된다. 그림자 렌더링 방법은, 3차원 모델링에 의해 생성된 오브젝트에 대한 그림자 영역이 투사되도록, 오브젝트에 방사형의 광을 방출하는 단계, 그림자 영역의 일부를 오브젝트에 대한 반그림자(penumbra) 영역으로 판단하는 단계 및 오브젝트에 대한 반그림자를 반그림자 영역에 렌더링하는 단계를 포함한다.
Description
본 발명은 그림자 렌더링 방법 및 그림자 렌더링 장치에 관한 것으로, 보다 상세하게는 3차원 오브젝트에 대하여 그림자를 렌더링하는 그림자 렌더링 방법 및 그림자 렌더링 장치에 관한 것이다.
3차원 모델링에 의해 생성되는 오브젝트에서 표현되는 그림자는 화면을 실제적으로 보이게 하고 물체들 간의 상대적인 관계를 파악하도록 하는데 중요하다. 실시간 렌더링에서는 쉐도우 매핑(shadow mapping)을 이용하여 그림자를 생성하는 방법을 주로 사용하고 있다. 이러한 방법은 광원의 시점에서 z-버퍼를 렌더링하여 그림자 맵을 생성한 후, 추후 음영 처리에서 추가적인 깊이 테스트(depth test)를 통해 광원으로부터의 차폐를 판정하고 렌더링될 화면에서 음영처리의 밝기를 결정한다.
쉐도우 매핑 방법은 쉐도우 맵 생성이 간단하고, 쉐도우 맵이 생성되면 화면 화소의 그림자 여부 판단이 장면 복잡도에 영향을 받지 않기 때문에 효율적이며, 또한 하드웨어로 가속화가 가능하여 실시간 렌더링에서 흔히 사용된다. 그러나, 쉐도우 매핑 방법은 한 화소가 광원시점에서 여러 화소 영역을 차지하는 경우 그림자 경계면에서 격자 모양의 앨리어싱(aliasing)이 생기는 문제가 있다.
종래에는 이를 해결하기 위하여, 그림자 가장자리 부분의 일괄적인 필터링을 통해 가장자리 영역을 부드럽게 수정하는 PCF(Percentage Closer Filtering) 방법, 그림자 영역에서의 다수의 가상 Ray를 생성하여 그림자 영역을 계산하는 PCSS(Percentage Closer Soft Shadow) 방법 등을 사용하였다. 그러나, PCF 방법은 가장자리 영역을 일정한 크기로 필터링하기 때문에 그림자의 퍼짐 효과를 근사하는 것이 불가능하며, 가장자리 영역의 필터링을 위한 추가적인 연산량이 필요하다는 문제가 있다. 또한, PCSS 방법은 모든 표면상에서의 그림자 가려짐 정도를 위해 가상의 Ray를 샘플링하여 가려짐 정도를 계산하여야 하므로, 매 프레임당 그림자 렌더링을 위하여 높은 연산량이 필요하다는 문제가 있다.
본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로, 본 발명의 목적은 그림자 렌더링에 필요한 연산량을 감소시키면서, 실시간으로 부드러운 그림자 효과를 렌더링할 수 있는 그림자 렌더링 방법 및 그림자 렌더링 장치를 제공함에 있다.
본 발명의 일 실시 예에 따른 그림자 렌더링 방법은, 3차원 모델링에 의해 생성된 오브젝트에 대한 그림자 영역이 투사되도록, 오브젝트에 방사형의 광을 방출하는 단계, 그림자 영역의 일부를 오브젝트에 대한 반그림자(penumbra) 영역으로 판단하는 단계 및 오브젝트에 대한 반그림자를 반그림자 영역에 렌더링하는 단계를 포함한다.
또한, 상기 그림자 영역은, 상기 방사형의 광이 상기 오브젝트에 의해 차단되어 도달하지 않는 영역일 수 있다.
또한, 상기 판단하는 단계는, 상기 방사형의 광을 방출하는 광원을 기준으로 상기 오브젝트에 대한 뎁스 정보를 산출하고, 상기 뎁스 정보에 따라 생성된 제1 뎁스맵에 기초하여 상기 오브젝트에 대한 반그림자(penumbra) 영역을 판단할 수 있다.
또한, 상기 판단하는 단계는, 비 방사형의 광을 방출하는 타 광원을 기준으로 상기 오브젝트에 대한 뎁스 정보를 산출하고, 상기 뎁스 정보에 따라 생성된 제2 뎁스맵에 기초하여 상기 오브젝트에 대한 본그림자(umbra) 영역을 판단하고, 상기 그림자 영역 중 상기 본그림자 영역을 제외한 나머지 영역을 상기 반그림자 영역으로 판단할 수 있다.
또한, 상기 렌더링하는 단계는, 상기 판단된 반그림자 영역에 대한 상기 제1 뎁스맵 및 상기 제2 뎁스맵 사이의 뎁스값 차이에 기초하여 상기 반그림자 영역의 명암값을 결정하고, 상기 결정된 명암값에 따라 상기 반그림자 영역에 상기 오브젝트에 대한 반그림자를 렌더링할 수 있다.
또한, 상기 렌더링하는 단계는, 상기 오브젝트를 그레이 스케일로 변환하여 그림자 오브젝트를 생성하고, 상기 그림자 영역에서 상기 그림자 오브젝트를 상기 그림자 오브젝트 단위로 합성하여 상기 오브젝트에 대한 반그림자를 렌더링할 수 있다.
또한, 상기 렌더링하는 단계는, 상기 그림자 영역에서 상기 그림자 오브젝트를 상기 그림자 오브젝트 단위로 기 설정된 간격만큼 순차적으로 이동시키면서 합성하여 상기 오브젝트에 대한 반그림자를 렌더링할 수 있다.
한편, 본 발명의 일 실시 예에 따른 그림자 렌더링 장치는, 3차원 모델링에 의해 생성된 오브젝트에 대한 그림자 영역이 투사되도록, 상기 오브젝트에 방사형의 광을 방출하는 광 생성부, 상기 그림자 영역의 일부를 상기 오브젝트에 대한 반그림자(penumbra) 영역으로 판단하는 판단부 및 상기 오브젝트에 대한 반그림자를 상기 반그림자 영역에 렌더링하는 렌더링부를 포함한다.
또한, 상기 그림자 영역은, 상기 방사형의 광이 상기 오브젝트에 의해 차단되어 도달하지 않는 영역일 수 있다.
또한, 상기 반그림자 영역 판단부는, 상기 방사형의 광을 방출하는 광원을 기준으로 상기 오브젝트에 대한 뎁스 정보를 산출하고, 상기 뎁스 정보에 따라 생성된 제1 뎁스맵에 기초하여 상기 오브젝트에 대한 반그림자(penumbra) 영역을 판단할 수 있다.
또한, 상기 반그림자 영역 판단부는, 비 방사형의 광을 방출하는 타 광원을 기준으로 상기 오브젝트에 대한 뎁스 정보를 산출하고, 상기 뎁스 정보에 따라 생성된 제2 뎁스맵에 기초하여 상기 오브젝트에 대한 본그림자(umbra) 영역을 판단며, 상기 그림자 영역 중 상기 본그림자 영역을 제외한 나머지 영역을 상기 반그림자 영역으로 판단하는, 그림자 렌더링 장치.
또한, 상기 렌더링부는, 상기 판단된 반그림자 영역에 대한 상기 제1 뎁스맵 및 상기 제2 뎁스맵 사이의 뎁스값 차이에 기초하여 상기 반그림자 영역의 명암값을 결정하고, 상기 결정된 명암값에 따라 상기 반그림자 영역에 상기 오브젝트에 대한 반그림자를 렌더링할 수 있다.
또한, 상기 렌더링부는, 상기 오브젝트를 그레이 스케일로 변환하여 그림자 오브젝트를 생성하고, 상기 그림자 영역에서 상기 그림자 오브젝트를 상기 그림자 오브젝트 단위로 합성하여 상기 오브젝트에 대한 반그림자를 렌더링할 수 있다.
또한, 상기 렌더링부는, 상기 그림자 영역에서 상기 그림자 오브젝트를 상기 그림자 오브젝트 단위로 기 설정된 간격만큼 순차적으로 이동시키면서 합성하여 상기 오브젝트에 대한 반그림자를 렌더링할 수 있다.
상술한 본 발명의 다양한 실시 예에 따르면, 제한된 컴퓨팅 환경에서, 사실적인 그림자를 실시간으로 렌더링하기 위한 성능을 향상시킬 수 있다.
도 1A 및 도 1B는 종래의 쉐도우 매핑 방법에 따라 그림자를 렌더링하는 방법을 설명하기 위한 도면,
도 2는 종래의 PCSS 방법에 따라 그림자를 렌더링하는 방법을 설명하기 위한 도면,
도 3은 본 발명의 일 실시 예에 따른, 그림자 렌더링 장치의 구성을 간략히 도시한 블록도,
도 4는 본 발명의 일 실시 예에 따른, 추가적으로 광원을 설정하여 반그림자 영역을 계산하는 방법을 설명하기 위한 도면,
도 5 및 도 6은 본 발명의 일 실시 예에 따른, 오브젝트 단위로 반그림자를 렌더링하는 방법을 설명하기 위한 도면,
도 7은 본 발명의 다른 실시 예에 따른, 그림자 렌더링 장치의 구성을 상세히 도시한 블록도,
도 8은 본 발명의 일 실시 예에 따른, 그림자 렌더링 방법을 설명하기 위한 흐름도이다.
도 2는 종래의 PCSS 방법에 따라 그림자를 렌더링하는 방법을 설명하기 위한 도면,
도 3은 본 발명의 일 실시 예에 따른, 그림자 렌더링 장치의 구성을 간략히 도시한 블록도,
도 4는 본 발명의 일 실시 예에 따른, 추가적으로 광원을 설정하여 반그림자 영역을 계산하는 방법을 설명하기 위한 도면,
도 5 및 도 6은 본 발명의 일 실시 예에 따른, 오브젝트 단위로 반그림자를 렌더링하는 방법을 설명하기 위한 도면,
도 7은 본 발명의 다른 실시 예에 따른, 그림자 렌더링 장치의 구성을 상세히 도시한 블록도,
도 8은 본 발명의 일 실시 예에 따른, 그림자 렌더링 방법을 설명하기 위한 흐름도이다.
본 발명에 대하여 구체적으로 설명하기에 앞서, 본 명세서 및 도면의 기재 방법에 대하여 설명한다.
먼저, 본 명세서 및 청구범위에서 사용되는 용어는 본 발명의 다양한 실시 예들에서의 기능을 고려하여 일반적인 용어들을 선택하였다. 하지만, 이러한 용어들은 당 분야에 종사하는 기술자의 의도나 법률적 또는 기술적 해석 및 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 일부 용어는 출원인이 임의로 선정한 용어일 수 있다. 이러한 용어에 대해서는 본 명세서에서 정의된 의미로 해석될 수 있으며, 구체적인 용어 정의가 없으면 본 명세서의 전반적인 내용 및 당해 기술 분야의 통상적인 기술 상식을 토대로 해석될 수도 있다.
또한, 본 명세서에 첨부된 각 도면에 기재된 동일한 참조 번호 또는 부호는 실질적으로 동일한 기능을 수행하는 부품 또는 구성요소를 나타낸다. 설명 및 이해의 편의를 위해서 서로 다른 실시 예들에서도 동일한 참조번호 또는 부호를 사용하여 설명하도록 한다. 즉, 복수의 도면에서 동일한 참조 번호를 가지는 구성 요소를 모두 도시하고 있다고 하더라도, 복수의 도면들이 하나의 실시 예를 의미하는 것은 아니다.
또한, 본 명세서 및 청구범위에서는 구성요소들 간의 구별을 위하여 “제1”, “제2” 등과 같이 서수를 포함하는 용어가 사용될 수 있다. 이러한 서수는 동일 또는 유사한 구성 요소들을 서로 구별하기 위하여 사용하는 것이며, 이러한 서수 사용으로 인하여 용어의 의미가 한정 해석되어서는 안될 것이다. 일 예로, 이러한 서수와 결합된 구성 요소는 그 숫자에 의해 사용 순서나 배치 순서 등이 제한 해석되어서는 안된다. 필요에 따라서는, 각 서수들은 서로 교체되어 사용될 수도 있다.
본 명세서에서 단수의 표현은 문맥상 명백하게 다름을 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, “포함하다” 또는 “구성하다” 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명의 실시 예에서 “모듈”, “유닛”, “부(Part)” 등과 같은 용어는 적어도 하나의 기능이나 동작을 수행하는 구성 요소를 지칭하기 위한 용어이며, 이러한 구성 요소는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어 및 소프트웨어의 결합으로 구현될 수도 있다. 또한, 복수의 “모듈”, “유닛”, “부(part)” 등은 각각이 개별적인 특정한 하드웨어로 구현될 필요가 있는 경우를 제외하고는, 적어도 하나의 모듈이나 칩으로 일체화되어 적어도 하나의 프로세서(미도시)로 구현될 수 있다.
또한, 본 발명의 실시 예에서, 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적인 연결뿐 아니라, 다른 매체를 통한 간접적인 연결의 경우도 포함한다. 또한 어떤 부분이 어떤 구성 요소를 포함한다는 의미는, 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있다는 것을 의미한다.
이하에서는 도면을 참조하여 본 발명에 대해 상세히 설명하기로 한다.
도 1A 내지 도 1B는 종래의 쉐도우 매핑 방법에 따라 그림자를 렌더링하는 방법을 설명하기 위한 도면이다.
쉐도우 매핑 방법은 광원 방향에서 오브젝트의 뎁스(depth) 정보를 맵(Map) 형태로 저장한 쉐도우 맵을 이용하여, 그림자를 렌더링할 때 각 픽셀에 대응되는 오브젝트의 한 점의 깊이 값과 뎁스 맵에 저장된 값을 비교해서 그림자 여부를 판단한다.
도 1A를 참조하면, P 지점에 대하여 쉐도우 맵에 저장된 뎁스값(ZA)이 P 지점에서 현재 측정되는 뎁스값(ZB)보다 작으면, P 지점은 광원이 오브젝트에 의해 차단되는 영역인 그림자 영역에 위치하는 것으로 판단할 수 있다.
또한, 도 1B를 참조하면, P 지점에 대하여 쉐도우 맵에 저장된 뎁스값(ZA)이 P 지점에서 현재 측정되는 뎁스값(ZB)보다 크면, P 지점은 광원이 오브젝트에 의해 차단되지 않고 도달하는 영역, 즉 그림자 영역 외에 위치하는 것으로 판단할 수 있다.
그러나, 이러한 종래의 쉐도우 매핑 방법은 상술한 바와 같이, 쉐도우 맵 화소가 시점에서 가까운 곳에 그려지는 경우, 쉐도우 맵 화소의 확대로 인해 앨리어싱(aliasing)이 일어나는 문제가 있으며, 이를 없애려면 필요이상으로 고해상도인 쉐도우 맵이 필요하다는 문제가 있다. 또한, 일반적인 쉐도우 매핑 방법으로는 오브젝트에 대한 반그림자를 생성할 수 없다는 문제가 있었다.
이를 해결하기 위한 방법으로, 종래에는 그림자 가장자리 부분의 일괄적인 필터링을 통해 가장자리 영역을 부드럽게 수정하는 PCF(Percentage Closer Filtering) 방법을 사용하였다. 그러나, PCF 방법은 오브젝트가 그림자와 얼마나 가까이 있는지는 계산하지 않으므로 면광원에 의한 그림자의 퍼짐 효과를 정확히 근사하는 것이 불가능하며, 가장자리 영역의 필터링을 위한 추가적인 연산량이 필요하다는 문제가 있었다. 이후에 나온 방법으로, PCSS(Percentage Closer Soft Shadow) 방법이 존재하는데, 이에 대하여는 도 2를 참조하여 설명하도록 한다.
도 2는 종래의 PCSS 방법에 따라 그림자를 렌더링하는 방법을 설명하기 위한 도면이다.
도 2에 도시된 바와 같이, PCSS 방법은 쉐도우 매핑에 의해 본그림자 영역(23)을 판단하고, 반그림자 영역(24)에서의 가상의 Ray를 생성하여 그림자 영역을 계산함으로써 좀 더 실제적인 그림자를 표현하기 위한 방법이다. PCSS 방법은 그림자 영역의 위치와 가려짐 정도를 파악하기 위하여, 가상 평면의 각 지점으로부터 광원(21)까지의 가상 Ray를 생성하여, 생성된 가상 Ray만큼 Block Test를 수행한다. 구체적으로, PCSS 방법은 샘플링된 다수(30 ~ 100)의 가상 Ray를 생성하고, 어느 Ray가 오브젝트(22)에 의해 차단되고, 어느 Ray가 광원에 도달하는지 계산하는 Block Test를 수행하여, 반그림자가 생성되는 영역(24)을 계산할 수 있다.
Block Test 값이 합산되면, 오브젝트(22)의 그림자 영역과 가려짐 정도를 계산하고, 계산된 영역에 그림자의 컬러값을 픽셀(Pixel) 단위로 합산하여 그림자를 표현할 수 있다. 이에 따라, 반그림자 영역(24)의 반그림자 농도, 즉 본그림자에 가까울수록 어둡고 본그림자에 멀수록 밝은 반그림자의 특성을 표현할 수 있게 된다.
그러나, 이러한 PCSS 방법은 샘플링 영역을 계산하기 위한 추가 연산량이 필요하며, 이를 피하기 위해 미리 저장한 룩업 테이블(Lookup Table)을 사용한다고 하여도 메모리의 사용량이 높아지는 문제가 있다. 또한, 계산된 그림자 영역에 대한 테스트 값의 합산을 위한 연산량이 필요하며, 픽셀 렌더링을 지원하지 않는 2D 프레임워크(frame work) 등에서는 적용이 불가능하다는 문제 또한 있다.
도 3은 본 발명의 일 실시 예에 따른, 그림자 렌더링 장치의 구성을 간략히 도시한 블록도이다.
본 발명의 그림자 렌더링 장치(100)는 TV, 스마트 폰(Smart Phone), 휴대 단말(Portable Terminal), 컴퓨터, 노트북 컴퓨터, 타블렛 PC(tablet PC) 등 이미지 처리가 가능한 다양한 종류의 전자 기기로 구현될 수 있다.
도 3에 따르면 본 발명의 일 실시 예에 따른 그림자 렌더링 장치(100)는 광 생성부(110), 반그림자 영역 판단부(120) 및 렌더링부(130)를 포함한다.
3차원으로 모델링된 오브젝트를 그래픽스로 표현하기 위해서 3차원 오브젝트를 삼각형 폴리곤들의 집합으로 만들 수 있다. 이 폴리곤들의 정보를 통해 3D 그래픽스를 구현하게 되는데, 이때, 3차원 오브젝트의 정보를 담을 구조로 버텍스(Vertex)와 텍스처(Texture)를 이용할 수 있다.
광 생성부(110)는 3차원 모델링에 의해 생성된 오브젝트에 대한 그림자 영역이 투사되도록, 오브젝트에 방사형의 광을 방출하는 구성이다. 여기서, 그림자 영역은 방사형의 광이 오브젝트에 의해 차단되어 도달하지 않는 영역을 의미하는 것으로, 본그림자 영역 및 반그림자 영역을 포함할 수 있다.
도 4에 도시된 바와 같이, 광 생성부(110)는 오브젝트(22)에 대하여 럭스(lux) 광선을 조사시키는 광원을 구현하는 구성으로, 광원은 물리적 크기를 무시하는 점광원 형태로 구현되거나, 면광원으로 구현될 수 있다. 즉, 광 생성부(110)는 광원으로부터 방출되는 광선을 오브젝트(22)에 조사함으로써 오브젝트(22)의 그림자가 형성되도록 하는 환경을 마련할 수 있다. 광 생성부(110)에서 생성되는 광원이 오브젝트(22)로부터 이격되어야 할 거리는 본 명세서에서 특별하게 한정하지 않으나, 광원의 밝기가 이격된 거리의 제곱에 반비례한다는 물리법칙을 고려하여 유연하게 설정될 수 있다.
광 생성부(110)는 오브젝트(22)에 대한 본 그림자를 생성하기 위한 기존의 제1 광원(41) 외에, 오브젝트(22)의 반 그림자를 생성하기 위한 제2 광원(42)을 제1 광원(41)과 별도로 추가적으로 생성할 수 있다. 여기서, 추가적으로 생성되는 제2 광원(42)은 광선이 방사형으로 퍼져나가는 적어도 하나의 면광원 또는 점광원으로 구현할 수 있으며, 그 위치 또한 다양하게 조정될 수 있다. 예를 들어, 제1 광원(41)과 오브젝트(22) 사이의 거리가 작아지면, 제2 광원(42)의 위치가 상승할 수 있으며, 제1 광원(41)과 오브젝트(22) 사이의 거리가 커지면, 제2 광원(42)의 위치가 하강할 수 있다. 다만, 제2 광원(42)은 제1 광원(41)과 오브젝트(22) 사이의 영역에 존재하는 것이 바람직하다.
특히, 제2 광원(42)은 방사되는 광 내부에 오브젝트(22)가 모두 포함되도록 방사각을 조정하여 광을 방사할 수 있다. 즉, 광 생성부(110)는 더 넓은 영역을 투사할 수 있는 제2 광원(42)을 추가적으로 설정하여 기존의 제1 광원(41)과 제2 광원(42)에 의한 그림자 영역을 별도로 계산할 수 있다.
반그림자 영역 판단부(120)는 그림자 영역의 일부를 오브젝트(22)에 대한 반그림자(penumbra) 영역(24)으로 판단하는 구성이다. 구체적으로, 반그림자 영역 판단부(120)는 방사형의 광을 방출하는 광원(42)을 기준으로 오브젝트(22)에 대한 뎁스 정보를 산출하고, 뎁스 정보에 따라 생성된 제1 뎁스맵에 기초하여 오브젝트(22)에 대한 반그림자 영역(24)을 판단할 수 있다.
즉, 반그림자 영역 판단부(120)는 제1 광원(41)의 오브젝트(22)에 대한 뎁스맵 이외에, 제2 광원(42)의 오브젝트(22)에 대한 뎁스맵을 추가적으로 생성할 수 있다. 이하, 제1 광원(41)의 오브젝트(22)에 대한 뎁스맵을 제1 뎁스맵, 제2 광원(42)의 오브젝트(22)에 대한 뎁스맵을 제2 뎁스맵으로 명명하도록 한다.
반그림자 영역 판단부(120)는 제1 뎁스맵 및 제2 뎁스맵 정보에 기초하여, 제1 광원(41)에 의해 방사되는 광이 차단되는 그림자 영역 및 제2 광원(42)에 의해 방사되는 광이 차단되는 그림자 영역을 각각 판단할 수 있다. 반그림자 영역 판단부(1200는 각 광원에 의해 생성되는 그림자 영역을 구분하여 본 그림자 영역(23)을 판단하고, 그림자 영역 중 본그림자 영역(23)을 제외한 나머지 영역을 반 그림자 영역(24)으로 판단할 수 있다. 이에 따르면, 2개의 뎁스맵을 테스트하는 것만으로 그림자 영역을 계산할 수 있기 때문에, 연산 횟수를 크게 절감시킬 수 있다.
한편, 이러한 제2 광원(42)에 의한 그림자 영역의 계산을 위해서는, 기존 프로젝션 매트릭스(projection matrix)를 변형하는 연산이 필요한데, 이는 기본적인 그래픽 렌더링 파이프라인(graphics rendering pipeline)에 포함된 연산이기 때문에, 타 연산에 비해 연산 성능이 높다. 따라서, 샘플링 방식에 비해 매우 높은 효율로 그림자 영역을 계산할 수 있게 된다.
렌더링부(130)는 오브젝트(22)에 대한 반그림자를 판단된 반그림자 영역(24)에 렌더링하는 구성이다. 구체적으로, 렌더링부(130)는 제1 광원(41) 및 제2 광원(42)으로부터 투영된 그림자에 대한 렌더링 처리를 수행하는 것으로, 가상 평면에 투영된 그림자를 그래픽화하여 그림자 이미지로서 구현하는 역할을 한다.
렌더링부(130)는 제1 뎁스맵 및 제2 뎁스맵 사이의 뎁스값 차이에 기초하여 판단된 반그림자 영역(24)의 명암값을 결정하고, 결정된 명암값에 따라 반그림자 영역(24)에 오브젝트(22)에 대한 반그림자를 렌더링할 수 있다. 즉, 렌더링부(130)는 렌더링 처리에 있어서, 가상 평면에 투영된 그림자의 밀도에 따라 구현되는 그림자 이미지의 어두운 정도를 상이하게 할 수 있으며, 이를 통해 우수한 질감을 갖는 그림자 이미지의 구현이 가능할 수 있다. 이때, 도 4에 도시된 바와 같이, 반그림자의 명암의 어둡기는 선(25)의 기울기와 같이 본 그림자(23)에서 가까울수록 커지고, 본 그림자(23)에서 멀어질수록 작아지도록 리니어(linear)하게 구현될 수 있다.
도 5 및 도 6은 본 발명의 일 실시 예에 따른, 오브젝트 단위로 반그림자를 렌더링하는 방법을 설명하기 위한 도면이다.
도 5에 도시된 바와 같이, 기존에는 반그림자 영역(24)이 계산되면 반그림자 영역(24)에 픽셀 단위로 오브젝트(22)의 칼라값을 합산하여 어두운 정도를 렌더링하였다. 즉, 종래의 PCSS는 그림자 영역(51)에서 사용자의 시선 방향에 의해 보여지는 모든 픽셀을 본 그림자 영역(23) 및 반 그림자 영역(24)에 각각 대응되는 칼라 값으로 렌더링하여, 반그림자의 밝기를 반그림자 영역(24)의 위치에 따라 각각 다르게 표현하였다.
그러나, 이러한 그림자 영역(51)의 픽셀 별 칼라 값 합산 방식은 픽셀 개수 만큼의 칼라 합산 연산을 수행해야 하므로, 많은 연산량이 필요하다는 문제가 있다.
도 6은 본 발명의 일 실시 예에 따라, 종래의 픽셀 단위로 반그림자를 렌더링하는 방법 대신 오브젝트 단위로 반그림자를 렌더링하는 방법을 도시한 것이다. 도 6에 도시된 바와 같이, 렌더링부(130)는 오브젝트(22)를 그레이 스케일(gray scale)로 변환하여 그림자 오브젝트(61)를 생성하고, 계산된 그림자 영역(51)에서 그림자 오브젝트(61)를 그림자 오브젝트(61) 단위로 합성하여 오브젝트(22)에 대한 반그림자를 렌더링할 수 있다. 이때, 렌더링부(130)는 오브젝트(22)를 그레이 스케일로 변환하고, 블러 필터링(Blur Filtering)을 수행하여, 그림자 오브젝트(61)를 생성할 수 있다.
구체적으로, 렌더링부(130)는 그림자 오브젝트(61)를 그림자 오브젝트(61) 단위로 기 설정된 간격만큼 순차적으로 이동시키면서 합성하여, 그림자 오브젝트(61)의 2D 투사(Projection)에 의한 반그림자를 렌더링할 수 있다. 이때, 제2 광원(42)의 위치를 기 설정된 간격만큼 순차적으로 이동시키면, 그림자 영역(51)에 그림자 오브젝트(61)가 중첩되어 표시됨으로써 빠른 그림자 영역(51)의 렌더링이 가능하다.
또한, 본 발명의 오브젝트 기반 그림자 렌더링 방법에 따르면, 픽셀 렌더링을 지원하지 않는 기존의 2D 프레임워크(framework) 내부에서도 2D 오브젝트 렌더링 연산을 통해서 그림자를 생성할 수 있게 된다. 구체적으로, 일반적인 UI 프레임워크는 기본적인 Primitive의 레이어(layer) 렌더링을 지원하므로, 이 연산을 활용하여 3D 그래픽 라이브러리(Library)의 활용 없이도 그림자 효과를 렌더링할 수 있다. 이 오브젝트 기반 그림자 렌더링 연산은 UI 프레임워크에서 지원하는 텍스트, Primitive의 그림자 렌더링에서 더 높은 효율을 갖을 수 있다.
도 7은 본 발명의 다른 실시 예에 따른, 그림자 렌더링 장치의 구성을 상세히 도시한 블록도이다. 도 7에 도시된 바와 같이, 본 발명의 다른 실시 예에 따른 그림자 렌더링 장치(100’)는 광 생성부(110), 반그림자 영역 판단부(120), 렌더링부(130), 디스플레이부(140), 저장부(150), 오디오 처리부(160), 오디오 출력부(170), 비디오 처리부(180) 및 사용자 인터페이스(190)를 포함한다. 이하에서는 도 1에서의 설명과 중복되는 부분에 대한 설명은 생략하기로 한다.
반그림자 영역 판단부(120)는 저장부(150)에 저장된 각종 프로그램을 이용하여 그림자 렌더링 장치(100’)의 전반적인 동작을 제어한다.
반그림자 영역 판단부(120)는 도 7에 도시된 바와 같이, ROM(121), RAM(122), 그래픽 처리부(123), CPU(124), 제1 내지 n 인터페이스(125-1 ~ 125-n) 및 버스(126)를 포함한다. 이때, ROM(121), RAM(122), 그래픽 처리부(123), CPU(124), 제1 내지 n 인터페이스(125-1 ~ 125-n) 등은 버스(126)를 통해 서로 연결될 수 있다. 다만, 반그림자 영역 판단부(120)의 구성이 이에 한정되는 것은 아니며, ROM(121), RAM(122), 그래픽 처리부(123) 및 CPU(124)와 동일하거나 유사한 기능을 수행할 수 있는 다양한 장치들로 구성될 수 있음은 물론이다.
ROM(121)에는 시스템 부팅을 위한 명령어 세트 등이 저장된다. CPU(124)는 저장부(150)에 저장된 각종 어플리케이션 프로그램을 RAM(122)에 복사하고, RAM(122)에 복사된 어플리케이션 프로그램을 실행시켜 각종 동작을 수행한다.
그래픽 처리부(123)는 연산부(미도시) 및 렌더링부(미도시)를 이용하여 아이콘, 이미지, 텍스트 등과 같은 다양한 객체를 포함하는 화면을 생성한다. 연산부는 화면의 레이아웃에 따라 각 객체들이 표시될 좌표값, 형태, 크기, 컬러 등과 같은 속성값을 연산한다. 렌더링부는 연산부에서 연산한 속성값에 기초하여 객체를 포함하는 다양한 레이아웃의 화면을 생성한다.
CPU(120)는 저장부(150)에 액세스하여 저장부(150)에 저장된 O/S를 이용하여 부팅을 수행한다. 그리고, CPU(120)는 저장부(150)에 저장된 각종 프로그램, 컨텐츠, 데이터 등을 이용하여 다양한 동작을 수행한다.
제1 내지 n 인터페이스(125-1 내지 125-n)는 상술한 각종 구성요소들과 연결된다. 인터페이스들 중 하나는 네트워크를 통해 외부 장치와 연결되는 네트워크 인터페이스가 될 수도 있다.
디스플레이부(140)는 다양한 컨텐츠 화면을 제공할 수 있다. 여기서, 컨텐츠 화면은 이미지, 동영상, 게임, 텍스트와 같은 다양한 컨텐츠, 다양한 컨텐츠를 포함하는 어플리케이션 실행 화면, GUI(Graphic User Interface) 화면 등을 포함할 수 있다. 디스플레이부(140)의 구현 방식은 한정되지 않으며, 예컨대, LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 디스플레이, AM-OLED(Active-Matrix Organic Light-Emitting Diode), PDP(Plasma Display Panel) 등과 같은 다양한 형태의 디스플레이로 구현될 수 있다.
저장부(150)는 그림자 렌더링 장치(100’)를 구동하기 위한 다양한 모듈을 저장하는 구성이다. 특히, 저장부(150)는 그림자 렌더링 장치(100’)를 구동시키기 위한 O/S(Operating System) 소프트웨어 모듈, 각종 멀티디미어 컨텐츠와 같은 다양한 데이터를 저장할 수 있다.
구체적으로, 저장부(150)는 그림자 렌더링 장치(100’)에 포함된 각 하드웨어들로부터 전달되는 신호를 처리하는 베이스 모듈, 데이터베이스(DB)나 레지스트리를 관리하는 스토리지 모듈, 레이아웃의 화면을 생성하기 위한 그래픽 처리 모듈, 보안 모듈 등을 저장할 수 있다. 특히, 저장부(150)는 본 발명의 일 실시 예에 따른 가상의 광원을 생성하기 위한 광 생성 모듈, 그림자를 렌더링하기 위한 그림자 렌더링 모듈 등의 프로그램 등이 저장되어 있을 수 있다.
오디오 처리부(160)는 오디오 데이터에 대한 처리를 수행하는 구성요소이다. 오디오 처리부(160)에서는 오디오 데이터에 대한 디코딩이나 증폭, 노이즈 필터링 등과 같은 다양한 처리가 수행될 수 있다.
오디오 출력부(170)는 오디오를 출력하는 구성으로, 스피커 등으로 구현될 수 있다.
비디오 처리부(180)는 컨텐츠에 대한 디코딩, 스케일링, 노이즈 필터링, 프레임 레이트 변환, 해상도 변환 등과 같은 다양한 이미지 처리를 수행할 수 있다.
사용자 인터페이스부(190)는 그림자 렌더링 장치(100’)의 전반적인 동작을 제어하기 위한 사용자 인터렉션을 감지하기 위한 구성이다. 특히, 사용자 인터페이스부(190)는 마이크(미도시), 적외선 신호 수신부(미도시) 등과 같은 다양한 인터렉션 감지 장치를 포함할 수 있다.
도 8은 본 발명의 일 실시 예에 따른, 그림자 렌더링 방법을 설명하기 위한 흐름도이다.
먼저, 3차원 모델링에 의해 생성된 오브젝트에 대한 그림자 영역이 투사되도록, 오브젝트에 방사형의 광을 방출한다(S810). 이때, 그림자 영역은, 방사형의 광이 오브젝트에 의해 차단되어 도달하지 않는 영역을 의미한다.
이때, 그림자 영역의 일부를 오브젝트에 대한 반그림자(penumbra) 영역으로 판단한다(S820). 이때, 방사형의 광을 방출하는 광원을 기준으로 오브젝트에 대한 뎁스 정보를 산출하고, 뎁스 정보에 따라 생성된 제1 뎁스맵에 기초하여 오브젝트에 대한 반그림자 영역을 판단할 수 있다. 또한, 비 방사형의 광을 방출하는 타 광원을 기준으로 오브젝트에 대한 뎁스 정보를 산출하고, 뎁스 정보에 따라 생성된 제2 뎁스맵에 기초하여 오브젝트에 대한 본그림자 영역을 판단하고, 그림자 영역 중 본그림자 영역을 제외한 나머지 영역을 반그림자 영역으로 판단할 수 있다.
이 후, 오브젝트에 대한 반그림자를 반그림자 영역에 렌더링한다(S830). 이때, 판단된 반그림자 영역에 대한 제1 뎁스맵 및 제2 뎁스맵 사이의 뎁스값 차이에 기초하여 반그림자 영역의 명암값을 결정하고, 결정된 명암값에 따라 반그림자 영역에 오브젝트에 대한 반그림자를 렌더링할 수 있다.
또한, 오브젝트를 그레이 스케일로 변환하여 그림자 오브젝트를 생성하고, 그림자 영역에서 그림자 오브젝트를 그림자 오브젝트 단위로 합성하여 오브젝트에 대한 반그림자를 렌더링할 수 있다. 이는, 그림자 영역에서 그림자 오브젝트를 그림자 오브젝트 단위로 기 설정된 간격만큼 순차적으로 이동시키면서 합성하는 방식으로 구현될 수 있다.
이상과 같이 본 발명의 다양한 실시 예에 따르면, 그림자 렌더링 과정의 연산량을 감소시킬 수 있으므로, 실시간에 부드러운 그림자를 더 신속하게 렌더링할 수 있다.
상술한 다양한 실시 예에 따른 제어 방법은 프로그램으로 구현되어 다양한 기록 매체에 저장될 수 있다. 즉, 각종 프로세서에 의해 처리되어 상술한 다양한 제어 방법을 실행할 수 있는 컴퓨터 프로그램이 기록 매체에 저장된 상태로 사용될 수도 있다.
일 예로, 3차원 모델링에 의해 생성된 오브젝트에 대한 그림자 영역이 투사되도록, 오브젝트에 방사형의 광을 방출하는 단계, 그림자 영역의 일부를 오브젝트에 대한 반그림자(penumbra) 영역으로 판단하는 단계 및 오브젝트에 대한 반그림자를 반그림자 영역에 렌더링하는 단계를 수행하는 프로그램이 저장된 비일시적 판독 가능 매체(non-transitory computer readable medium)가 제공될 수 있다.
비일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
100: 그림자 렌더링 장치 110: 광 생성부
120: 반그림자 영역 판단부 130: 렌더링부
120: 반그림자 영역 판단부 130: 렌더링부
Claims (14)
- 그림자 렌더링 방법에 있어서,
3차원 모델링에 의해 생성된 오브젝트에 대한 그림자 영역이 투사되도록, 상기 오브젝트에 방사형의 광을 방출하는 단계;
상기 그림자 영역의 일부를 상기 오브젝트에 대한 반그림자(penumbra) 영역으로 판단하는 단계; 및
상기 오브젝트에 대한 반그림자를 상기 반그림자 영역에 렌더링하는 단계;를 포함하는 그림자 렌더링 방법. - 제1항에 있어서,
상기 그림자 영역은,
상기 방사형의 광이 상기 오브젝트에 의해 차단되어 도달하지 않는 영역인, 그림자 렌더링 방법. - 제1항에 있어서,
상기 판단하는 단계는,
상기 방사형의 광을 방출하는 광원을 기준으로 상기 오브젝트에 대한 뎁스 정보를 산출하고, 상기 뎁스 정보에 따라 생성된 제1 뎁스맵에 기초하여 상기 오브젝트에 대한 반그림자(penumbra) 영역을 판단하는, 그림자 렌더링 방법. - 제3항에 있어서,
상기 판단하는 단계는,
비 방사형의 광을 방출하는 타 광원을 기준으로 상기 오브젝트에 대한 뎁스 정보를 산출하고, 상기 뎁스 정보에 따라 생성된 제2 뎁스맵에 기초하여 상기 오브젝트에 대한 본그림자(umbra) 영역을 판단하고, 상기 그림자 영역 중 상기 본그림자 영역을 제외한 나머지 영역을 상기 반그림자 영역으로 판단하는, 그림자 렌더링 방법. - 제4항에 있어서,
상기 렌더링하는 단계는,
상기 판단된 반그림자 영역에 대한 상기 제1 뎁스맵 및 상기 제2 뎁스맵 사이의 뎁스값 차이에 기초하여 상기 반그림자 영역의 명암값을 결정하고, 상기 결정된 명암값에 따라 상기 반그림자 영역에 상기 오브젝트에 대한 반그림자를 렌더링하는, 그림자 렌더링 방법. - 제1항에 있어서,
상기 렌더링하는 단계는,
상기 오브젝트를 그레이 스케일로 변환하여 그림자 오브젝트를 생성하고, 상기 그림자 영역에서 상기 그림자 오브젝트를 상기 그림자 오브젝트 단위로 합성하여 상기 오브젝트에 대한 반그림자를 렌더링하는, 그림자 렌더링 방법. - 제6항에 있어서,
상기 렌더링하는 단계는,
상기 그림자 영역에서 상기 그림자 오브젝트를 상기 그림자 오브젝트 단위로 기 설정된 간격만큼 순차적으로 이동시키면서 합성하여 상기 오브젝트에 대한 반그림자를 렌더링하는, 그림자 렌더링 방법. - 그림자 렌더링 장치에 있어서,
3차원 모델링에 의해 생성된 오브젝트에 대한 그림자 영역이 투사되도록, 상기 오브젝트에 방사형의 광을 방출하는 광 생성부;
상기 그림자 영역의 일부를 상기 오브젝트에 대한 반그림자(penumbra) 영역으로 판단하는 반그림자 영역 판단부; 및
상기 오브젝트에 대한 반그림자를 상기 반그림자 영역에 렌더링하는 렌더링부;를 포함하는 그림자 렌더링 장치. - 제8항에 있어서,
상기 그림자 영역은,
상기 방사형의 광이 상기 오브젝트에 의해 차단되어 도달하지 않는 영역인, 그림자 렌더링 장치. - 제8항에 있어서,
상기 반그림자 영역 판단부는,
상기 방사형의 광을 방출하는 광원을 기준으로 상기 오브젝트에 대한 뎁스 정보를 산출하고, 상기 뎁스 정보에 따라 생성된 제1 뎁스맵에 기초하여 상기 오브젝트에 대한 반그림자(penumbra) 영역을 판단하는, 그림자 렌더링 장치. - 제10항에 있어서,
상기 반그림자 영역 판단부는,
비 방사형의 광을 방출하는 타 광원을 기준으로 상기 오브젝트에 대한 뎁스 정보를 산출하고, 상기 뎁스 정보에 따라 생성된 제2 뎁스맵에 기초하여 상기 오브젝트에 대한 본그림자(umbra) 영역을 판단하고, 상기 그림자 영역 중 상기 본그림자 영역을 제외한 나머지 영역을 상기 반그림자 영역으로 판단하는, 그림자 렌더링 장치. - 제11항에 있어서,
상기 렌더링부는,
상기 판단된 반그림자 영역에 대한 상기 제1 뎁스맵 및 상기 제2 뎁스맵 사이의 뎁스값 차이에 기초하여 상기 반그림자 영역의 명암값을 결정하고, 상기 결정된 명암값에 따라 상기 반그림자 영역에 상기 오브젝트에 대한 반그림자를 렌더링하는, 그림자 렌더링 장치. - 제8항에 있어서,
상기 렌더링부는,
상기 오브젝트를 그레이 스케일로 변환하여 그림자 오브젝트를 생성하고, 상기 그림자 영역에서 상기 그림자 오브젝트를 상기 그림자 오브젝트 단위로 합성하여 상기 오브젝트에 대한 반그림자를 렌더링하는, 그림자 렌더링 장치. - 제13항에 있어서,
상기 렌더링부는,
상기 그림자 영역에서 상기 그림자 오브젝트를 상기 그림자 오브젝트 단위로 기 설정된 간격만큼 순차적으로 이동시키면서 합성하여 상기 오브젝트에 대한 반그림자를 렌더링하는, 그림자 렌더링 장치.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP16157480.1A EP3062293A1 (en) | 2015-02-25 | 2016-02-25 | Shadow rendering apparatus and control method thereof |
US15/053,387 US9786095B2 (en) | 2015-02-25 | 2016-02-25 | Shadow rendering apparatus and control method thereof |
CN201610104054.1A CN105913481B (zh) | 2015-02-25 | 2016-02-25 | 阴影渲染装置及其控制方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562120550P | 2015-02-25 | 2015-02-25 | |
US62/120,550 | 2015-02-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160103926A true KR20160103926A (ko) | 2016-09-02 |
KR102174264B1 KR102174264B1 (ko) | 2020-11-04 |
Family
ID=56943100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160015059A KR102174264B1 (ko) | 2015-02-25 | 2016-02-05 | 그림자 렌더링 방법 및 그림자 렌더링 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102174264B1 (ko) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111803942A (zh) * | 2020-07-20 | 2020-10-23 | 网易(杭州)网络有限公司 | 一种软阴影生成方法、装置、电子设备和存储介质 |
CN112190941A (zh) * | 2020-10-22 | 2021-01-08 | 网易(杭州)网络有限公司 | 一种阴影处理方法和装置 |
CN112750191A (zh) * | 2021-01-12 | 2021-05-04 | 华能新能源股份有限公司 | 一种实时渲染中软阴影的制作方法 |
KR20210079976A (ko) * | 2019-12-20 | 2021-06-30 | 네이버랩스 주식회사 | 증강 현실 기반 내비게이션 환경에서 객체의 그림자를 표시하기 위한 전자 장치 및 그의 동작 방법 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001101445A (ja) * | 1999-10-01 | 2001-04-13 | Tsuneo Ikedo | ソフトシャドーキャスティング回路 |
JP2001113730A (ja) * | 1999-10-21 | 2001-04-24 | Fuji Xerox Co Ltd | インクジェット記録方法、それに使用するインクジェット記録ユニットおよび該ユニットの製造方法 |
KR20020063941A (ko) * | 2001-01-31 | 2002-08-07 | 윤경현 | 컴퓨터를 이용한 그림자를 포함한 실시간 툰 렌더링 방법 |
KR20060070174A (ko) * | 2004-12-20 | 2006-06-23 | 한국전자통신연구원 | 실시간 전역조명 효과를 위한 렌더링 장치 및 그 방법 |
JP2008152744A (ja) * | 2006-12-18 | 2008-07-03 | Kaadeikku Corporation:Kk | 半暗影生成レンダラー |
KR20080061505A (ko) * | 2006-12-28 | 2008-07-03 | 엔에이치엔(주) | 정적 그림자 생성 방법 및 정적 그림자 생성 시스템 |
US8379021B1 (en) * | 2008-01-30 | 2013-02-19 | Adobe Systems Incorporated | System and methods for rendering height-field images with hard and soft shadows |
-
2016
- 2016-02-05 KR KR1020160015059A patent/KR102174264B1/ko active IP Right Grant
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001101445A (ja) * | 1999-10-01 | 2001-04-13 | Tsuneo Ikedo | ソフトシャドーキャスティング回路 |
JP2001113730A (ja) * | 1999-10-21 | 2001-04-24 | Fuji Xerox Co Ltd | インクジェット記録方法、それに使用するインクジェット記録ユニットおよび該ユニットの製造方法 |
KR20020063941A (ko) * | 2001-01-31 | 2002-08-07 | 윤경현 | 컴퓨터를 이용한 그림자를 포함한 실시간 툰 렌더링 방법 |
KR20060070174A (ko) * | 2004-12-20 | 2006-06-23 | 한국전자통신연구원 | 실시간 전역조명 효과를 위한 렌더링 장치 및 그 방법 |
JP2008152744A (ja) * | 2006-12-18 | 2008-07-03 | Kaadeikku Corporation:Kk | 半暗影生成レンダラー |
KR20080061505A (ko) * | 2006-12-28 | 2008-07-03 | 엔에이치엔(주) | 정적 그림자 생성 방법 및 정적 그림자 생성 시스템 |
US8379021B1 (en) * | 2008-01-30 | 2013-02-19 | Adobe Systems Incorporated | System and methods for rendering height-field images with hard and soft shadows |
Non-Patent Citations (2)
Title |
---|
Michael Schwarzler 등, ‘Fast Accurate Soft Shadows with Adaptive Light Source Sampling’, The Eurographics Association, 페이지 1-8, 2012.12.31. * |
Wang Lili et al., ‘Real-Time approximate soft shadow rendering with bidirectional penumbra map’ 2010 International Conference on Educational and Information Technology, (2010.10.25.)* * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210079976A (ko) * | 2019-12-20 | 2021-06-30 | 네이버랩스 주식회사 | 증강 현실 기반 내비게이션 환경에서 객체의 그림자를 표시하기 위한 전자 장치 및 그의 동작 방법 |
CN111803942A (zh) * | 2020-07-20 | 2020-10-23 | 网易(杭州)网络有限公司 | 一种软阴影生成方法、装置、电子设备和存储介质 |
CN112190941A (zh) * | 2020-10-22 | 2021-01-08 | 网易(杭州)网络有限公司 | 一种阴影处理方法和装置 |
CN112750191A (zh) * | 2021-01-12 | 2021-05-04 | 华能新能源股份有限公司 | 一种实时渲染中软阴影的制作方法 |
CN112750191B (zh) * | 2021-01-12 | 2023-11-10 | 华能新能源股份有限公司 | 一种实时渲染中软阴影的制作方法 |
Also Published As
Publication number | Publication date |
---|---|
KR102174264B1 (ko) | 2020-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111508052B (zh) | 三维网格体的渲染方法和装置 | |
CN111968215B (zh) | 一种体积光渲染方法、装置、电子设备及存储介质 | |
US9786095B2 (en) | Shadow rendering apparatus and control method thereof | |
TWI584223B (zh) | 藉由追蹤物件及/或基元識別符的圖形處理增強之方法及系統,圖形處理單元及非暫時性電腦可讀媒體 | |
US10719912B2 (en) | Scaling and feature retention in graphical elements defined based on functions | |
JP5531093B2 (ja) | コンピュータグラフィックスでオブジェクトにシャドウを付ける方法 | |
US10628995B2 (en) | Anti-aliasing of graphical elements defined based on functions | |
US10388063B2 (en) | Variable rate shading based on temporal reprojection | |
US9530242B2 (en) | Point and click lighting for image based lighting surfaces | |
TW201816724A (zh) | 用於高解析度顯示緩衝器之有效構造之方法 | |
KR102174264B1 (ko) | 그림자 렌더링 방법 및 그림자 렌더링 장치 | |
JP6386692B1 (ja) | グラフィックス処理のためのゼロピクセルカリング | |
US9852539B2 (en) | Single pass surface splatting | |
US8854392B2 (en) | Circular scratch shader | |
US9324127B2 (en) | Techniques for conservative rasterization | |
US20160042558A1 (en) | Method and apparatus for processing image | |
JP2019527355A (ja) | デジタル画像における改善された光沢表現のためのコンピュータシステムおよび方法 | |
US9483873B2 (en) | Easy selection threshold | |
CN112541960A (zh) | 三维场景的渲染方法、装置及电子设备 | |
EP4018417A1 (en) | Using bounding volume representations for raytracing dynamic units within a virtual space | |
KR20160006087A (ko) | 시각 효과를 가지는 객체를 디스플레이하는 장치 및 방법 | |
US10216982B2 (en) | Projecting a virtual copy of a remote object | |
US20140333611A1 (en) | Method and device for visualizing contact(s) between objects of a virtual scene | |
WO2023014576A1 (en) | View synthesis system and method using depth map | |
CN114288650A (zh) | 虚拟场景图像处理方法、展示方法、装置、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |