메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

SDL과 C++를 이용한 크로스 플랫폼 프로그래밍

리얼타임 eBook

집필서

판매중

  • 저자 : 박주항
  • 출간 : 2015-07-28
  • 페이지 : 200 쪽
  • ISBN : 9788968487712
  • 초급 초중급 중급 중고급 고급
0점 (0명)
좋아요 : 36

하나의 소스로 다양한 플랫폼에 대응하자


다양한 플랫폼이 등장하고 있지만 해당 플랫폼에서는 자신만의 고유한 프로그래밍 언어에 특화된 환경만을 제공하고 있다. 여러 가지 여건을 고려해 볼 때, 하나의 프로그래밍 소스로 여러 플랫폼에 대응하는 코드를 개발하는 것은 불가능한 것처럼 보이지만, SDL과 C++를 활용한다면 이 문제를 해결할 수 있다. 여러 플랫폼에서 자신만의 프로그래밍 언어로 소프트웨어를 개발하긴 하지만, 이런 소프트웨어의 개발을 도와주는 커널이나 상위 프레임워크는 근본적으로 C나 C++로 작성되었고 개별 플랫폼들이 C++ 컴파일을 지원하여 C++로 작성된 소스는 여러 플랫폼에서 활용할 수 있기 때문이다. 그리고 SDL은 미디어 처리, 렌더링, 사운드 처리에 관련된 프로그래밍 인터페이스를 여러 플랫폼에서 대응할 수 있게 제공하므로 SDL로 작성된 코드는 새로운 플랫폼으로 이식하더라도 코드를 거의 수정하지 않아도 된다. 즉, SDL과 C++를 이용해 소프트웨어를 개발한다면 저비용으로 타 플랫폼에 이식하는 게 가능하다.


SDL과 C++를 사용하면 여러 플랫폼에서 해당 소스를 재활용할 수 있지만 생산성이란 부분에서 걸림돌로 작용한다. 하지만 C++로 작성된 레거시 코드를 재활용한다거나 게임 프로그래밍처럼 C++와 궁합이 잘 맞는 분야에 사용하는 경우 C++와 SDL의 조합은 탁월한 선택이라고 할 수 있다. 물론 게임의 경우 Unity3D라는 크로스 플랫폼 개발 환경을 제공하는 개발 툴이 있다. Unity3D는 다양한 애셋이 존재하고 막강한 게임 개발 환경을 제공해 주어 그래픽 디자이너나 기획자도 게임을 제작할 수 있게 해 주지만 프로그래머 입장에서는 그만큼 구현 자유도를 빼앗기는 결과를 낳는다. 이로 볼 때 C++와 SDL 조합을 통한 게임 개발은 소프트웨어의 동작 하나하나를 처음부터 끝까지 프로그래머가 제어할 수 있기에 꽤 매력적이라고 할 수 있다.


『SDL과 C++를 이용한 크로스 플랫폼 프로그래밍』에서는 SDL과 C++로 크로스 플랫폼 프로그래밍을 하는 데 필요한 환경 설정을 구성하는 방법과 SDL을 활용하여 레거시 코드를 재활용하는 예제를 살펴본다. 특히 윈도우와 안드로이드 플랫폼용 프로그램을 단일한 소스 코드로 개발하는 방법을 중점적으로 설명한다. 이 과정에서 각 플랫폼에 특화된 내용을 점검하고 이를 해결하는 방법도 설명한다. 또한, SDL로 완성한 게임 프로젝트를 설명함으로써 SDL이 게임 개발과 궁합이 맞는다는 것을 보여준다. 게임 개발뿐만 아니라 SDL을 활용한 멀티미디어 프로그램 개발에 대한 예제도 다루며 WIN32에 특화된 사용법을 설명하고 SDL 확장 모듈에 관해 다룬다.


아직 국내에서는 크로스 플랫폼 시장이 활성화되지 않았지만 언젠가 크로스 플랫폼 프로그래밍이 주목받게 될 것이며 이 책이 큰 도움이 되리라 생각한다. 비록 이 책에서는 WIN32와 안드로이드에 중점을 둔 SDL 활용을 다루지만 이 책을 읽고 나면 프로그램을 윈도우폰이나 아이폰으로 포팅하는 것이 어렵지 않음을 알게 될 것이다.

박주항 저자

박주항

게임업계에서 10년 넘게 일하고 있는 개발자다. 어린 시절 국산 게임이었던 PC게임 ‘폭스레인저’나 ‘그날이 오면 3’ 같은 게임에 감명을 받아 패키지 게임 개발을 꿈꿔왔으나 패키지 게임 시장이 사장된 현실을 받아들이고 온라인 게임업체에 입사하게 되었다. 클라이언트 프로그래머로 입사했지만 여러 가지 회사 사정으로 서버 프로그래머로 전향하게 되었으며 이후로 계속 온라인 게임 서버 프로그래머로 근무해 왔다. JCE(현 조이시티), LINE Plus Corporation에서 근무하였으며 현재 모바일 게임 제작회사인 ㈜노리숲에서 대표이사를 역임하고 있다. 저서로는 온라인 서버 프로그래밍 관련 서적인 『C++로 온라인 게임 서버 구축하기: CGSF를 활용한 게임 서버 제작』 『C++로 온라인 게임 서버 구축하기: CGSF 파헤쳐 보기』 『SDL과 C++를 이용한 크로스 플랫폼 프로그래밍』(이상 한빛미디어, 2015), 『C++ 개발자를 위한 WIN32 오픈소스 라이브러리 100』(한빛미디어, 2014)이 있다.

