SlideShare a Scribd company logo
SiegeMode! - CAV
NEXT INSTITUTE
게임전공 노석민
https://goo.gl/tCVYuV
android, win32버전 실행파일 다운로드 가능
SiegeMode! - CAV
SiegeMode!라는 개인 프로젝트에서 전투 부분을 따와서 짧게 미니게임으로 만듦
(Cpp Advanced Project Version)
SiegeMode!는 개인적으로 구상하고 있는, 본인에게 어마어마한 부와 명예를 가져
다 줄 갓-게임
초기 구상
SiegeMode! C++ Advanced Project Ver
게임 특징
잘 모르겠다.
여러분이 보기에는?
앞으로 해야 할 작업
SiegeMode!를 완성하기 위해서는
너무 많음
SiegeMode! - CAV 시연버전을 완성하기 위해서는
일단 이번 버전까지가 C++ Advanced 프로젝트의 완성 버전으로 생각
시연버전은 아무래도 사람들이 붙잡고 앉아서 할 만한 재미가 있어야 할테니..
아직 잘 모르겠지만
태블릿 한대로 2명이서 서로 대전할 수 있게 만들면 좀 재미가 있을까…
개발 소요 시간
일수로 치면 딱 40일 소요
시간은…
그냥 대충 감으로 계산하면 100시간쯤 일듯
(리소스 작업 시간 포함. ±30시간정도..?
아무리 생각해도 몇시간 투자했는지 감이 안잡힘)
사용한 기술
사용한 기술 - Cocos2d-x
최대한 엔진의 설계 의도를 지켜가며 시키는대로 해보자! 라는 목표
결과는..
핀트를 잘못 맞춘 듯.
다음에는 이런 식으론 하고 싶지 않다.
사용한 기술 - Cocos2d-x
모바일 버전으로 포팅이 아주 쉬운 점은 아주 만족스러웠다.
수분 정도의 간단한 설정을 통해 안드로이드+PC버전 동시 작업 가능
(thanks to X10)
cocos run -p android 한 줄이면 안드로이드 기기에서 바로 실행 확인 가능
사용한 기술 - Cocos2d-x
glview->setDesignResolutionSize(width,height,policy)
한 줄로 오만가지 모바일 기기에 대한 멀티해상도 지원 고민 x
사용한 기술 - Cocos2d-x
스마트포인터를 직접 구현하거나 std::shared_ptr을 사용하는 대신
Cocos2d-x의 autorelease pool을 그대로 이용함
Cocos2d-x에서 shared_ptr, autorelease pool 모두 사용해보고 느낀 점
- 누군가가 만든 엔진, 프레임웍 베이스 위에서 작업할 때는 해당 베이스에 맞춰 프
로그래밍하는 것이 낫다.
사용한 기술 - Cocos2d-x
코코스 만세
사용한 기술 - JsonCpp
c++에서 Json을 편리하게 파싱하기 위해 사용함
header 한 장 cpp 한 장 추가하는 것으로 사용 가능한 점이 좋았다.
사용도 간단
SiegeMode! C++ Advanced Project Ver
Modern C++(을 사용해보려고 시도하려 시도)
Modern C++(을 사용해보려고 시도하려 시도)
문법은 모던,
사용법은 안모던
Modern C++(을 사용해보려고 시도하려 시도)
closure 패턴
처음 배우던 그 순간 첫눈에 반해버렸고 너무나 있어 보여서 내 코드에 넣고
싶었다. 하지만 게임을 다 만들고 보니 이 함수는 단 한 곳에서 단 한 번만 호
출된다는 슬픈 이야기
Modern C++(을 사용해보려고 시도하려 시도)
이런것도 해봄.
State Machine
Modern C++(을 사용해보려고 시도하려 시도)
auto의 장점에 설득당한 뒤 “모든 변수 선언에 auto를 쓰자!”
프로그램 전체에서(헤더 제외) 3번 빼고 모든 선언에 auto를 사용
장점 : 자료형, 캐스팅 때문에 문제 생긴 적이 한 번도 없었다.
단점 : 아직은 느끼지 못했다.
힘들었던 것 / 해결한 방법
배고픔
맛있는 것 많이 얻어먹고 다님(여러분 감사합니다 사랑합니다)
리소스
재활용
기획이 구현에 끌려 다님
욕심을 버리고 순순히 끌려감
혼자 만드니까 너무 외롭다
진행 상황, 이슈들을 주변에 떠벌리고 다님(죄송합니다..)
어랏 시간이.
어랏 시간이..
다음번 언젠가 모던함이 철철 넘치는 std::가 떡칠된 프로젝트를 해보고 싶다.
제대로 사용하든 못하든 Modern C++는 일단 많이 사용해볼 수록 생각 폭이 넓어지
고 C++ 실력도 늘 것 같다.

