본문으로 건너뛰기
CHOI HONGSU
6 min read

Vertex Normal Workflow

Vertex Normal Workflow

Period
2025.12
Engine
Unity 6 (6000.0.60f1) / URP 17
Platforms
AOS · iOS
Team
TA
My contribution
Vertex Normal Workflow Guide

노말맵을 추가로 사용하지 않고, 메시의 버텍스 노말을 직접 보정하여 의도한 하이라이트를 만드는 최적화 워크플로우입니다.

Before / After

전체비교

Vertex Normal 작업 Before/After ( verts 9,841 / verts 6,743 )

After
Before
BEFOREAFTER

Problem

로비 노말맵 136장 사용 ( 텍스쳐 찾기 툴 )

로비 리소스에서 노말맵이 136장 사용되고 있었고, 표면 디테일보다 하이라이트 보정을 위해 사용되고 있었습니다.

  • 이로 인해 텍스처 메모리 사용량이 증가하고, 표면 보정에도 추가 텍스처 의존도가 생기는 구조였습니다.

1779874939599-1

Architecture

  • 기존 모델은 챔퍼로 생성된 스무스 노말을 사용하고 있었지만, 일부 영역에서 의도와 다르게 하이라이트가 휘어 보이는 문제가 있었습니다.

     

    노멀맵 없이 버텍스 노멀을 직접 보정하여 의도한 노멀 방향을 만드는 메모리 최적화 가이드입니다.

Implementation

  1. 01

    기존 모델링 확인

    노말맵 off / 노말맵 on

    123

    기존 메쉬 확인

    기존메쉬노말

    챔퍼로 생성한 스무스 노말을 사용 중인데, 의도와 달리 휘는 부분을 노말맵으로 보간하여 사용하고 있습니다.

  2. 02

    제작 가이드

    1. 기존에 챔퍼로 스무딩을 생성했다면, 스무딩을 조절할 수 있는 끝 라인만 생성합니다.

    2. Modify → Weighted Normals 클릭

    3. Weighted Normals 상태에서는 엣지 부분에 스무딩이 생성되지만, 평면 쪽이 약간 휘어져 있습니다.

    4. Snap To Largest Face 체크 주변 면보다 넓은 면을 찾아 평면으로 펴줍니다.

    ### 원리 설명

    • 에딧 노말에 들어가 노말 방향을 확인해보면, 각 버텍스마다 노말 방향을 가지는 것을 눈으로 확인할 수 있습니다.
      • 기능적으로는 버텍스 방향 사이를 자동으로 보간해줍니다.

    응용한다면,
    꺾여야 하는 부분에만 버텍스를 배치하면 나머지 방향은 보간을 통해 노말 방향이 자동으로 생성됩니다.

  3. 03

    기존 메쉬로 예시

    교정 전

    1. Weighted Normals 상태에서도 제대로 나오지 않습니다.

    2. 챔퍼 없는 뒷면 제거

    3. 뒷면 제거 후 Weighted Normal을 적용해도 원하는 곡면이 나오지 않습니다.

    4. Edit Normal로 방향을 확인하면, 나눠져야 할 부분의 버텍스 노말 방향이 1개입니다.

    1. Edge Split

    2. 이후 Weighted Normal을 적용하면 버텍스가 분리되어 있어 각각 다른 방향을 가질 수 있습니다.

    3. 평평해야 하는 부분이 스플릿되어 미세하게 틀어졌을 경우

    4. Edit Normal → Face → Selected로 방향 통일

    5. 불필요한 중간 엣지 제거

  4. 04

    주의사항

    1. 실린더나 스피어의 경우 기본적으로 노말 방향이 잘 설정되어 있기 때문에 Weighted Normals나 Largest Face를 적용하면 문제가 발생합니다.

    2. Weighted / Largest Face

    3. 하지만 아래 챔퍼 영역을 더 예쁘게 수정하고 싶다면 노말 에딧으로 수정해야 합니다.

      살짝 위로 올라간 노말 방향을 아래 노말 방향과 수평이 되도록 맞춰줘야 합니다.

    4. 위 부분도 Edit Normal로 수정합니다.

    5. 윗면을 수직으로 올리고 싶다면, 페이스를 잡고 Selected를 클릭하면 수직으로 올라갑니다.

Before / After

비교

 

After
Before
BEFOREAFTER

Before / After

 

 

BEFOREAFTER

Before / After

 

 

After
Before
BEFOREAFTER

Implementation

  1. 01

    결론

    노말맵에 의존하던 보정 방식을 버텍스 노멀/커스텀 노멀 워크플로우로 대체해서
    텍스처 메모리 부담을 줄이고, 원하는 하이라이트를 유지했다.

Tags

Vertex NormalNormal Map