분류 전체보기235 [Unity] Reflection Probes ■ Reflection Probes 씬의 반사를 캡처하여 금속과 유리 등의 머테리얼을 더 사실적으로 표현하는 데 사용된다. 반사는 대개 많은 리소스를 사용하는 기법인데 최근에는 정확한 반사를 캡처하는 기법인 레이트레이싱(Raytracing)이 떠오르고 있으나, 마찬가지로 리소스 소모가 매우 큰 기법이다. 따라서 하드웨어 사양이 충분하지 않거나 멀티 플랫폼 타겟의 게임이라면 반사 프로브 (Reflection Probe)를 사용하는 것이 좋다. [내용]1. 씬의 반사를 구 모양으로 캡처한다. 그러면 반사 프로브 근처의 오브젝트가 이러한 프로브를 샘플링하여 반사에 활용할 수 있다.2. 라이트 프로브와 마찬가지로 다양한 주요 지점에 여러 개의 프로브를 배치하는 것이 좋다.3. 여러 프로브들의 우선 순위를 im.. 2025. 4. 15. [Unity] Light Probes ■ Light Probes 베이크된 조명과 동적 오브젝트를 연결할 수 있는 기법. 씬에 그룹으로 포함된 작은 구체이고 그 수가 매우 많다. [원리] 라이트 프로브는 조명을 베이크할 때 광원을 캡처하고, 게임이 실행되면 동적 오브젝트가 이러한 프로브를 샘플링하는데 가장 가까운 프로브를 샘플링해 프로브의 조명 데이터를 받아온다. 이를 통해 동적 오브젝트는 베이크 프로세스 중에 베이크된 조명 데이터를 받아올 수 있으며 여기에는 모든 광원 반사와 발광 머티리얼 등이 모두 포함된다. 이렇게 하면 동적 오브젝트가, 미리 베이크되었지만, 매우 사실적인 조명을 받을 수 있어서 돋보이게 된다. [주의할 점] 1. 이러한 프로브는 조명이 어느 정도 변화하면서 흥미로운 모습을 보이는 주요 지점에 배치해야 하므로 수동으로.. 2025. 4. 15. [Unity] Mixed Lighting ■ Mixed Lighting (혼합 조명) 혼합 조명에 여러 가지 유형이 있기 때문에 다소 복잡한 주제이다. 이 유형들을 묶어서 '혼합 조명 모드'라고 부른다.URP는 3가지 혼합 조명 모드 중 2가지인 Baked Indirect와 Subtractive를 지원한다. (2019.3f 기준) [원리] 1. Baked Indirect · 그림자를 드리우는 광원이 있고 모든 것이 실시간이며 이러한 광원의 반사가 베이크 되는 것이다. · 따라서 반사되는 조명인 간접 조명이 라이트맵으로 베이크되며 직접광(Directional Light)이 하는 일은 광원과 그림자를 실시간으로 적용하는 것이다. · 매우 유연한 모드로 낮/밤 주기 등을 구현할 수 있다. 2. Subtractive · 거의 모든 요소를 베이크 한.. 2025. 4. 15. [Unity] Lightmap - UV ■ UVs2D 텍스처를 3D 지오메트리에 매핑하는 방법을 소프트웨어에 설정하는 것. UV는 텍스처의 각 픽셀과 지오메트리, 즉 픽셀과 메시 삼각형 간의 관련성을 만든다. 보통 UV는 DCC 툴에서 만들어 Unity로 임포트한다. 하지만 수동으로 만들기 어렵다면 Mesh 세팅에서 Generate Lightmap UVs를 체크해주면 된다. [옵션]가장 중요한 영역중 하나는 Margin Method이다. 이는 Unity가 만드는 UV 섬 사이에 간격을 남기도록 하는 설정이다. [주의할 점]1.간혹 섬들끼리 충분히 분리되어있지 않으면 두 섬이 픽셀을 공유하여 일부 겹치는 현상이 발생할 수 있다.2. 예시 이미지처럼 선택한 오브젝트의 라이트맵을 확인할 수 있는데 UV 자동 생성 후 겹치는 부분 혹은 디테일이 떨.. 2025. 4. 14. [Unity] Lightmap - Filtering and charts ■ Filtering and charts 필터링이 꺼져있을 경우 아래 예시 이미지와 같이 노이즈가 매우 심한 베이크 결과가 나온다.노이즈는 각 텍셀이 광선을 발산하면서 생기는데 이러한 샘플은 임의의 방향으로 발산되고 밝은 광원에 닿는 경우도 있지만 그렇지 못할 때도 있다. 이러한 무작위성으로 인하여 컬러에 차이가 생기고 노이즈가 발생하는 원리이다. 필터링을 적용할 경우 아래 예시 이미지와 같이 깔끔한 결과를 얻게 된다.[해결 방법 두 가지]1. 샘플 수를 늘려서 노이즈를 아예 없앤다. 하지만 이런 경우 라이트맵 베이킹에 소요되는 시간이 폭증한다.2. 샘플 수를 유지하되, 필터링을 활성화하여 짧은 시간 안에 더 우수한 결과를 만들어낸다. [Filtering 방법 및 추가 설명]1. Lighting 패널에 .. 2025. 4. 14. [Unity] Lightmapping ■ Baked Lighting: GPU Progressive LightmapperBaked Lighting을 사용하려면 아래와 같은 세팅이 필요하다. [세팅]1. 인스펙터에서 조명을 베이크할 모든 개체와 요소를 Static으로 표시해야 한다. 이 설정은, 재사용성을 위해, 프리팹 수준에서 적용할 것을 권장한다.2. 조명이 베이크 되도록 한다. Light 개체의 Mode를 Mixed나 Baked로 변경해준다. · Emissive Material으로 시뮬레이션되는 광원은 라이트맵에 베이크된다. · 하지만, 광원이 매우 얇을 경우 라이트맵의 해상도로 인해 제대로 캡처되지 않을 수 있다. 이는 Area light를 활용해 눈속임으로 빛이 새어 나오는 것 같은 표현을 할 수 있다. 3. Lighting 패널로 이.. 2025. 4. 14. [Unity] URP Asset: Lighting, Shadows ■ URP Asset[Lighting]Shadow resolution이 2048일 때 기준으로 예시를 들어보자면, 1. 태양은 씬에 2048 x 2048 크기의 텍스처를 적용한다. Unity는 이 텍스처의 픽셀마다 지오메트리를 계산하고, 각 지오메트리가 다른 지오메트리에 그림자를 드리우는지 확인한다. 위에 세팅한 텍스처에 그림자를 픽셀당 하나씩 찍고있는 셈인데 이를 섀도우 맵 (Shadow map)이라고 한다. 섀도우 맵의 해상도를 높여 그림자를 선명하게 만들 수 있다.2. 주 광원인 Directional Light에 대한 옵션은 아래와 같고 Additional Lights 옵션을 통해 Spot light 등의 부가적인 광원에 대한 옵션을 세팅해줄 수 있다.3. 해상도는 타겟 플랫폼과 목표 성능에 맞춰 .. 2025. 4. 14. 본체 청소 및 SSD 2종 방열판 부착 ■ 본체 청소 전 (문제 발생 및 성능 & 상태 확인)컴퓨터 구매 후 대략 2년 정도 지났다. 먼지가 너무 많이 쌓이기도 했고 최근에는 D드라이브로 사용하고 있는 Crucial P3 Plus 4TB 제품이 갑자기 인식이 안된 적이 있었다. Fast Boot를 Disabled하여 모든 하드웨어의 정상 작동 검사 후 부팅이 되도록 수정함으로써 정상 동작하는 것을 확인 하였으나, 근본적인 문제를 찾기 위해 CrystalDiskInfo와 CrystalDiskMark를 통해 SSD 성능 및 상태를 확인해봤다.[크리스탈 디스크 마크 벤치 테스트: 청소 및 방열판 부착 전]· SSD 970 EVO Plus : 최대 55도· Crucial P3 Plus 4TB : 최대 75도 원인은 작업 중 높아진 온도 때문인 것 같.. 2025. 4. 10. [URP] Built-in Render Pipeline vs SRP ■ Built-in Render Pipeline (Legacy) 고사양 PC부터 저사양 모바일까지 원하는 만큼 다양한 플랫폼에 효율적으로 배포하기 위한 솔루션으로 개발되었음. 그래픽스 기능 조합을 지원하고 포워드 및 디퍼드 파이프라인과 함께 사용하기도 편리함. 하지만 지원 가능 플랫폼의 숫자가 늘어나면서 빌트인 렌더 파이프라인의 약점이 아래와 같이 점차 파악되어짐.기존 렌더 파이프라인의 단점1. 다량의 코드가 C++로 작성되어 있기 때문에 개발자의 수정 및 파악이 어려움2. Render Flow와 Render Pass가 미리 구성되어 있음3. 렌더링 알고리즘이 하드 코딩 되어있음4. 커스터마이징에 제약이 없어 모든 플랫폼에서 우수한 성능을 구현하기 어려움5. 렌더링 코드에 콜백이 노출되어 파이프라인에서 .. 2025. 4. 9. 이전 1 2 3 4 ··· 27 다음