일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 언리얼엔진
- Aegis
- attribute
- unity
- 게임 개발
- animation
- os
- 언리얼 엔진
- 유니티
- gameplay effect
- photon fusion2
- Unreal Engine
- MAC
- 게임개발
- Multiplay
- gameplay tag
- widget
- stride
- level design
- C++
- ability task
- CTF
- rpc
- listen server
- Replication
- 보안
- local prediction
- gameplay ability system
- gas
- UI
- Today
- Total
Replicated
[Graphics] 그래픽스 트러블 슈팅 본문
모델이 검게 나오는 경우
1. 조명
- 광원이 없는가
- 광원이 너무 멀거나 약한가
- 모델이 그림자 안에 있는가
2. 머티리얼/쉐이터
- 알베도 색이 검정인가
- 텍스처 누락, 에러
- 노말 맵 강도가 이상한가
- 쉐이더 오류
3. 노말 벡터 방향 확인
- 노말 벡터가 반전되어 있는가 (조명이 반대 방향으로 계산됨)
- 모델이 뒤집혀 있는가
4. 라이트맵, 전역 조명(GI) 관련
- 라이트맵이 깨졌는가
- GI 데이터 손상
- Light Probe 관련
5. 카메라 후처리 영향
6. 기타
- UV 오류
- 카메라 클리핑
- 백페이스 컬링
물체가 깜빡거리는 Z-figting 문제 원인과 해결책
두 개의 표면이 화면 상 거의 같은 깊이에 있을 때 발생, 렌더링 시 GPU가 어떤 면을 그릴지 결정하지 못해 생기는 오류
깊이 버퍼 상에서 서로 싸우듯 렌더링 순서가 뒤섞이는 현상임
원인
- 깊이 값이 거의 같은 두 면
- 카메라 near/far 비율 이상
- 중복 지오메트리 (똑같은 위치에 두 개의 면이 있으면 순서가 랜덤해짐)
해결 방법
- 오브젝트를 살짝 띄우기
- ZBias / Offset: 쉐이더나 머티리얼에서 깊이 편향 설정
- 카메라 near값 너무 작게 하지 않기
- Decal 전용 시스템 사용
- 중복 메시 제거
그래픽스 버그 디버깅 툴
- RenderDoc
- NVIDIA Nsight Graphics
- MS PIX
- Unity Frame Debugger
- Unreal View Modes & Debug Tools
쉐이더와 성능 저하
Vertex Shader: 정점 위치 계산
Fragment Shader: 픽셀 당 색 계산
복잡한 수학 연산, 분기문(GPU는 분기에 약함), 과다한 텍스처 샘플링, 불필요한 연산, 루프, 과한 반투명 오브젝트, ..
GPU 프로파일링 도구로 쉐이더 병목 찾기 가능
유니티: 프레임 디버거, 프로파일러,..
언리얼: Profile GPU, stat scenerendering ..
기타 그래픽스 디버깅 툴
부드러운 애니메이션 구현을 위해 고려할 사항
1.FPS
- 일관된 FPS
- 목표 프레임 설정
2. Delta Time 기반 애니메이션
- 모든 움직임, 회전, 변환은 DeltaTime을 곱해서 프레임 독립적으로 처리
3. 보간, 블렌딩
4. 입력 처리의 지연 최소화
5. CPU, GPU 병목 제거
6. 모션 블러와 같은 후처리
'지식' 카테고리의 다른 글
[OS] Mutex & Semaphore (and Condition Variable) (0) | 2025.05.30 |
---|---|
[Graphics] Forward Rendering과 Deferred Rendering (0) | 2025.05.30 |
[Graphics] 텍스처, 실시간 그림자 처리 (0) | 2025.05.30 |
[Graphics] 그래픽스 성능 최적화 (0) | 2025.05.30 |
[Graphics] 좌표 변환 및 카메라 처리 (0) | 2025.05.30 |