한 학기동안 개인적으로 공부한 내용을 토대로 수업시간에 발표한 내용입니다.
혹시라도 올바르지 않은 내용이 있다면 코멘트로 알려주시면 감사하겠습니다 :)
this was announced at my presentation class and it's based on study result during a semester.
----------------------------------------------
청강문화산업대학교 게임스쿨
201713058 권필성
Chungkang College of Cultural Industries, Game School
201713058 Kwon Pil Seong AKA. ODESSA
CyberConnect2에서는 2013년부터 DirectX11세대용 멀티플랫폼엔진 개발을 시작하였으며, 제작 시 발생하였던 문제점을 DirectX9와의 차이점을 바탕으로 공유하고자 합니다.
이 세션은 DirectX11의 개발이 처음이거나 관심 있으신 분을 대상으로 합니다. Tessellation 이나 OIT와 같은 최신기술은 다루지 않으므로 주의하시기 바랍니다.
3. 리얼 타임 렌더링이란
• Real-Time (실시간)
• Rendering (렌더링)
• 실시간으로 렌더링하는 것을 말합니다. (당연하게도..)
• 별로 거창한 발표 아닙니다. 정말로.
4. 리얼 타임 렌더링이란
• 일반적인 영상 매체 (영화, 애니메이션) 는 Real-Time Rendering 이 아님
• 게임은 맞음
• 게임은 언제까지 무슨 일이 생길지 모르고. (매 프레임마다 렌더)
• 영상은 언제까지 무슨 일이 생길지 알기 때문. (미리 렌더됨)
16. 인스턴싱
• 다른 장치에서 GPU 로의 자원 이동엔 시간이 오래 걸림
• 중복되는 기하 정보를 가진 객체들은 한 번의 드로우콜에 모아서 그려냄
• 10개가 있다면 5개로 묶어서 2번의 드로우콜을 써서 그릴 수 있다.
• 배칭을 줄이는 것이 핵심. (버텍스 버퍼나 인덱스 버퍼도 포함)
17.
18. 커맨드 버퍼 또는 커맨드 리스트
• 말그대로 명령을 저장하는 공간
• 검은사막 엔진
• 그래픽 커맨드를 커맨드 버퍼에 기록
• 렌더 스레드에서 커맨드 버퍼에 있는 명령을 실행 (DirectX 의 Deferred Context 개념)
• 멀티 스레드 렌더링에서 필수
19. 렌더 스케일링
• 현재 설정된 해상도와 실제 렌더된 이미지 해상도의 비율 차
• 1920 * 1080 (100%) 이라면 1920 * 1080 그대로
• 1920 * 1080 (50%) 이라면 960 * 540 사이즈로 렌더
• 100% 를 초과하는 경우는 업스케일링 (바이큐빅 업샘플링)
• 윈도우 크기를 유지한체 낮은 해상도(좋은 성능)로 플레이하기 위해 이용