More Related Content

PDF
OROCABOY3 제작기
PDF
Prettier 소개
PDF
WebGL 20150428
PDF
강좌 개요
PDF
RPG Maker와 Ruby로 코딩 시작하기 Day 1
PDF
사용자가 업로드한 사진의 마커를 이용해 OpenCV + aruco로 일정한 형태로 만들고 영상으로 만들어 보았다.
PPTX
Swimming Smith 개발기
PDF
대신 귀여운 리눅스를 드리겠습니다
OROCABOY3 제작기
Prettier 소개
WebGL 20150428
강좌 개요
RPG Maker와 Ruby로 코딩 시작하기 Day 1
사용자가 업로드한 사진의 마커를 이용해 OpenCV + aruco로 일정한 형태로 만들고 영상으로 만들어 보았다.
Swimming Smith 개발기
대신 귀여운 리눅스를 드리겠습니다

What's hot (20)

PDF
강좌 02 ARM 펌웨어 개발 환경 개요
PPTX
CCTV영상을 FFmpeg를 사용해서 Time Lapse로 만들어 보았다.
PDF
KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발
PPTX
[140315 박민근] 젠킨스를 이용한 자동빌드 시스템 구축하기(ci)
PDF
샤오미 카메라와 라즈베리파이를 이용해 하늘 사진을 찍어 sns에 올리는 봇을 만들어 보았다.
PDF
NDC 2015 삼시세끼 빌드만들기
PPTX
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
PDF
Visual shock vol.2
PDF
게임 프로그래밍 패턴 8장
PPTX
브라우저 훑어보기
PPTX
Wecanmakeengine
PDF
웹표준과 자동화의 약속된 승리
PPTX
The LESS 기초 : The Dynamic Styleshee Language Basic
PPTX
JS Game Engines
PDF
[PandoraCube] Procedural Map Generation
PPTX
[11 0916] gpg 2.1.22 비디오 게임에서의 웹 카메라 활용(공개)
PPTX
[KASA] Game Engine???
PDF
[15.02.14] 진짜로땜빵하라하시면해야겠지만할시간도없고아무생각도없을때면어쩌면좋지라고소리쳐봤자아무도대답안해줄꺼고어쩔수없이이렇게저렇게어4신...
PPT
Devrookie Study / TA20110730
PDF
Age Of Empires II : Age Of Kings Postmotem
강좌 02 ARM 펌웨어 개발 환경 개요
CCTV영상을 FFmpeg를 사용해서 Time Lapse로 만들어 보았다.
KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발
[140315 박민근] 젠킨스를 이용한 자동빌드 시스템 구축하기(ci)
샤오미 카메라와 라즈베리파이를 이용해 하늘 사진을 찍어 sns에 올리는 봇을 만들어 보았다.
NDC 2015 삼시세끼 빌드만들기
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
Visual shock vol.2
게임 프로그래밍 패턴 8장
브라우저 훑어보기
Wecanmakeengine
웹표준과 자동화의 약속된 승리
The LESS 기초 : The Dynamic Styleshee Language Basic
JS Game Engines
[PandoraCube] Procedural Map Generation
[11 0916] gpg 2.1.22 비디오 게임에서의 웹 카메라 활용(공개)
[KASA] Game Engine???
[15.02.14] 진짜로땜빵하라하시면해야겠지만할시간도없고아무생각도없을때면어쩌면좋지라고소리쳐봤자아무도대답안해줄꺼고어쩔수없이이렇게저렇게어4신...
Devrookie Study / TA20110730
Age Of Empires II : Age Of Kings Postmotem
Ad

Viewers also liked (10)

