SlideShare a Scribd company logo
1 of 24
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
컬링
CULLING
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
목차
컬링
• 컬링이란?
• 백페이스 컬링
• 절두체 컬링
• 쿼드트리 → 터레인 → LOD → 크랙 (간단히…)
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
컬링(CULLING)이란?
컬링
‘추려내다’ 라는 뜻
속도 향상을 위해 최적화적 이득을 취하는 기법
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
백-페이스 컬링
컬링
그래픽스 파이프라인
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
백-페이스 컬링
컬링
카메라를 기준으로 뒷 면에 해당되는 삼각형을 추려내는 컬링 기법
(카메라를 바라보고 있나?)
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
백-페이스 컬링
컬링
카메라를 기준으로 뒷 면에 해당되는 삼각형을 추려내 이후의 과정을 하지 않는 것
CullMode를 설정
CCW : 반시계 방향을 뒷면으로 인식
CW : 시계 방향을 뒷면으로 인식
NONE : CullMode를 사용하지 않음
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체(FRUSTUM)란?
컬링
‘절단하는 하나나 두 평행면 사이의 부분’
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링은?
컬링
카메라를 기준으로 카메라의 시야범위에 포함되지 않는 것들에 대해 드로우 콜 자체를 생략하는 것
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링
컬링
문제1. 절두체 컬링은 어느 시점에 결정될까?
카메라를 기준으로 잡아야 겠고, 렌더는 안 한다.
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링
컬링
• Update : 각 오브젝트들의 Transform 및 카메라 Transform 설정
• LateUpdate : 카메라를 기준으로 보이는 오브젝트들을 RenderList에 포함
(언리얼 : TickGroup)
• Rendering : RenderList에 포함된 오브젝트들을 렌더링
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링
컬링
문제2. 절두체는 뭘 사용할까?
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링
컬링
1. 6개의 평면 (절두체)
2. 투영, 뷰, 대상 오브젝트의 월드 행렬
3. 평면 방정식을 생각할 수 있는 두뇌
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링
컬링
1. 투영 공간상에서는 (-1, 1, 0) ~ (1, -1, 1) 로 직육면체이다!
2. 절두체를 구성할 8개의 각 점에 대해 투영 역행렬 변환 → 뷰 역행렬 변환 → 월드 역행렬 변환
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링
컬링
직육면체는 12개의 삼각형으로 돼있다. 6개의 면만 사용
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링
컬링
메시의 점과 6개의 평면을 평면의 방정식을 이용해서 검사한다.
ax + by + cz + d = 0
평면 상에 있다.
ax + by + cz + d < 0
평면보다 아래에 있다.
ax + by + cz + d > 0
평면보다 위에 있다.
ax + by + cz + d = 0
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링
컬링
ax + by + cz + d < 0 : 평면 안에 있어야 한다.
a * px + b * py + c * pz + d < 0
P( px, py, pz ) : 대상 메시 중 한 점의 로컬 좌표
a, b, c : 평면의 법선 벡터의 각 x, y, z 값
d : 평면의 원점과의 거리
1. 외적을 통해 평면의 법선 벡터 (a, b, c) 구하기
2. 원점->평면 한 점 벡터와 평면의 법선 벡터를 내적해서
평면과 원점과의 거리 (d) 구하기
3. 평면 방정식이 0보다 작으면 평면 안에 있음
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링
컬링
문제점?
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링 – 경계구 판정
컬링
1. 해당 오브젝트를 감싸는 경계구를 정의
2. 해당 경계구의 중심점과 반지름으로 경계구가 절두체에 포함되는지 판단
a * px + b * py + c * pz + d < r
장점 : 연산이 빠름
단점 : 정확성 떨어짐
r
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
절두체 컬링 – 경계구 판정
컬링
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
쿼드트리란?
컬링
영역을 4등분 해서 대상 오브젝트를 찾아내는 기법
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
터레인이란?
컬링
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
쿼드트리란?
컬링
• 영역을 4등분 하는 컬링 기법
• 쿼드트리를 이용하려면 4개씩 나눠야 하므로 크기가 홀수여야 한다.
• 일반적으로 (2^n + 1) 을 공식으로 이용한다.
최상위 노드 1단계 노드 2단계 노드
1 2 3 4 5
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
LOD란?
컬링
먼 곳에 있는 오브젝트의 디테일을 감소시켜 렌더링 하는 기법
조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회]
크랙 현상
컬링
해결

More Related Content

