최근 들어 NPR(Non-Photorealistic Rendering) 기법을 이용한 게임들이 많아지고 있다. 그렇지만 게임에서 적용하고 있는 NPR 기법들은 몇 가지 종류로 한정되며, 특히 카툰렌더링에 집중되고 있다. 본 논문에서는 그간 연구가 거의 이루어지지 않았던 게임에 적용 가능한 코믹북 스타일의 NPR 기법을 제안한다. 이를 위해 먼저 코믹북의 비주얼과 셀 애니메이션 비주얼의 차이점을 비교, 분석하여 코믹북 스타일의 비주얼에 대한 표현 요소를 도출한다. 다음으로, 도출된 세 가지 표현 요소, 외곽선 스케치, 톤, 해칭을 효과적으로 구현하기 위한 렌더링 알고리즘들을 제시한다. 마지막으로 이 알고리즘이 적용된 게임을 제작함으로써 게임을 위한 알고리즘으로 적용이 가능한지를 검증한다.
최근 들어 NPR(Non-Photorealistic Rendering) 기법을 이용한 게임들이 많아지고 있다. 그렇지만 게임에서 적용하고 있는 NPR 기법들은 몇 가지 종류로 한정되며, 특히 카툰렌더링에 집중되고 있다. 본 논문에서는 그간 연구가 거의 이루어지지 않았던 게임에 적용 가능한 코믹북 스타일의 NPR 기법을 제안한다. 이를 위해 먼저 코믹북의 비주얼과 셀 애니메이션 비주얼의 차이점을 비교, 분석하여 코믹북 스타일의 비주얼에 대한 표현 요소를 도출한다. 다음으로, 도출된 세 가지 표현 요소, 외곽선 스케치, 톤, 해칭을 효과적으로 구현하기 위한 렌더링 알고리즘들을 제시한다. 마지막으로 이 알고리즘이 적용된 게임을 제작함으로써 게임을 위한 알고리즘으로 적용이 가능한지를 검증한다.
Nowadays, many computer games based on NPR(Non-photorealistic Rendering) techniques have been developed due to their distinctive visual properties. However, only limited methods of NPR techniques have been exploited in producing computer games and amongst them cartoon-style rendering techniques espe...
Nowadays, many computer games based on NPR(Non-photorealistic Rendering) techniques have been developed due to their distinctive visual properties. However, only limited methods of NPR techniques have been exploited in producing computer games and amongst them cartoon-style rendering techniques especially has had the special interest. In the paper, we suggest an effective rendering method of comic-book style that will be applicable to computer game. In order to do, we first characterize the properties of comic-book from comparing two visuals: celluloid animation and comic-book. We then suggest a real-time rendering method of comic-book style represented by outline sketch, tone, and hatching. We finally examine its effectiveness by observing the game developed using the method.
Nowadays, many computer games based on NPR(Non-photorealistic Rendering) techniques have been developed due to their distinctive visual properties. However, only limited methods of NPR techniques have been exploited in producing computer games and amongst them cartoon-style rendering techniques especially has had the special interest. In the paper, we suggest an effective rendering method of comic-book style that will be applicable to computer game. In order to do, we first characterize the properties of comic-book from comparing two visuals: celluloid animation and comic-book. We then suggest a real-time rendering method of comic-book style represented by outline sketch, tone, and hatching. We finally examine its effectiveness by observing the game developed using the method.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
있다. 그러나 NPR 기법을 이용하면 수채화 렌더링과 같이 다양한 분야의 비주얼들을 게임에 접목시킬 수 있는 가능성이 중분하기 때문에, 본 연구에서는 기존에는 없었던 코믹북 스타일의 새로운 렌더링 기법을 제시하고자 한다.
이를 위해 셀 애니메이션과 코믹북에서 비주얼의 표현방식을 비교하여 코믹북 비주얼이 가지는 특징을 도출한다. 도출된 세 가지 특징 인 외곽선, 톤, 해칭을 게임에 적용하기 위해 이를 효과적으로 표현하기 위한 렌더링 알고리즘들을 제시한다. 또한, 본 연구의 렌더링 기법을 적용한 게임을 제작하여 알고리즘의 성능이 게임에 적합한지의 여부와 코믹북 스타일의 비주얼을 효과적으로 표현하는지를 검증하도록 한다.
도출된 세 가지 특징 인 외곽선, 톤, 해칭을 게임에 적용하기 위해 이를 효과적으로 표현하기 위한 렌더링 알고리즘들을 제시한다. 또한, 본 연구의 렌더링 기법을 적용한 게임을 제작하여 알고리즘의 성능이 게임에 적합한지의 여부와 코믹북 스타일의 비주얼을 효과적으로 표현하는지를 검증하도록 한다. 2장에서는 기존의 게 임들에 적용된 NPR 기법에 대해 살펴보고, 3장에서 본 논문이 제안하는 알고리즘에 대한 설명이 이루어진다.
본 연구에서는 코믹북 스타일의 비주얼을 구현하기 위한 효과적인 알고리즘을 제시한다. 이를 위해 셀 애니메이션과 코믹북에서 비주얼의 표현방식을 비교하여 코믹북 비주얼이 가지는 특징을 도출한다.
본 연구에서는 코믹북 스타일의 특징을 분석하여 표현 요소들을 도출하고 이를 게임에 활용할 수 있는 렌더링 알고리즘들을 제시하였다. 그림 22]와 그림 23]에서 확인할 수 있듯이 본 연구의 기법을 적용한 게임은 코믹북 스타일의 비주얼을 표현해 내었으며, 표 3〕의 성능 측정 결과를 통해 GeForce 6800이상의 그래픽 하드웨어에서 실시간으로 구현이 가능하다는 것을 확인할 수 있었다.
이번 연구에서는 알고리즘의 품질과 성능을 입증하기 위하여 코믹북을 컨셉으로 하는 게임을 제작하였다. 게임은 코믹북 속으로 빨려 들어간 주인공이 겪는 모험을 그리고 있으며, 본 논문의 알고리즘을 이용하여 코믹북과 같은 비주얼을 만들어낸다.
[그림 8]의 WR Quake 에서 이와 같은 시도는 있었으나 해칭으로 사용된 선의 방향과 겹쳐짐이 단조롭다는 단점을 가지고 있었다. 이에 본 논문은 코믹북의 특징적인 표현법인 굵기가 불규칙한 외곽선, 해칭, 톤을 이용하여 [그림 9]와 같은 느낌을 낼 수 있는 게임의 렌더링 기법을 제시한다.
제안 방법
게임은 코믹북 속으로 빨려 들어간 주인공이 겪는 모험을 그리고 있으며, 본 논문의 알고리즘을 이용하여 코믹북과 같은 비주얼을 만들어낸다. 게임은 Direct3D를 그래픽 라이브러리로 사용하며, 렌더링 알고리즘의 모든 과정은 버텍스 쉐이더와 픽셀 쉐이더를 이용하여 GPU의 프로그래머블 렌더링 파이프라인(Programmable Rendering Pipeline)에서 실행 된다. 버텍스, 픽셀 쉐이더에 사용되는 코드들은 HLSL(High- Level Shader Language) 문법 에 맞게 작성되었으며, 쉐이 더 모델은 3.
게임은 코믹북 속으로 빨려 들어간 주인공이 겪는 모험을 그리고 있으며, 본 논문의 알고리즘을 이용하여 코믹북과 같은 비주얼을 만들어낸다. 게임은 Direct3D를 그래픽 라이브러리로 사용하며, 렌더링 알고리즘의 모든 과정은 버텍스 쉐이더와 픽셀 쉐이더를 이용하여 GPU의 프로그래머블 렌더링 파이프라인(Programmable Rendering Pipeline)에서 실행 된다.
일반적으로 카툰 렌더링 알고리즘은 음영 텍스쳐와 스텝 함수를 이용하는데, 본 연구에서는 이들 중 스텝 함수를 적용시켜 톤을 표현한다. 다음으로 코믹북과 같은 비주얼을 생성하는데 중요한 역할을 하는 해칭 기법의 경우에는 Praun[25]이 제시한 실시간 해칭(Real-time Hatching) 이라는 NPR 알고리즘을 수정하여 구현한다. 본 연구에서는 Praun의 알고리즘을 게 임 에서 사용할 수 있도록 블렌딩 과정을 단순화시키고 투박한 느낌을 제거하였다.
하지만 이와 같은 외곽선은 깔끔하면서 단정한 느낌을 주기 때문에 코믹북의 표현에는 어울리지 않는다. 따라서 본 알고리즘에서는 이미지 공간상에서 소벨 필터 (Sobel filter)를 이용하여 연필이나 펜으로 그린 듯한 거칠고 두께가 일정하지 않은 외곽선을 생성해낸다.
이는 셀 애니메이션들과 달리 코믹북의 스케치들은 손으로 그린 거친 느낌을 갖고 있기 때문이다. 따라서 여기에서는 렌더링된 이미지를 텍스쳐에 저장한 다음, 소벨 연산으로 외곽선을 검출하고 이를 다시 원본 이미지와 합치는 과정을 통해 결과물을 만들어낸다. 그림 祯에서와 같이 (a)와 (b)가 합쳐져 (c)의 결과 이미지가 생성된다.
게임은 Direct3D를 그래픽 라이브러리로 사용하며, 렌더링 알고리즘의 모든 과정은 버텍스 쉐이더와 픽셀 쉐이더를 이용하여 GPU의 프로그래머블 렌더링 파이프라인(Programmable Rendering Pipeline)에서 실행 된다. 버텍스, 픽셀 쉐이더에 사용되는 코드들은 HLSL(High- Level Shader Language) 문법 에 맞게 작성되었으며, 쉐이 더 모델은 3.0을 이용한다.
본 알고리즘에서는 TAM이라는 텍스쳐들을 이용하여 실시간 해칭을 구현한다. 이 기술은 구현 결과에서 보듯이 게임에 적합한 비주얼을 생성해 내며, 플레이에 불편함이 없을 정도의 실시간 처리를 보장한다.
본 알고리즘에서는 픽셀 쉐이더를 이용하여 픽셀 단위로 광원의 세기를 계산하며, [그림 12]의 스텝 함수를 이용하여 2단계의 쉐이딩 영역을 도출한다. 그 다음 어두운 부분은 원래 텍스쳐 에 s_threshold를 곱하여 명암 단계를 낮춘 색상을 맵핑한다.
본 연구에서 제안하는 렌더링 과정은 3단계를 거쳐 이루어지며, 톤, 해칭, 외곽선의 순서로 표현법이 구현된다. [그림 11]에서 렌더링 프로세스의 다이어그램이 보여진다.
다음으로 코믹북과 같은 비주얼을 생성하는데 중요한 역할을 하는 해칭 기법의 경우에는 Praun[25]이 제시한 실시간 해칭(Real-time Hatching) 이라는 NPR 알고리즘을 수정하여 구현한다. 본 연구에서는 Praun의 알고리즘을 게 임 에서 사용할 수 있도록 블렌딩 과정을 단순화시키고 투박한 느낌을 제거하였다. 외곽선의구현에는 일반적으로 오브젝트 공간을 이용하는 알고리즘과 이미지 공간을 이용하는 알고리즘 두 가지가 사용된다.
실시간 해칭은 픽셀 쉐이더로 구현하는데, 우선 각 픽셀별로 광원의 방향(L)과 픽셀의 노멀(N)을 곱하여 해당 픽셀이 TAM에서 몇 번째 명암 단계에 해당하는지 확인한다. 그리고 해당 단계에 있는 해칭 텍스쳐와 좌우 인접해 있는 텍스쳐들을 블렌딩한 후 그 결과 값을 픽셀에 맵핑한다.
실시간 해칭 알고리즘에서는 TAM을 어떤 형태로 제작하느냐에 따라 다양한 효과를 나타낼 수 있다[27]. 여기에서는 연필의 거친 느낌을 표현하기 위해 [그림 16]과 같이 굵기가 불규칙하면서 거친 느낌의 선들을 이용하여 TAM을 제작하였다.
알고리즘을 제시한다. 이를 위해 셀 애니메이션과 코믹북에서 비주얼의 표현방식을 비교하여 코믹북 비주얼이 가지는 특징을 도출한다. 도출된 세 가지 특징 인 외곽선, 톤, 해칭을 게임에 적용하기 위해 이를 효과적으로 표현하기 위한 렌더링 알고리즘들을 제시한다.
톤 묘사는 기존의 카툰 렌더링(Cartoon rendering), 셀 쉐이딩 (CeHuloid shading)이라는 이름을 갖는 NPR 기법에 의해 구현된다. 일반적으로 카툰 렌더링 알고리즘은 음영 텍스쳐와 스텝 함수를 이용하는데, 본 연구에서는 이들 중 스텝 함수를 적용시켜 톤을 표현한다. 다음으로 코믹북과 같은 비주얼을 생성하는데 중요한 역할을 하는 해칭 기법의 경우에는 Praun[25]이 제시한 실시간 해칭(Real-time Hatching) 이라는 NPR 알고리즘을 수정하여 구현한다.
즉, 카메라의 시선 방향 벡터 (L)와 면의 노멀 벡터(N) 가 이루는 각의 크기, 의 부호가 +에서로 바뀌는 구간에서 외곽선이 발생한다는 점을 이용하여 알고리즘을 구현한다. 오브젝트 공간에서 외곽선을 검출하는 알고리즘은 실행 속도가 빠르다는 장점이 있지만, 선 자체가 동일한 굵기를 가지고 깔끔한 느낌이 들기 때문에 코믹북 같은 거친 느낌에는 어울리지 않는다([그림1研 참조).
대상 데이터
같다. 측정 에 사용된 캐 릭터 의 폴리곤 개수는 약 3400여개이며, fps는 본 알고리즘이 적용되기 전과 후를 모두 측정하여 표기하였다.
데이터처리
본 알고리즘이 게임에 적합한지를 검증하기 위해 성능이 다른 세 대의 컴퓨터 에서 1024 X 768의 해상도로 게임을 실행시킨 뒤 fps(Frame/sec)를 확인하였으며, 그 결과는 [표3] 과 같다. 측정 에 사용된 캐 릭터 의 폴리곤 개수는 약 3400여개이며, fps는 본 알고리즘이 적용되기 전과 후를 모두 측정하여 표기하였다.
이론/모형
반면, Praun[25]이 제시한칭 알고리즘은 실시간으로 처리 할 수 있다는 장점을 가지고 있기 때문에, 본 기법에서는 [25]의 알고리즘을 응용하여 해칭을 구현한다. 실시간 해칭에서는 [그림 16]과 같이 밝기 단계별로 미리 준비 되어 있는 여러 개의 텍스쳐를 이용하는데 , 이를 Tonal Art Map(TAM) 이라고 한다.
성능/효과
제시하였다. 그림 22]와 그림 23]에서 확인할 수 있듯이 본 연구의 기법을 적용한 게임은 코믹북 스타일의 비주얼을 표현해 내었으며, 표 3〕의 성능 측정 결과를 통해 GeForce 6800이상의 그래픽 하드웨어에서 실시간으로 구현이 가능하다는 것을 확인할 수 있었다. 또한 [그림 24] 의스크린 샷을 통해 애니메이션 되는 캐릭터에서 시간적 동일성을 유지하며 코믹북 스타일의 비주얼이 렌더링 되는 것을 검증할 수 있었다.
최종적으로는 검출된 외곽선에 해칭 텍스쳐를 맵핑하여 연필 선의 느낌을 강조하였다 ([그림 20
후속연구
그러나 해칭 효과의 품질을 높이기 위해서는 고해상도의 TAW} 필요하고, 1024 X 1024의 해상도(약 5메가)를 가지는 여섯 개의 텍스쳐가 픽셀 쉐이더의 샘플러(Sampler)로 이동함에 따라, 노트북이나 AGP 인터페이스의 비디오 카드와 같이 메모리 간의 전송 대 역폭이 낮은 환경에서는 프레임 저하의 문제가 발생하기도 한다. 그리고 실시간 처리를 위해 해칭의 방향을 결정하는 디렉션 필드 계산을 생략하고 UV 맵핑으로 이를 대체했는데, 좀 더 높은 품질의 해칭 결과를 얻기 위해서는 계산 속도가 개선된 디렉션 필드 알고리즘의 개발이 필요하다. 이와 같이 해칭 결과를 발전시키기 위해서는 알고리즘의 처리 성능의 개선이 필요하다.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.