PPTX
Cocos2dx와 c++11를 이용한 게임 개발
PDF
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
PDF
[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)
PPTX
Cocos2d x v3.0 무엇이 달라졌나? (20140426)
PPTX
정종필 팀장이됐어요(더저용량)
PDF
[NDC2014] 직접 만들어서 즐겨보자 - Cocos2d-x3.0으로 한 시간만에 횡스크롤 슈팅게임 만들기 (함동기)
PPTX
[1214] unity 2 d 살펴보기
PDF
Unity3D로 풀3D web mmorpg 만들기
PPTX
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다 공개용
PPTX
[0119 박민근] 기술 면접시 자주 나오는 문제들(ver 2013)
Cocos2dx와 c++11를 이용한 게임 개발
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)
Cocos2d x v3.0 무엇이 달라졌나? (20140426)
정종필 팀장이됐어요(더저용량)
[NDC2014] 직접 만들어서 즐겨보자 - Cocos2d-x3.0으로 한 시간만에 횡스크롤 슈팅게임 만들기 (함동기)
[1214] unity 2 d 살펴보기
Unity3D로 풀3D web mmorpg 만들기
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다 공개용
[0119 박민근] 기술 면접시 자주 나오는 문제들(ver 2013)
Ad

Similar to SiegeMode! C++ Advanced Project Ver (20)

PDF
온라인 게임 처음부터 끝까지 동적언어로 만들기
PPTX
Ndc2013 정리(upload버전)
PDF
[NDC17] Protocol:hyperspace Diver 개발 포스트모템
PPTX
소셜게임 서버 개발 관점에서 본 Node.js의 장단점과 대안
PDF
모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정
PPTX
C#과 유니티를 통한 게임개발 입문.
PPTX
모바일 해커톤 사전교육 2일차
PPTX
MFC 발견 (1)
PDF
20140514 team blender_v01 (Korean)
PPTX
[1002 조진현]unity3d 소개
PDF
Mlc 2017 문제 보기
PDF
[N3C] 고민정 - 주말코딩으로 취미게임 만들기
PDF
게임프로그래머에게 배우는 C#1권(버전1)
PPTX
호서대학교 - 다양한 오픈소스 활용법 (Colab을 이용하여)
PPTX
OpenJigWare(V02.00.04)
PPTX
Cocos2d x a to z (상)
PPTX
[박민근] 3 d렌더링 옵티마이징_2
PDF
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
PDF
170513 4차 산업 혁명과 미래교육 컴퓨팅 교육의 동향과 해명 @송곡초
PPTX
프론트엔드 개발자
온라인 게임 처음부터 끝까지 동적언어로 만들기
Ndc2013 정리(upload버전)
[NDC17] Protocol:hyperspace Diver 개발 포스트모템
소셜게임 서버 개발 관점에서 본 Node.js의 장단점과 대안
모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정
C#과 유니티를 통한 게임개발 입문.
모바일 해커톤 사전교육 2일차
MFC 발견 (1)
20140514 team blender_v01 (Korean)
[1002 조진현]unity3d 소개
Mlc 2017 문제 보기
[N3C] 고민정 - 주말코딩으로 취미게임 만들기
게임프로그래머에게 배우는 C#1권(버전1)
호서대학교 - 다양한 오픈소스 활용법 (Colab을 이용하여)
OpenJigWare(V02.00.04)
Cocos2d x a to z (상)
[박민근] 3 d렌더링 옵티마이징_2
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
170513 4차 산업 혁명과 미래교육 컴퓨팅 교육의 동향과 해명 @송곡초
프론트엔드 개발자

More from Seokmin No (8)

PPTX
잭블랙이블랙잭을한다 - 최종발표
PDF
잭블랙이블랙잭을한다 - 수업용 발표
PPTX
MsgPack 정리
PPTX
Wtl로 소레미 만들기
PDF
게임제작개론 8
PDF
게임제작개론 9
PDF
게임제작개론 5
PDF
잭블랙이블랙잭을한다 - 최종발표
잭블랙이블랙잭을한다 - 수업용 발표
MsgPack 정리
Wtl로 소레미 만들기
게임제작개론 8
게임제작개론 9
게임제작개론 5

