대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링...

36
대대대 대대대 대대대대대 대대 대대대대대 대대대 대대 대대대대 대대 대대대 대대 대대대대대 대대대 대대대대대

Upload: sampo-lappalainen

Post on 01-Jul-2015

184 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

대규모 월드의 스트리밍을 위한 소프트웨어 기반의

자동 오클루젼 컬링 시스템삼뽀 라팔라이넨

엄브라 소프트웨어

Page 2: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

• 2007년에 설립• 핀란드 , 헬싱키 본사 :

직원 11명 • 오클루젼 컬링 (Occlusion

Culling) 전문 기술 • 가시성 관련 솔루션 다년간의

경험 보유 • 12+ 타이틀에 엄브라 기술 적용

• 2013년 4분기부터 2014년에

출시 되는 엄브라 적용 타이틀 다수

Page 3: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템
Page 4: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

이전의 방식 • PVS

– 컴퓨팅 시간이 느리다 – STATIC

• 오클루젼 쿼어리 – GPU 싱크 맞추는 문게

• Occluder 혹은 포탈들을 수작업으로 배치해야 한다 . - 수작업 - 실외 환경을 정확하게 모델링 하기가 어렵다 .

Page 5: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템
Page 6: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템
Page 7: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

디자인에서의 바라는 점들 • 시간은 모자라고 • 메모리도 모자라고 • 자동이면 좋겠고 • 컨텐츠도 얼른얼른 제작하면 좋겠고 • 씬 (scene) 사이즈도 마음대로 정할 수

있으면 좋겠고…

Page 8: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

가시성 (Visibility) 란 ?

• 공간에 있는 라인들의 셋트 • 폴리곤 수프 (Polygon Soup) 에서 정확한 가시성을 보여주는 일은

매우 복잡한 과정이다 .

• 보수적인 가시성 방식

• 공간에 대한 논리적 접근 • 위상적인 표현 ( 사물간에 가지는 관계에 대한 상태 )

Page 9: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

작업 과정컨펜트 제작 라인 런타임

보여지는 오브젝트

가시성 데이터

Page 10: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

폴리곤 스프 (Polygon Soup)

Page 11: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

화소 (Voxel)

Page 12: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

Cell & 포탈

Page 13: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

VIEW TREE• 뷰 트리를 화소 (voxel) 에서 추출 해 낸다 .

Page 14: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

TOME 가시성

TOME

Page 15: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

블럭 스트리밍• 하위 지역에 대한

각각의 컴퓨팅STREAMINGBLOCK

STREAMINGBLOCK

STREAMINGBLOCK

STREAMINGBLOCK

STREAMINGBLOCK

Page 16: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

런타임

Page 17: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

스트리밍• 필요한 스트리밍

블럭 선택 STREAMINGBLOCK

STREAMINGBLOCK

STREAMINGBLOCK

STREAMINGBLOCK

Page 18: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

스트리밍• 가시성 TOME 에

적용 TOME

Page 19: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

가시성 (VISIBILITY) 쿼어리• TOME 에서 가져 온 보이는 오브젝트들과 Depth Buffer 를

처리TOME

Page 20: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

가시성 쿼어리1. 뷰 트리에서

시작점이 될 CELL 을 찾는다 .

Page 21: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

가시성 쿼어리2. 포탈 그래프를

래스터화 한다 . (Rasterize)

Page 22: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

뎁스 버퍼 (DEPTH BUFFER)

Page 23: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

테스트 오브젝트3. 오브젝트 가시성

Page 24: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

다이나믹 오클루더

Page 25: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

카메라 앵글 예측

Page 26: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

재생

Page 27: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

데모

Page 28: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

Demo2-3 min?

Page 29: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

Demo2-3 min?

Page 30: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

Demo2-3 min?

Page 31: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

Demo2-3 min?

Page 32: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

결론 , 그리고 미래

Page 33: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

결론• 폴리곤 수프에서 도출하는 공간 개념의 구조 • 화소 컨셉과 자동 포털 생성

Page 34: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

다른 예제들• 쉐도우 캐스터 컬링 (SHADOW CASTER

CULLING)• 개임 로직 • 오디오 오클루젼 (AUDIO OCCLUSION)• 라이팅 (LIGHTING)

Page 35: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

미래에는 ?

• 런타임에서 데이터 생성 • 레벨 분석은 자동으로 • 쉐도우 버전도 컴퓨팅 되며 • 다른 공간 개념에도 사용 가능한

Page 36: 대규모 월드의 스트리밍을 위한 소프트웨어 기반의 자동 오클루젼 컬링 시스템

감사합니다 . 질문 , 없으신가요 ??^

TOME