Part 1 크로스 플랫폼 프로젝트


chapter 1 SDL 
1.1 SDL 2.0 
1.2 SDL과 SDL Extension 
1.3 주요 내용 
1.4 게임 관련 크로스 플랫폼 프레임워크 비교 
1.5 정리 007


chapter 2 안드로이드 NDK 프로그래밍 
2.1 JNI 
2.2 안드로이드 프로젝트 설정 
2.2 샘플 NDK 프로젝트 


chapter 3 크로스 플랫폼 프로젝트 작성 – HelloSDL2 
3.1 메인코드 
3.2 안드로이드 SDL_main 함수 호출 과정 
3.3 정리 


chapter 4 빌드 시스템 구성 
4.1 프로젝트 구성 
4.2 정리 


chapter 5 GUI 라이브러리의 활용 
5.1 Guichan 
5.2 SDLGUI 프로젝트 
5.3 안드로이드 빌드 
5.4 정리 


chapter 6 미디 플레이어의 제작 
6.1 TiMidity++ 
6.2 사운드 폰트 
6.3 코드의 구현 
6.4 안드로이드에서 미디 파일 실행하기 
6.5 정리 


chapter 7 IMS 플레이어의 제작 
7.1 코드 구현 
7.2 메인 스레드와 콜백 스레드와의 동기화 
7.3 iconv 라이브러리 
7.4 TTF 폰트의 사용 
7.5 정리 


Part 2 게임 프로그래밍 


chapter 8 OpenTyrian 
8.1 빌드를 위한 사전 준비 
8.2 소스 분석 
8.3 정리 


chapter 9 Alien Blaster 
9.1 게임 구조 
9.2 입력처리 
9.3 오브젝트 상호작용 처리 및 충돌 관련 처리 
9.4 렌더링 
9.5 정리 


chapter 10 Arkanoid 
10.1 게임 소스 
10.2 코드 분석 
10.3 정리 


chapter 11 Snake Bite 
11.1 SDL 2.0 마이그레이션 
11.2 게임 구조 
11.3 정리 


chapter 12 Super Mario 
12.1 SDL 2.0 마이그레이션 
12.2 안드로이드 포팅 
12.3 정리 


chapter 13 Socoban 
13.1 소스 코드 변경 작업 
13.2 코드 리팩토링 
13.3 안드로이드 포팅 
13.4 정리 


chapter 14 Pacman 
14.1 SDL 2.0 마이그레이션 
14.2 소스 분석 
14.3 안드로이드 포팅 
14.4 정리 


chapter 15 SDL 게임 엔진 
15.1 코난 게임 
15.2 안드로이드 포팅 
15.3 타일드맵의 사용 
15.4 정리 


Part 3 활용하기 


chapter 16 SDL_net 
16.1 채팅 서버 
16.2 채팅 클라이언트 
16.3 정리 


chapter 17 SDL_gfx 
17.1 SDL_gfx 
17.2 샘플 예제 
17.3 SDL_gfx 실전 
17.4 정리 


chapter 18 SDL_ttf 


chapter 19 특정 영역에 SDL 화면 출력하기 
19.1 balor 라이브러리 
19.2 SDL 화면의 출력 
19.3 정리 


chapter 20 SDL + Windows GUI + FFmpeg 
20.1 FFmpeg 
20.2 SDLMPEGPlayer 
20.3 정리 


chapter 21 동기화 


chapter 22 에러 보고 시스템 구축 
22.1 콜스택 
22.2 ACRA 
22.3 정리 


chapter 23 SDL Migration 
23.1 구조체와 enum값 
23.2 변경된 메서드 
23.3 삭제된 메서드 
23.4 Visual Studio 2013 포팅 
23.5 정리 


chapter 24 기타 
24.1 TinyGUI 
24.2 AntTweakBar 
24.3 도스 박스 
24.4 ScummVM 


chapter 25 맺음말 

  • 첫번째 리뷰어가 되어주세요.
  • 결제하기
    • 문화비 소득공제 가능
    • 배송료 : 2,000원배송료란?

    배송료 안내

    • 20,000원 이상 구매시 도서 배송 무료
    • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

    무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

    닫기

    리얼타임 eBook 안내

    PDF 형식으로 제공되며, 다운로드한 eBook은 PDF 포맷을 지원하는 디바이스 또는 프로그램에서 제한없이 열람할 수 있습니다. 또한 eBook 내의 텍스트 검색 및 인쇄도 가능합니다.

    리뷰쓰기

    닫기
    * 상품명 :
    SDL과 C++를 이용한 크로스 플랫폼 프로그래밍
    * 제목 :
    * 별점평가
    * 내용 :

    * 리뷰 작성시 유의사항

    글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

    1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
    2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

    오탈자 등록

    닫기
    * 도서명 :
    SDL과 C++를 이용한 크로스 플랫폼 프로그래밍
    * 구분 :
    * 상품 버전
    종이책 PDF ePub
    * 페이지 :
    * 위치정보 :
    * 내용 :

    도서 인증

    닫기
    도서명*
    SDL과 C++를 이용한 크로스 플랫폼 프로그래밍
    구입처*
    구입일*
    부가기호*
    부가기호 안내

    * 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

    * 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

    * 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

    닫기

    해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
    장바구니로 이동하시겠습니까?

    자료실

    최근 본 상품1