[9xd] introduction to computer graphics
TRANSCRIPT
9XD: Young, Wild Coders
“Introduction to Computer Graphics“
옥찬호Nexon Korea, Microsoft MVP
소개• 옥찬호 (Chris Ohk)
• Nexon Korea Game Programmer
• Microsoft Visual C++ MVP
• 페이스북 그룹 C++ Korea 대표
• IT 전문서 집필 및 번역 다수
• 게임샐러드로 코드한 줄없이게임만들기 (2013)
• 유니티 Shader와 Effect 제작 (2014)
• 2D 게임 프로그래밍 (2014)
• 러스트 핵심 노트 (2017)
• 모던 C++ 관련도서 집필 및 번역중… (2017? 2018?)
시작하기 전에…• 컴퓨터 그래픽스에 대해서 짧고 굵게 설명합니다.
• 컴퓨터에서 그래픽을 나타내기 위한과정을 설명합니다.
• 그래픽스와관련된 수학 공식은 다루지 않습니다. (!)
• 그래픽스와관련된 코드 또한 다루지 않습니다. (!!)
• 직접 구현해보고 싶으시다면, 제 저장소에앞으로 올라올
컴퓨터 그래픽스 튜토리얼을 참고해주세요.
9XD: Young, Wild CodersComputer Graphics
컴퓨터 그래픽스란?
컴퓨터를 사용해 이미지를 생성하는알고리즘 및 시스템의 연구
컴퓨터 그래픽스란?• 이미징(Imaging) : 2D 이미지를 표현
• 모델링(Modeling) : 3D 물체를 표현
• 렌더링(Rendering) : 3D 모델로부터 2D 이미지를 구성
• 애니메이션(Animation) : 시간 경과에따른 변화를 시뮬레이션
9XD: Young, Wild CodersComputer Graphics
렌더링 파이프라인 9XD: Young, Wild CodersComputer Graphics
좌표계 9XD: Young, Wild CodersComputer Graphics
프리미티브 9XD: Young, Wild CodersComputer Graphics
정점 처리 9XD: Young, Wild CodersComputer Graphics
모델 변환 9XD: Young, Wild CodersComputer Graphics
뷰 변환 9XD: Young, Wild CodersComputer Graphics
투영 변환 - 원근법 9XD: Young, Wild CodersComputer Graphics
투영 변환 – 정사영법 9XD: Young, Wild CodersComputer Graphics
뷰포트 변환 9XD: Young, Wild CodersComputer Graphics
은면 제거 9XD: Young, Wild CodersComputer Graphics
래스터화 9XD: Young, Wild CodersComputer Graphics
프래그먼트 처리 9XD: Young, Wild CodersComputer Graphics
Z-버퍼링 9XD: Young, Wild CodersComputer Graphics
알파 블랜딩 9XD: Young, Wild CodersComputer Graphics
라이팅 9XD: Young, Wild CodersComputer Graphics
앰비언트 라이트 9XD: Young, Wild CodersComputer Graphics
디퓨즈 라이트 9XD: Young, Wild CodersComputer Graphics
스페큘러 라이트 9XD: Young, Wild CodersComputer Graphics
정점 및 프래그먼트 셰이더 9XD: Young, Wild CodersComputer Graphics
텍스처 래핑 9XD: Young, Wild CodersComputer Graphics
텍스처 필터링 9XD: Young, Wild CodersComputer Graphics
밉매핑 9XD: Young, Wild CodersComputer Graphics
더블 버퍼링 9XD: Young, Wild CodersComputer Graphics
더블 버퍼링 9XD: Young, Wild CodersComputer Graphics
그래픽스 API 9XD: Young, Wild CodersComputer Graphics
• DirectX
• OpenGL
• OpenGL ES
• WebGL
• Metal
• Vulkan
• …
관련 도서 9XD: Young, Wild CodersComputer Graphics
• Introduction to 3D Game Programming with DirectX 11/12
• Real-Time 3D Rendering with DirectX and HLSL
• OpenGL Programming Guide / OpenGL Superbible
• OpenGL / WebGL / Vulkan Programming Guide
• Graphic Shaders, Ray Tracing from The Ground Up
• Real-Time Rendering, Physically Based Rendering
• Real-Time Shadow, GPU Gems, GPU Pro
• Advanced Global Illumination, 셰이더 프로그래밍 입문
튜토리얼 9XD: Young, Wild CodersComputer Graphics
• http://www.directxtutorial.com/
• http://rastertek.com/
• http://www.opengl-tutorial.org/
• http://leranopengl.org/
• http://ogldev.atspace.co.uk/
• http://www.vulkan-tutorial.com/
• …
감사합니다
http://github.com/utilForever질문환영합니다!