웬 엔진 개발?좋고싼 상용/공개 엔진 많은데?하고 싶은 걸 하려면 뜯어 고칠 게 많음뜯어 고치다 보면 시간이 많이 소요그 시간에 차라리 만들걸…내 맘대로 쉽게 이것 저것 해보고 싶다이직할 때마다 엔진 새로 배우기 싫다엔진 공부 상용엔진을 쓰더라도 도움됨쉽지 않아 도전의식 생김COOL해 보임!5카사 공개 세미나
6.
왜 하필 취미로엔진 개발?원래 목적은 게임 개발이었음엔진부터 시작하다가엔진 개발 자체가 즐거움도전할 거리가 많고다양한 경험을 할 수 있고남들 다 하는 건 아니고별다른 취미가 따로 없어서6카사 공개 세미나
7.
목표가볍고, 쉽고, 빠른경량급 엔진직관적인 설계쉬운 인터페이스꼭 필요한 기능만구체적이고 정량적인 목표언제까지완성?팔게 된다면 목표 매출액?성능목표? 퀄리티 목표? 주요 장르는?미정!!!7카사 공개 세미나
8.
참여 인원아직까지는 1인개발단, 리소스는 지인들의 도움다른 사람의 간섭이 없음마음대로 엎을 수 있음나중에는 함께 개발할 예정8카사 공개 세미나
9.
개발 시간매일 꾸준히(희망사항)출근전 1 시간퇴근 후 2 시간 (칼퇴근하면3~4시간)밤중 개발 (애 깨면 재운 뒤)주말 시간 활용토요일/일요일 오전 4시간(늦잠 자던 시간 활용)낮잠 주의!9카사 공개 세미나
10.
개발 장소회사 내에서는작업금지!취미가 아닌 게 되어 버림눈치 보임회사에 뺏길 수 있음회사에서는 회사일에만 충실!10카사 공개 세미나
11.
개발 장소.집에서혼자 사는경우주위의 방해가 거의 없음대신, 잠도 잘 옴신혼/애기 있는 경우매우 힘듦. 모두 잠든 밤에나 가능배우자의 허락을 득해도 눈치 보임집에서는 화목하고 편안한 가정생활에 충실하고, 집 밖에서 개발 권장!11카사 공개 세미나
12.
개발 장소..모임 전문공간토즈(www.toz.co.kr) 추천1인 두 시간에 5천원인터넷, 음료수 공짜단, 모든 지역에 있는 건 아님커피숍매우 시끄러움(헤드폰 필참)화장실 갈 땐, 노트북 주의전원 콘센트 없는 곳 많음(항시 충전 100%)그 외도서관, 독서실 : 키보드 타이핑 어려움PC 방 : 담배연기12카사 공개 세미나
13.
도구개발 장비노트북 :자가용 출근 아니라면, 가볍고 성능 좋은 걸로 (단, 비쌈)개발 도구소스 컨트롤혼자서라지만 백업/히스토리 유지Perforce : 2인까지 공짜SVN, Mercurial 등 오픈소스툴Bitbucket.org 등 공짜/비공개 서버 활용비주얼 스튜디오 익스프레스공짜, 상용 어플 개발 가능플러그인/MFC 빼면 그닥 불편한 거 없음13카사 공개 세미나
14.
엔진의 구성CoreEngineCore :기본 모듈Engine : 그래픽 및 씬그래프Gui : GUIGamesSandBox : 샘플 게임ToolsBatcher : 각종 커맨드라인 툴Viewer : 모델/씬 뷰어Tester : 단위 테스팅Exporter : Collada파일 변환Documents각종 개발 관련 문서들14카사 공개 세미나
15.
엔진의 구성(Core)기본 컨테이너클래스(Array, List, Stack, HashMap, Blob, Iterator등)Math 라이브러리Memory Pool 관련String, Name, Guid등파일 I/O, 패키징 시스템, Serialization 등리소스 관리OS 관련(Thread, CriticalSection, Timer, DateTime등)15카사 공개 세미나
16.
STL 안 쓴이유?콘솔에서는 STL 이 완전치 않아서아직 직접 경험해 보지는 못했음NDS 쪽에는 버그가 많다?직접 만들면 더 빠르고 메모리 덜 쓸 것 같아서속도는 별 차이 없었음메모리 사용량은 차이가 좀 남컴파일 타임 꽤 차이 남컨테이너를 내 맘대로 할 수 있어서 좋음컨테이너에 Serialization 등 추가 용이EA도 만들어 쓰지 않던가? EASTL16카사 공개 세미나
17.
GUID모든 리소스들은 GUID를가짐컴파일 옵션에 따라32bit 작은 GUID 사용 : 3F-25-04-E016바이트 표준 GUID 사용3F2504E0-4F89-11D3-9A0C-0305E82C3301리소스 Serialization 시에 포인터 대신 GUID 저장17카사 공개 세미나
Batcher각종 커맨드 라인프로그램들단일 프로그램. 옵션에 따라 여러 다른 JOB 수행 예)셰이더 컴파일패키징 파일 압축/해제기본 리소스 생성23카사 공개 세미나
24.
Tester빌드 후 자동으로수행되는 테스트Googletest와 유사이미지 비교 테스트도 있음픽셀 단위 비교렌더링된 이미지의 결과 확인용이미지 라이브러리는 사용 안함.RAW눈으로 확인 시 ImageMagick활용혼자 개발할 때 자동 테스트는 필수아무도 버그를 알려 주지 않음24카사 공개 세미나
25.
ExporterCOLLADA 포맷 사용바이너리포맷이 변경되어도 다시 원본으로부터 포맷 재변환 용이스키닝 및 재질 관련 속성 지원DCC툴 의존적이지 않음(오픈포맷)XML 파싱 자체 개발 비추(버전 달라질 때 귀찮았음)XML이라 파일 크기가 큼25카사 공개 세미나
26.
리소스 조달프로그래머가 만든아트리소스는 안 이쁨지인 활용잘하는 아티스트와는 평소 인간관계를 돈독히공개 리소스 활용대부분 별로임…Sketchup 3D Warehouse텍스쳐만 빼면 좋은 모델 더러 있음http://sketchup.google.com/3dwarehouse/26카사 공개 세미나