Upload
-
View
663
Download
4
Embed Size (px)
DESCRIPTION
Citation preview
3. 라이브러리윈도우 게임 프로그래밍
박민근
라이브러리
재사용 가능하도록 만들어 놓은 코드 모듈 .
정적 라이브러리 (Static Library) 와
동적 라이브러리 (Dynamic Library) 가
있다 . Ex. Fmod, DirectX, 여러 라이브러리형 게임 엔진등 ..
Static Library
실행파일(exe)
StaticLibrary
(lib)
실행파일2(exe)
StaticLibrary
(lib)
실행파일3(exe)
StaticLibrary
(lib)
실행파일4(exe)
StaticLibrary
(lib)
실행파일5(exe)
StaticLibrary
(lib)
라이브러리가 exe 파일안에 포함된다 . (Lib)
동일한 라이브러리를 쓰는 프로그램들이 동시에 실행되면 메모리를 많이 차지 한다
Dynamic Library
실행파일(exe)
DynamicLibrary(DLL)
라이브러리가 exe 파일밖에 존재 한다 . (DLL)
동일한 라이브러리를 쓰는 프로그램들이 하나의 DLL 을 공유 한다 .
실행파일2(exe)
실행파일3(exe)
실행파일4(exe)
실행파일5(exe)
http://stupid86.tistory.com/entry/%EC%A0%95%EC%A0%81-%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC%EC%99%80-%EB%8F%99%EC%A0%81-%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC%EC%9D%98-%EB%B9%84%EA%B5%90lib%EC%99%80-dll%EC%9D%98-%EC%9E%A5%EB%8B%A8%EC%A0%90
정적 라이브러리 , 동적 라이브러리 비교
Static Library 제작하기
Static Library 제작
Static Library 제작
Static Library 제작
Static Library 제작 ( 빌드 ) 완료 !!
Static Library 사용 하기
헤더 파일 있는 폴더 추가하기
Static Library 사용 하기
어디서 많이 본 에러 발생 !!함수를 못 찾는다
코드가 없다
Lib 가 없다 !
Static Library 포함 시키기
프로젝트 종속성 = 빌드 순서
라이브러리부터 빌드 한다 .
Dynamic Library 제작하기
DLL 프로젝트 생성
꼭 체크 할것
친절한 DLL 샘플이 포함된다
자동으로 정의되어 있음
DLL 클래스 제작하기
DLL 제작 ( 빌드 ) 하기
DLL 사용 하기
헤더 파일 있는 폴더 추가하기
Lib 추가 하기
DLL 사용 하기
DLL 을 삭제 하면 ?
어디서 많이 보던 에러가 !!
Lib 대신 , 프로젝트 참조로 추가하기
DLL 의 lib 를 제거한다
당근 에러 발생 !!
Lib 대신 , 프로젝트 참조로 추가하기
빌드 성공 !!
도전 과제
• 제작한 DirectX 샘플을 라이브러리화 시켜보자 .
• 외부 프로젝트에서는 아래처럼 호출하기만 해도 되도록
읽을 거리
게임 프로그래밍의 정석 p.535 ~ 545
“ 팁 : 라이브러리를 게임에서 분리한다”