유니티 Render Texture에 대해

Render Texture을 만들면 Dimension, Size, Anti-aliasing, Enable Compatible Format, Color Format, Depth Stencil Format, Enable Mip Maps, Dynamic Scaling, Wrap Mode, Filter Mode가 존재하는 것을 확인할 수 있습니다.

이것들에 대해 간단하게 알아보고자 합니다.

Render Texture


Dimension

2D : 가장 간단한 렌더 텍스처 유형은 2D 텍스처입니다. 평면 그림이나 사진과 매우 유사합니다. 픽셀 단위로 측정된 너비와 높이가 있습니다

2D Array : 

Cube : 렌더 텍스처가 큐브맵입니다. 큐브맵 렌더 텍스처는 동적 큐브맵 리플렉션에 가장 자주 사용됩니다

3D : 렌더 텍스처가 3D입니다.


Anti-aliasing

 


Enable Compatible & Color Format

게임과 그래픽 카드마다 이미지를 저장하고 관리하기 위해 다양한 방법을 사용합니다. 'Enable Compatible'은 유니티의 렌더 텍스처가 플레이어 컴퓨터의 그래픽 카드와 잘 작동할 수 있도록 보장하는 역할을 합니다. 

 

Color Format은 텍스처에서 색상을 표현하는 방법에 관한 것입니다.


Depth Stencil Format

Render Texture의 각 부분이 얼마나 '깊이'가 있는지 기록합니다. 이 정보를 통해 멀리 있는 사물을 흐릿하게 보이게 하거나 사물이 서로의 위치를 정확하게 보여주는 그림자를 드리우는 등 인상적인 효과를 만들 수 있습니다.


Enable Mip Maps & Dynamic Scaling

Enable Mip Maps : 렌더 텍스처가 밉맵을 생성하게 하려면 토글을 선택합니다.

Dynamic Scaling : 다이내믹 해상도 스케일링을 통해 렌더 텍스처의 크기를 조절하려면 토글을 선택합니다. 이 옵션을 활성화하지 않으면 렌더 텍스처가 다이내믹 해상도 설정과 상관없이 같은 크기로 유지됩니다.


Wrap Mode

 

Repeat 개체 전체에 텍스처를 반복하거나 타일링하여 매끄러운 패턴을 만듭니다. 이 모드는 벽돌 벽이나 타일 바닥을 만들 때와 같이 해상도를 높이지 않고 작은 텍스처로 넓은 표면을 덮고 싶을 때 유용합니다. 텍스처는 U축과 V축을 따라 반복되어 오브젝트의 전체 표면을 텍스처의 패턴으로 효과적으로 채웁니다.
Clamp 텍스처의 가장자리를 늘려 오브젝트의 나머지 영역을 덮습니다. 전체 오브젝트에 단일 이미지를 매핑할 때 텍스처가 반복되거나 타일링 아티팩트가 생성되는 것을 방지하는 데 유용합니다. 고유한 캐릭터의 피부나 광고판 이미지와 같이 텍스처가 오브젝트의 표면에 정확히 맞아야 할 때 자주 사용됩니다.
Mirror  'Repeat' 모드와 매우 유사하게 작동하지만 단순히 텍스처를 반복하는 대신 반복할 때마다 텍스처를 미러링합니다. 텍스처는 U축과 V축의 모든 정수 교차점에서 자체적으로 뒤집히거나 미러링됩니다.
Mirror Once 텍스처가 한 번 미러링된 후 미러링된 텍스처의 가장자리가 오브젝트의 가장자리로 고정되고 늘어납니다. 이렇게 하면 단일 미러링 패턴에 이어 텍스처의 가장자리가 늘어나므로 단일 반사가 필요한 경우 이 모드를 사용하는 것이 이상적입니다.
Per-axis 텍스처의 U축(가로 방향)과 V축(세로 방향)에 대해 서로 다른 Wrap 모드를 설정할 수 있습니다. 이 기능은 반사 프로브를 위한 위도-경도 환경 맵과 같은 특정 종류의 텍스처로 작업할 때 특히 유용합니다.

Filter Mode

Point 포인트 필터링은 가장 간단하고 빠른 텍스처 필터링 방법입니다. 텍스처의 크기를 조정할 때 화면 픽셀의 픽셀 중심에 가장 가까운 픽셀(텍스처 픽셀)의 색상을 표시합니다. 그 결과 픽셀이 뭉툭하고 픽셀화되어 보이므로 복고풍의 픽셀 아트 미학을 가진 게임에 이상적입니다.

포인트 필터링의 한 가지 단점은 주변의 다른 픽셀을 고려하지 않기 때문에 특히 비스듬한 각도에서 보거나 축소된 텍스처의 경우 상당한 양의 에일리어싱이나 들쭉날쭉함이 발생할 수 있다는 것입니다.
Bilinear 이중선형 필터링은 포인트 필터링보다 한 단계 업그레이드된 필터링입니다. 가장 가까운 텍셀만 사용하는 대신, 이중선형 필터링은 가장 가까운 2x2 인접 텍셀을 고려합니다. 이 네 개의 텍셀의 가중 평균을 사용하여 최종 색상을 결정합니다.

이 방법은 포인트 필터링에서 발생하는 블록 모양을 줄이고 더 부드럽고 혼합된 텍스처를 생성합니다. 그러나 텍스처의 크기를 크게 확대하거나 축소하면 텍스처가 흐릿하게 보일 수 있습니다.
Trilinear 삼선형 필터링은 가장 가까운 두 밉맵 레벨에 대해 삼선형 필터링을 수행한 다음 두 결과 사이에 선형 보간을 수행합니다. 이 방법은 서로 다른 디테일 레벨 간에 매우 부드러운 전환을 제공하여 2선형 필터링에서 볼 수 있는 갑작스러운 변화를 제거합니다.

그러나 삼선형 필터링은 이중선형 또는 포인트 필터링보다 더 많은 계산 리소스를 필요로 하므로 특히 성능이 낮은 하드웨어에서는 성능에 영향을 줄 수 있습니다.

 


Render Texture을 이용한 거울 만들기

2023.02.12 - [Unity/Study] - 유니티 MIRROR(거울) 구현하는 방법

 

유니티 MIRROR(거울) 구현하는 방법

빈오브젝트를 하나 생성해준다(최상위 부모 객체가 될 것이다) 빈오브젝트 자식으로 quad를 하나 생성해준다(이때 Quad가 아닌 본인이 직접 모델링한 Model이여도 상관없다) 스케일을 9: 16으로 설정

wlsdn629.tistory.com


Render Texture을 활용한 화면 캡쳐하기

2023.07.18 - [Unity/Study] - 유니티 RenderTexture를 이용한 화면 캡쳐하기

 

유니티 RenderTexture를 이용한 화면 캡쳐하기

RenderTexture란?렌더링 작업에 사용되는 특수 유형의 텍스처입니다. 장면, 개체 또는 후처리 효과를 화면 밖에서 렌더링할 수 있습니다. 다양한 영역을 모니터링할 수 있는 보안 카메라 시스템을

wlsdn629.tistory.com