SiegeMode! C++ Advanced Project Ver

  • 1. SiegeMode! - CAV NEXT INSTITUTE 게임전공 노석민
  • 3. SiegeMode! - CAV SiegeMode!라는 개인 프로젝트에서 전투 부분을 따와서 짧게 미니게임으로 만듦 (Cpp Advanced Project Version) SiegeMode!는 개인적으로 구상하고 있는, 본인에게 어마어마한 부와 명예를 가져 다 줄 갓-게임
  • 9. SiegeMode! - CAV 시연버전을 완성하기 위해서는 일단 이번 버전까지가 C++ Advanced 프로젝트의 완성 버전으로 생각 시연버전은 아무래도 사람들이 붙잡고 앉아서 할 만한 재미가 있어야 할테니.. 아직 잘 모르겠지만 태블릿 한대로 2명이서 서로 대전할 수 있게 만들면 좀 재미가 있을까…
  • 10. 개발 소요 시간 일수로 치면 딱 40일 소요 시간은… 그냥 대충 감으로 계산하면 100시간쯤 일듯 (리소스 작업 시간 포함. ±30시간정도..? 아무리 생각해도 몇시간 투자했는지 감이 안잡힘)
  • 12. 사용한 기술 - Cocos2d-x 최대한 엔진의 설계 의도를 지켜가며 시키는대로 해보자! 라는 목표 결과는.. 핀트를 잘못 맞춘 듯. 다음에는 이런 식으론 하고 싶지 않다.
  • 13. 사용한 기술 - Cocos2d-x 모바일 버전으로 포팅이 아주 쉬운 점은 아주 만족스러웠다. 수분 정도의 간단한 설정을 통해 안드로이드+PC버전 동시 작업 가능 (thanks to X10) cocos run -p android 한 줄이면 안드로이드 기기에서 바로 실행 확인 가능
  • 14. 사용한 기술 - Cocos2d-x glview->setDesignResolutionSize(width,height,policy) 한 줄로 오만가지 모바일 기기에 대한 멀티해상도 지원 고민 x
  • 15. 사용한 기술 - Cocos2d-x 스마트포인터를 직접 구현하거나 std::shared_ptr을 사용하는 대신 Cocos2d-x의 autorelease pool을 그대로 이용함 Cocos2d-x에서 shared_ptr, autorelease pool 모두 사용해보고 느낀 점 - 누군가가 만든 엔진, 프레임웍 베이스 위에서 작업할 때는 해당 베이스에 맞춰 프 로그래밍하는 것이 낫다.
  • 16. 사용한 기술 - Cocos2d-x 코코스 만세
  • 17. 사용한 기술 - JsonCpp c++에서 Json을 편리하게 파싱하기 위해 사용함 header 한 장 cpp 한 장 추가하는 것으로 사용 가능한 점이 좋았다. 사용도 간단
  • 19. Modern C++(을 사용해보려고 시도하려 시도)
  • 20. Modern C++(을 사용해보려고 시도하려 시도) 문법은 모던, 사용법은 안모던
  • 21. Modern C++(을 사용해보려고 시도하려 시도) closure 패턴 처음 배우던 그 순간 첫눈에 반해버렸고 너무나 있어 보여서 내 코드에 넣고 싶었다. 하지만 게임을 다 만들고 보니 이 함수는 단 한 곳에서 단 한 번만 호 출된다는 슬픈 이야기
  • 22. Modern C++(을 사용해보려고 시도하려 시도) 이런것도 해봄. State Machine
  • 23. Modern C++(을 사용해보려고 시도하려 시도) auto의 장점에 설득당한 뒤 “모든 변수 선언에 auto를 쓰자!” 프로그램 전체에서(헤더 제외) 3번 빼고 모든 선언에 auto를 사용 장점 : 자료형, 캐스팅 때문에 문제 생긴 적이 한 번도 없었다. 단점 : 아직은 느끼지 못했다.
  • 24. 힘들었던 것 / 해결한 방법
  • 25. 배고픔 맛있는 것 많이 얻어먹고 다님(여러분 감사합니다 사랑합니다)
  • 27. 기획이 구현에 끌려 다님 욕심을 버리고 순순히 끌려감
  • 28. 혼자 만드니까 너무 외롭다 진행 상황, 이슈들을 주변에 떠벌리고 다님(죄송합니다..)
  • 30. 어랏 시간이.. 다음번 언젠가 모던함이 철철 넘치는 std::가 떡칠된 프로젝트를 해보고 싶다. 제대로 사용하든 못하든 Modern C++는 일단 많이 사용해볼 수록 생각 폭이 넓어지 고 C++ 실력도 늘 것 같다.