언리얼 섭페(Substance Painter) 왜 색깔이 다르지? 개념과 실무 팁 (Gamma, sRGB, ACES)

언리얼 섭페
모델링, 텍스처, 머트리얼만큼 중요한 환경 세팅!

섭페에서는 때깔이 좋았는데 언리얼만 가면 이상해요! 언리얼 섭페 왜다르죠?

열심히 서브스턴스 페인터(Substance 3D Painter, 이하 섭페)에서 텍스처링을 마쳤습니다. 금속 질감은 반짝이고, 가죽은 묵직하니 아주 마음에 들었죠.

그런데 설레는 마음으로 언리얼 엔진 5(UE5)에 임포트하고 셰이더를 연결하는 순간… “어? 내 모델링 왜 이래? 왜 이렇게 뿌옇게 떠? 금속이 왜 플라스틱 같아?”

아마 3D 입문자의 99%는 이 경험을 해보셨을 겁니다. 결론부터 말씀드리면, 여러분의 눈이 이상한 게 아닙니다. 두 프로그램이 ‘빛’과 ‘데이터’를 처리하는 방식이 다르기 때문입니다.

오늘은 이 고질적인 ‘색감 불일치’ 문제를 해결하는 기술적인 원리와, 실무에서 사용하는 세팅 팁과 이론을 아주 상세하게(고봉밥으로!) 떠먹여 드립니다.


1. 조명 환경의 차이: “백화점 거울 vs 우리 집 형광등”

언리얼 섭페 색감차이 가장 먼저 이해해야 할 것은 환경(Environment)입니다.

쉬운 예로, 백화점 옷 가게를 생각해 보세요. 탈의실 거울 앞 조명은 엄청 화려하고 예쁘죠? 거기서 옷을 입으면 다 예뻐 보입니다. 하지만 그 옷을 사서 집에 와 형광등 아래서 입어보면 느낌이 다르죠?

  • Substance Painter: 기본적으로 스튜디오 조명(HDRI) 환경에서 모델을 비춰줍니다. (Panorama, Tomoco Studio 등)
  • Unreal Engine: 여러분이 세팅한 레벨의 조명(Directional Light, Skylight 등)을 받습니다.

[해결책] 언리얼의 색감이 이상한 게 아니라, ‘조명 환경’이 바뀐 것임을 인지해야 합니다. 섭페와 최대한 비슷하게 보고 싶다면, 언리얼에서도 섭페와 똑같은 HDRI(Skylight)를 적용해야 비교가 가능합니다.


2. 기술적인 핵심: 감마(Gamma)와 sRGB의 함정 ⭐(중요)

초보자가 가장 많이 실수하는 부분입니다. 여기서부터 조금 집중해 주세요!

컴퓨터 그래픽에는 ‘리니어(Linear)’와 ‘sRGB(Gamma 2.2)’라는 개념이 있습니다. 어렵게 생각하지 마세요. 딱 이것만 구분하면 됩니다.

리니어 흑백은 부자연스럽다

1) 사람 눈에 보이는 정보 (Color) = sRGB 켜기

  • Base Color (Albedo): 우리 눈에 보이는 ‘빨간색’, ‘파란색’ 같은 색상 정보입니다.
  • 처리 방식: 이건 사람 눈에 맞게 보정된 sRGB 체크박스가 켜져 있어야 합니다.

2) 컴퓨터가 계산하는 정보 (Data) = sRGB 끄기 (Linear)

  • Roughness(거칠기), Metallic(금속성), Ambient Occlusion(그림자), Normal(굴곡): 이것들은 우리 눈에 보이는 ‘색깔’이 아닙니다. 컴퓨터가 계산하기 위한 0과 1 사이의 ‘수학 데이터(수치)’입니다.
  • 비유: 수학 그래프에 뽀샤시한 인스타 필터(sRGB)를 씌우면 데이터가 왜곡되겠죠?
  • 처리 방식: 이 맵들은 반드시 sRGB 체크를 해제(Linear)해야 합니다.
ORM 텍스쳐 더블클릭 이후 우측에 sRGB 해제

🚨 초보자의 흔한 실수 언리얼에 텍스처를 가져온 뒤, Roughness나 Metallic 맵의 sRGB 체크를 끄지 않고 연결합니다. 이렇게 되면 컴퓨터는 “아, 이거 데이터가 아니라 색깔 그림이구나?”라고 착각해서 감마 보정을 해버리고, 결국 수치가 왜곡되어 금속이 플라스틱처럼 보이거나, 너무 번들거리게 됩니다.


3. 채널 패킹 (Channel Packing): ORM 맵의 비밀

