HLOD : 계층형 LOD 시스템

거리가 어느 정도 이상으로 떨어졌을 때, 메쉬를 부분적으로 합쳐버리는 것.

그냥 LOD: 폴리곤 최적화

HLOD: draw call을 줄이는 방식

타일링 형식으로 맵 만들기: 최적화 특화, 그러나 타일형식이라 못생겼음.

해상도 큰 거 가져와서 그냥 깔기: 타일 형식은 안 보이지만 쓸데 없는 곳까지 한 번에 렌더링이 된다. (보이면 무조건 렌더링 해야되니까)

Virtual Texture: 스트리밍 버추얼

프로젝트 세팅 → 버츄얼 텍스쳐 지원 활성화 → 30분걸림

뷰포트 오른쪽마우스 → virtual texture 하시겠습니까? → Yes 하면 바로 적용됨

일부분만 타일로 나누어서 렌더링.

나나이트

무제한으로 쓸 수 있다?

바로 활성화 가능

메쉬 오른쪽 마우스 클릭 → Nanite→ 나나이트 체크

보여지는 클러스터 단위까지 렌더링이 됨

보이는 부분만 스트리밍하면서 메모리에 올림.

낮은 폴리곤 → 나나이트 돌리면 오버헤드 부하 측에서 손해를 보게 됨.

나나이트 준비 비용이 더 높은 로우폴리의 경우 손해

40000, 50000개 이상의 폴리곤을 가진 것들에 사용 추천

라이트 베이킹

베이킹?

루멘 → 라이팅 베이킹 할 필요가 없게 됐다. 실시간으로 빛을 쬐며 계산해줌.

그러나 베이킹이 필요할 때가 있다.

루멘은 어느정도 사양이 필요함.

모바일/VR의 경우 힘듦

그러니 루멘 안 쓰고 베이킹 하는거 추천

루멘을 안 쓰고 None으로 바꿈

거울처럼 비치는 것들.

사진으로 만들어서 그림자 고정.

모빌리티 스태틱 설정

  • Static: cost 가장 낮음, 퀄리티 증가
  • stationary: 색, 강도정도는 수정 가능
    • RGBA 채널 사용해서 맵핑
  • movable

UV를 기반으로 라이팅을 구움.

UV 정리가 안 된 에셋들이 있음.

라이트맵 UV 생성 설정

프로젝트 설정→ 스태틱 라이팅 허용

라이팅 베이킹 어떻게 하는지 확인 필요 (딴짓함)

라이팅 퀄리티 올리는 데는

메쉬 누르기 → 스태틱 메쉬 에디터 창 들어가기→라이트 맵 해상도 → 제곱으로 올리기 2, 4, 8

빌드→라이팅만 빌드

물체는 스테이셔너리 거의 안 쓴다고 보면 됨.

여기 부분만 중심으로 구웠으면 좋겠다

라이트매스 임포턴스 볼륨→퀄리티가 좋아짐

맵 전체에서 어떻게 구울지 설정

world setting → 라이트매스 설정→ 스태틱 라이팅 레벨 스케일

사람 키가 4m씩 된다?

레벨 스케일을 2로 늘리면 촘촘하게 할 필요가 없으니 부담이 줄어든다.

작아지면 오히려 세밀하게 빌드해서 시간 증가

간접광 퀄리티: 최후의 수단

간접광 스무드니스: 높이면 간접광이 옅어짐

루멘

저퀄의 게임을 만들때 라이팅베이크

루멘

라이팅포함→루멘→표면캐시

디테일 트레이싱 : 메시 디스턴스 필드

조금 더 정확하게 그려줌

글로벌 트레이싱: 글로벌 디스턴스 필드

성능 중시 > 디테일

루멘을 쓸 경우 → 벽을 10cm 이상 만들어라

ex) 하나로 병합되어 나온 메쉬 → 루멘은 이렇게 쓰면 XXX

카드 플레이스먼트가 이상하게 적용된다. 쓸 수 X

타일로 그냥 만들면 OK

빛이 지글지글거리는 문제

 

엔진에서 라이트 컬러 변경

지글거리는 부분을 강제로 없애는 방법

post process volume → 파이널 게더 퀄리티 올리면 깔끔해짐

그러나 권장하지 않음. GPU 비용이 많이 듦.

최대한 라이트랑 섞어서 사용하는 것을 권장

화면에 보이는 라이팅을 기준으로 반사광을 그림

Reflection

머티리얼 흰색 → 메탈릭 1, 러프니스 0 : 거울

리플렉션 메서드 Screen Space → 보이는 것만 반사함

skylight는 반사광을 만들어줌.

하늘을 기준으로 만들어주기 때문에

국소적이고 local한 건 반사 X

box reflection capture 액터

쉐이더 복잡도

1 픽셀을 그리기 위해서 GPU가 얼마나 많은 일을 해야하는가? 에 대한 지표

+ Recent posts