UE5 PCG로 꽃길 아래 돌·잔디 자동 정리하기
블로그현재 글

UE5 PCG로 꽃길 아래 돌·잔디 자동 정리하기

카테고리

요약 — 스플라인으로 꽃길을 그릴 때, 아래 깔린 돌·잔디를 일일이 지우지 마세요. Bound Modifier로 길 영역을 정의하고 Difference로 “지울 포인트”만 깔끔히 제외하면, 길을 수정해도 바닥이 자동 정리됩니다. 건축시각화(ArchViz)에서 정확한 경계 · 빠른 수정 · 재사용성을 동시에 잡는 UE5 PCG 워크플로우를 단계별로 안내합니다.

왜 이 방법이 필요한가

  • 꽃길을 조금만 수정해도, 아래 돌/잔디를 다시 정리해야 한다.
  • 피드백으로 길 너비·곡선이 자주 바뀌어 매번 수작업이 반복된다.
  • 경계가 울퉁불퉁하거나 겹침/튀어나옴 때문에 품질이 떨어진다.

이 글의 목표는 위 문제를 절차적 규칙으로 해결하는 것입니다. 길을 그리거나 수정하면, 바닥 자산이 자동으로 비켜나가도록 만듭니다.

핵심 아이디어 한 줄

Bound Modifier = 영역 정의 · Difference = 지울 포인트 제외

꽃길 스플라인으로 “지울 영역”을 만들고, 돌/잔디 포인트 집합에서 그 영역을 빼기만 하면 끝.

준비물 & 권장 세팅

  • Unreal Engine 5.x (PCG 활성화)
  • 꽃길: 스플라인 기반(블루프린트 또는 레벨 스플라인 컴포넌트)
  • 바닥: 돌 타일/잔디를 PCG Graph로 배치할 준비
  • 식별 태그 권장: 예) 스플라인에 Tag=road

단계별 튜토리얼

1) 꽃길 스플라인에 Bound Modifier 추가

  1. 꽃길 스플라인(또는 관련 블루프린트)에서 Bound Modifier 노드를 추가합니다.
  2. 너비/두께를 의도한 길 폭에 맞게 설정합니다. 사람이 걸을 폭 + 소폭 여유가 자연스럽습니다.
  3. 스플라인이 여러 개인 경우 Multiple 옵션으로 한 번에 처리할 수 있게 설계합니다.

Tip — 시각 디버그를 켜서 Bound가 곡선부까지 안정적으로 감싸는지 즉시 확인하세요.

2) 돌/잔디 PCG에도 Bound Modifier 적용

  1. 돌 타일용 PCG Graph, 잔디용 PCG Graph 각각에 Bound Modifier를 추가합니다.
  2. 해당 자산의 포인트 분포(그리드/산포) 특성에 맞게 Bound 크기를 조정합니다.
  3. 결과적으로 “돌/잔디가 깔릴 수 있는 범위”가 안정적으로 정의되어야, 이후 Difference가 깨끗하게 작동합니다.

3) Difference로 “지울 포인트” 빼기

  1. Get Spline Data 노드로 꽃길 스플라인 포인트(또는 영역)를 가져옵니다. 태그는 예) Tag=road, 여러 스플라인이면 Multiple을 ON.
  2. Difference 노드를 배치합니다.
    • Source — 돌/잔디의 원본 포인트 집합
    • Difference — 꽃길 스플라인이 만든 “지울 영역” 포인트
  3. Difference의 출력을 Static Mesh Spawner로 연결합니다. Binary 모드를 쓰면 포함/제외가 명확합니다.
노드 연결 개념도
/* Source(돌/잔디) */  Create Points / Scatter / Grid/* Difference(꽃길) */ Get Spline Data (Tag=road, Multiple=ON)Source ─┐        ├─> Difference ──> Static Mesh SpawnerDiff  ──┘

결과 확인 & 디버깅 체크리스트

  • 꽃길을 늘이거나 구부려도, 아래 돌/잔디가 자동으로 비켜나는지 확인
  • 경계에서 겹치거나 잘리는 메쉬 없음
  • 스플라인 태그(road) 교체 시 다른 길에도 즉시 재사용 가능
  • 레벨에서 Refresh/Regenerate 시 즉각 재배치되는지

문제가 생긴다면 — 태그 오타/공백, Multiple 설정, Bound 크기(특히 곡선부), Source/Difference 입력 뒤바뀜, 그래프 실행 순서/리프레시를 점검하세요.

품질을 높이는 실전 팁

1) 경계 품질(클린 컷)

  • 꽃길 Bound는 살짝 넓게, 돌/잔디 Bound는 정확하게.
  • 곡률이 큰 구간은 샘플 간격을 촘촘히 해 톱니 현상을 줄입니다.

2) 최적화

  • 큰 지형은 전역 산포 대신 영역 기반(Volume/Tag) 분할로 연산 범위를 줄입니다.
  • 스캐터 밀도는 카메라 거리/LOD 전략과 함께 조절해 성능-품질 균형을 맞춥니다.

3) 아트 디렉션

  • 경계에 미세 잔디를 일부 남기는 룰을 추가하면 현실감 상승.
  • Difference 뒤 Noise/Mask 한 번 더로 ‘너무 기계적인 절단’ 방지.
  • Static Mesh Spawner에 Scale/Rotation 랜덤을 주어 반복 패턴 최소화.

UMG와의 연결: 클라이언트 프레젠테이션

이 PCG 그래프의 길 너비, 곡률, 소재를 UMG 슬라이더·드롭다운으로 노출하면, 클라이언트가 UI로 직접 조정하고 즉시 결과를 확인할 수 있습니다. “길 종류: 화단/자갈/목재 데크”와 같은 옵션 버튼을 제공하면 제안 미팅 중 실시간 변경 → 의사결정 속도를 압도적으로 끌어올릴 수 있습니다.

자주 묻는 질문

Q1. Difference가 일부 구간에서만 동작합니다.

스플라인 태그 일치 여부, Multiple 설정, 곡선부 Bound 여유부터 확인하세요. 필요하면 Difference 앞에 Buffer/Expand 개념의 보정(여유 폭)을 추가하세요.

Q2. 경계가 들쭉날쭉합니다.

포인트 간격을 촘촘하게, Bound를 5~15% 넓혀 보세요. 메쉬의 Collision/Scale 설정도 경계를 밀어낼 수 있습니다.

Q3. 성능이 떨어집니다.

그래프를 구역별로 나누고 필요시에만 리프레시하세요. PCG Volume, LOD/밀도 규칙을 적극 활용하세요.

마무리

“처음 한 번 제대로 세팅하면, 이후는 스플라인만 그리면 끝.” 피드백으로 길이 바뀌어도 재작업이 아니라 재생성이며, 컨셉 변경에도 규칙만 바꾸면 전역으로 반영됩니다. 복잡한 수작업 대신 테크니컬 아티스트 방식으로 시간과 품질을 동시에 잡아보세요.

더 많은 예제와 무료 튜토리얼은 유튜브 채널 샘플에서 확인하세요. 포트폴리오·의뢰는 unrealenv.com.

더 많은 언리얼 엔진 튜토리얼을 원하시나요?

우리 유튜브 채널에서 무료로 제공되는 언리얼 엔진 배경 제작 강의를 확인해보세요. 실무에서 바로 활용할 수 있는 실전 노하우와 최신 기법들을 영상으로 만나보실 수 있습니다.

🎓체계적인 학습 과정
🆓완전 무료 강의
실무 적용 가능한 기법
유튜브 채널 구독하기