Featured

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Culling

  • 1. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 컬링 CULLING
  • 2. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 목차 컬링 • 컬링이란? • 백페이스 컬링 • 절두체 컬링 • 쿼드트리 → 터레인 → LOD → 크랙 (간단히…)
  • 3. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 컬링(CULLING)이란? 컬링 ‘추려내다’ 라는 뜻 속도 향상을 위해 최적화적 이득을 취하는 기법
  • 4. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 백-페이스 컬링 컬링 그래픽스 파이프라인
  • 5. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 백-페이스 컬링 컬링 카메라를 기준으로 뒷 면에 해당되는 삼각형을 추려내는 컬링 기법 (카메라를 바라보고 있나?)
  • 6. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 백-페이스 컬링 컬링 카메라를 기준으로 뒷 면에 해당되는 삼각형을 추려내 이후의 과정을 하지 않는 것 CullMode를 설정 CCW : 반시계 방향을 뒷면으로 인식 CW : 시계 방향을 뒷면으로 인식 NONE : CullMode를 사용하지 않음
  • 7. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체(FRUSTUM)란? 컬링 ‘절단하는 하나나 두 평행면 사이의 부분’
  • 8. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링은? 컬링 카메라를 기준으로 카메라의 시야범위에 포함되지 않는 것들에 대해 드로우 콜 자체를 생략하는 것
  • 9. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 컬링 문제1. 절두체 컬링은 어느 시점에 결정될까? 카메라를 기준으로 잡아야 겠고, 렌더는 안 한다.
  • 10. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 컬링 • Update : 각 오브젝트들의 Transform 및 카메라 Transform 설정 • LateUpdate : 카메라를 기준으로 보이는 오브젝트들을 RenderList에 포함 (언리얼 : TickGroup) • Rendering : RenderList에 포함된 오브젝트들을 렌더링
  • 11. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 컬링 문제2. 절두체는 뭘 사용할까?
  • 12. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 컬링 1. 6개의 평면 (절두체) 2. 투영, 뷰, 대상 오브젝트의 월드 행렬 3. 평면 방정식을 생각할 수 있는 두뇌
  • 13. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 컬링 1. 투영 공간상에서는 (-1, 1, 0) ~ (1, -1, 1) 로 직육면체이다! 2. 절두체를 구성할 8개의 각 점에 대해 투영 역행렬 변환 → 뷰 역행렬 변환 → 월드 역행렬 변환
  • 14. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 컬링 직육면체는 12개의 삼각형으로 돼있다. 6개의 면만 사용
  • 15. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 컬링 메시의 점과 6개의 평면을 평면의 방정식을 이용해서 검사한다. ax + by + cz + d = 0 평면 상에 있다. ax + by + cz + d < 0 평면보다 아래에 있다. ax + by + cz + d > 0 평면보다 위에 있다. ax + by + cz + d = 0
  • 16. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 컬링 ax + by + cz + d < 0 : 평면 안에 있어야 한다. a * px + b * py + c * pz + d < 0 P( px, py, pz ) : 대상 메시 중 한 점의 로컬 좌표 a, b, c : 평면의 법선 벡터의 각 x, y, z 값 d : 평면의 원점과의 거리 1. 외적을 통해 평면의 법선 벡터 (a, b, c) 구하기 2. 원점->평면 한 점 벡터와 평면의 법선 벡터를 내적해서 평면과 원점과의 거리 (d) 구하기 3. 평면 방정식이 0보다 작으면 평면 안에 있음
  • 17. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 컬링 문제점?
  • 18. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 – 경계구 판정 컬링 1. 해당 오브젝트를 감싸는 경계구를 정의 2. 해당 경계구의 중심점과 반지름으로 경계구가 절두체에 포함되는지 판단 a * px + b * py + c * pz + d < r 장점 : 연산이 빠름 단점 : 정확성 떨어짐 r
  • 19. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 절두체 컬링 – 경계구 판정 컬링
  • 20. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 쿼드트리란? 컬링 영역을 4등분 해서 대상 오브젝트를 찾아내는 기법
  • 21. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 터레인이란? 컬링
  • 22. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 쿼드트리란? 컬링 • 영역을 4등분 하는 컬링 기법 • 쿼드트리를 이용하려면 4개씩 나눠야 하므로 크기가 홀수여야 한다. • 일반적으로 (2^n + 1) 을 공식으로 이용한다. 최상위 노드 1단계 노드 2단계 노드 1 2 3 4 5
  • 23. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] LOD란? 컬링 먼 곳에 있는 오브젝트의 디테일을 감소시켜 렌더링 하는 기법
  • 24. 조 광 민 (팡민) | rhkdals1206@naver.com | 데브루키 스터디[551회] / [언리얼 56회] 크랙 현상 컬링 해결