실무에서는 최적화를 위해 텍스처를 한 장씩 따로 쓰지 않고 합쳐서 씁니다. 이것을 채널 패킹(Channel Packing)이라고 합니다.

가장 대표적인 방식이 ORM 맵입니다.

  • R (Red) 채널Occlusion (앰비언트 오클루전)
  • G (Green) 채널Roughness (러프니스)
  • B (Blue) 채널Metallic (메탈릭)

이 ORM 맵은 위에서 말한 ‘데이터’ 덩어리입니다. 따라서 언리얼에 가져왔을 때 무조건 sRGB를 꺼야 합니다.


[실전 가이드] 섭페 → 언리얼 완벽 세팅 순서

언리얼 섭페 색감 이론을 알았으니, 이제 실전 세팅을 따라 해 봅시다.

STEP 1. 섭페에서 내보내기 (Export)

  1. File > Export Textures
  2. Output Template: Unreal Engine (Packed)를 선택합니다. (UE5에서도 이걸 씁니다.)
    • 이 프리셋이 자동으로 BaseColor / Normal / ORM(Occlusion, Roughness, Metallic) 3장으로 합쳐줍니다.
  3. Export 버튼 클릭!

STEP 2. 언리얼에서 불러오기 (Import) & 설정 ⭐

  1. 텍스처 3장을 언리얼 콘텐츠 브라우저로 드래그합니다.
  2. Base Color 텍스처: 더블 클릭해서 엽니다. [sRGB] 항목이 체크(✅)되어 있는지 확인합니다. (기본적으로 되어 있습니다.)
  3. Normal 텍스처: 언리얼이 알아서 Normal Map으로 인식하므로 둡니다.
  4. OcclusionRoughnessMetallic (ORM) 텍스처:(중요!) 더블 클릭해서 엽니다. 우측 Details 패널에서 [sRGB] 체크를 해제(❌)합니다.
    • 체크를 끄면 텍스처가 갑자기 어두워지거나 밝아지는데, 그게 정상(Linear 상태)입니다.

STEP 3. 머티리얼 연결하기 (Material Graph)

이제 머티리얼을 만들고 노드를 연결합니다.

  1. Base Color (RGB) → Base Color 핀에 연결
  2. Normal (RGB) → Normal 핀에 연결
  3. ORM 텍스처 (데이터 맵): 여기서 주의! RGB 핀을 통째로 연결하면 안 됩니다.
    • R 핀Ambient Occlusion에 연결
    • G 핀Roughness에 연결
    • B 핀Metallic에 연결
언리얼 섭페

이렇게 연결해야 정확한 PBR(물리 기반 렌더링) 질감이 나옵니다.


추가 꿀팁: “그래도 색이 좀 다른데요?” (Post Process)

위 설정을 완벽하게 했는데도 미묘하게 색이 달라 보인다면, 마지막 범인은 ‘톤 매퍼(Tone Mapper)’입니다.

  • Substance: 뷰포트 설정이 기본적으로 ACES (영화적 색감) 톤 매핑을 사용합니다.
  • Unreal: 기본적으로 Auto Exposure (자동 노출) 기능이 켜져 있어서, 카메라가 밝은 곳에 가면 어두워지고, 어두운 곳에 가면 밝아집니다.

[해결책] 언리얼에서 고정된 밝기를 보고 싶다면?

  1. 레벨에 Post Process Volume을 설치합니다.
  2. Infinite Extent(Unbound)=한국어 무한 규모를 체크합니다. (전체 적용)
  3. Exposure 탭에서 Min BrightnessMax Brightness를 둘 다 1.0으로 고정합니다.
  4. 이렇게 하면 자동 노출이 꺼지고 섭페처럼 고정된 밝기에서 색을 확인할 수 있습니다.
자동보정 정말 편합니다. 그치만 꺼야 좋을 때도 있죠

마치며: 원리를 알면 두렵지 않다

언리얼 섭페 “왜 다르지?” 하고 스트레스 받으셨던 분들, 이제 이유를 아시겠죠?

  1. 조명 환경이 다르다. (백화점 vs 집)
  2. 데이터 맵(Roughness/Metallic)은 sRGB를 꺼야(Linear) 한다.
  3. ORM 채널을 올바른 핀에 꽂아야 한다.

이 3가지만 기억하시면, 섭페에서 공들여 만든 그 느낌 그대로 언리얼 엔진의 광활한 월드에 소환하실 수 있을 겁니다.

혹시 언리얼에서 머트리얼을 생성하고, 인스턴스까지 완벽하게 이해하고 싶다면 아래 제 글을 참고하세요!

👉 [관련 글] 언리얼 머티리얼 텍스처 적용 기초

위로 스크롤