SlideShare a Scribd company logo
OpenGL ES
쉽게 입문하기
김 성 완
부산 게임 아카데미
자기 소개
홈페이지: www.g-matrix.pe.kr
블로그: blog.naver.com/kaswan
Twitter ID: idgmatrix
부산에서 3D 게임 프로그래밍을 가르칩니다.
물리학을 전공했고, 늦은 나이에 기상학 공부중.
소프트웨어 렌더러 g-Matrix3d Neo 개발자.
구닥다리 게임 개발자로서 대표작: 예전 미리내
에서 출시한 Full Metal Jacket
OpenGL ES 란?
OpenGL ES
• OpenGL ES (Embedded System)
– 저수준 2D & 3D Graphics API
– 주로 휴대용 기기에 내장하기 위한 OpenGL
– 데스크탑 PC용 OpenGL을 축약한 버전
어떤 기기에?
ICON 2011 Introduction to OpenGL ES
OpenGL ES for iOS
• 그런데 저는 애플빠 입니다.^^
– Apple II (1983)
– Macintosh LC (1993)
– iMac
– MacBook pro
– iPod touch
– iPhone 4
– iPad 2
OpenGL ES for iOS
• OpenGL ES 1.0
• OpenGL ES 1.1
– iPhone, iPhone 3G
• OpenGL ES 2.0
– iPhone 3GS, iPhone 4, iPhone 4S
– iPad, iPad2
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
id Software
OpenGL 탄생 (1992)
ICON 2011 Introduction to OpenGL ES
Architecture Review Board
• 3Dlabs, Compaq, Evans & Sutherland,
Hewlett-Packard, IBM, Intel, Microsoft
and SGI. (2000)
OpenGL ARB
• 1992 Architecture Review Board
• 2003 MS quit
• 2006 pass to Khronos Group
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
산업 공개 표준
OpenGL ES 입문
OpenGL ES 쉽게 입문하기?
OpenGL ES 쉽게 입문하기?
• 여러분 이거 다 새빨간 거짓말이란 거 잘
아시죠?!
그래도 쉬운 건 있다?
• Java 언어는 배우기 쉬운 언어이다!
그래도 쉬운 건 있다?
• Java 언어는 C++보다 배우기 쉬운 언어이
다!
공부는 어떻게?
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
OpenGL First?
OpenGL 은 어디에나
OpenGL 입문
1.0 ~ 4.2
EX CEO of MS
OpenGL vs DirectX
John Carmack 의 선택
Chris Hecker
• An Open Letter to Microsoft: Do the
Right Thing for the 3D Game Industry
OpenGL -> OpenGL ES
• OpenGL 1.3 -> OpenGL ES 1.0
• OpenGL 1.5 -> OpenGL ES 1.1
• OpenGL 2.0 -> OpenGL ES 2.0
OpenGL vs OpenGL ES
• No support for glBegin or glEnd. Instead, use
vertex arrays and vertex buffer objects
• Supported rasterization primitives are points,
lines and triangles. Quads are not supported
• There is no polynomial evaluation stage
• Blocks of fragments can be sent directly to
individual fragment operations
• There is no support for display lists
• Gldouble (X)
• GLU 가 지원되지 않는다
• 인덱스 값이 16비트이다.
ICON 2011 Introduction to OpenGL ES
PowerVR Insider SDK
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
OpenGL ES로 포팅하기
Xcode로 iOS용 개발하기
Xcode 4.2
ICON 2011 Introduction to OpenGL ES
OpenGL ES 2.0
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
WebGL?
• OpenGL ES 2.0 for the Web
Internet Explorer
WebGL을 지원하라고?
못해!
IE 만 있나?
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
WebGL
• WebGL was created initially at Mozilla,
standardized by the Khronos Group, and
supported by Google.
• It's built into Chrome and Firefox right
now, giving those browsers a way to
display hardware-accelerated 3D
graphics useful for games and other
visually rich tasks.
Google Chrome
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
Rendering Pipeline
PIPELINE
Transform
glFrustum
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
Lighting
Phong Lighting Model
Shading Language
GLSL
• OpenGL Shading Language
• Pixar Renderman
• HLSL (DirectX)
• Cg (Nvidia)
Shader Program
ICON 2011 Introduction to OpenGL ES
Software Rendering
• Software Renderer: g-Matrix 3D Neo
부산게임아카데미
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
질문?
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES
ICON 2011 Introduction to OpenGL ES

More Related Content

ICON 2011 Introduction to OpenGL ES