- 어르신 생활건강 증진 광장 조성, 건강한 놀이문화 조성 관련 - … · 김포 국제공항 출발 → 일본 나리타공항 도착 김포 국제공항 출발
[0108 조진현]출발 소프트웨어 렌더러
Transcript of [0108 조진현]출발 소프트웨어 렌더러
출발 ! 소프트웨어 렌더러
조 진현
신입 게임 프로그래머로 취업하기 위해서는 ?
포트폴리오 !!!
그렇다면 , 최고의 포트폴리오의 조건은 ?
소프트웨어 렌더러 제작 경험의 의미 !
3D 에 대한 기본적인 이해
옛날 옛적에…
3D 가속 카드의 발전사
옛날 옛적에는 이랬어요 !! ^^
- 3D 가속 카드는 없었다 .
- 3D API 도 활용할 수 없었다
모든 것을 직접 처리해야 했다 !
프로그래머들의 우상 (?) 이라는 이분은…
옛날 옛적부터 직접 만드셨답니다 !!
중딩 때 , 이 정도 하셨데욤 !
우리의 우상 (?) 인 이분도…
또 하나의 전설 ?
렌더링 종류
- 폴리곤 ( Vertex )
- 곡면 ( Patch )
- 볼륨 ( Voxel )
폴리곤 렌더링 단위들
- 정점 ( Vertex )
- 삼각형- 메시 ( Mesh )
모든 것은 정점에서 시작된다 !!!
왜 정점이 기본 렌더링 단위인가 ?
왜 기본 다각형이 삼각형인가 ?
구현이 쉬우니깐… .
렌더링 파이프라인의 기본 구성 !
장면 그래프 모듈
좌표 변환 모듈
조명 모듈
삼각형 설정 모듈
주사변환 모듈
가장 기본적인 소프트웨어 렌더링을 위해서…
좌표 변환 모듈
삼각형 설정 모듈
주사 변환 모듈
100% 소프트웨어 렌더링은 구현 불가능하다 !
비디오 모드에 접근할 수 없다 !
픽셀을 찍을 수 있는 방법을 강구해야 한다 !
픽셀 찍기가 허락된 API 들…
3D API
Windows API
Direct2D( ? )
DIB Section 으로 접근하기 !
선 그리기
브리젠함 알고리즘
midpoint line 알고리즘
너무 많음…
삼각형을 그려보자 !
클리핑 선
클리핑 삼각형
쉐이딩
비트맵 출력
픽셀 연산하기
Pixel Shader ?
여기까지…
좌표 변환 모듈
삼각형 설정 모듈
주사 변환 모듈
행렬을 만들어서 구현해 보자
WorldTM * ViewTM * ProjTM * View-portTM
투영 행렬
참고 자료
g-matrix 김성완 선생님