일단 증상도 똑같다.
로딩이전에 색상이 이상하게 나오는 것(위에 사진에서 수풀의 색이 다르다)
그리고 화면 회전시 우클릭이 묶여서 가끔 안 풀리는 버그
아무튼, 이렇게라도 게임 엔진이 살아 있다는건 왜 기쁠까? 내가 만든것도 아닌데
2009.09.18 추가
누군가가 타고와서 검색어로 추적해보니.. http://gigglehd.com/zbxe/2873504 내용에 의하면 게임브리오 엔진이고 현재 WoW에서도 사용중인 엔진이라고 한다.
근데.. 저런 텍스쳐 로딩 안되서 색깨지는건.. 플레이오네 같은데..
머.. 넥슨에서 공식으로 게임브리오 엔진이라고 했다고 하니 그렇게 믿어야 하나.. (퍽!)
데브캣 : 믿지 않으면 안된다냐옹~
개발자 이야기에 나온 공식 내용
2.
허스키 익스프레스는 마비노기 엔진으로 만들었다?
허스키 익스프레스는 마비노기의 엔진을 고쳐 만들었다는 이야기를
많이들 하시더군요.
그렇지 않습니다. 허스키 익스프레스는 게임브리오라는 상용엔진으로 개발하고 있습니다.
어느 엔진으로 만들었는지보다,
재미있는 게임을 만드는 것이 더 중요합니다만,
게임브리오 엔진 개발사에서 섭섭해하시지 않게 알려드립니다 ^^
그런 이유로, 시리얼 포트는 Terminal 모드로 열리게 되고,
그 시리얼 포트는 공용으로 사용하게 된다.
이러한 터미널 모드로 열린 녀석을 점유하기 위해서는 다른 녀석들의 프로세스를 죽이는 방법뿐이라는데..
상대는 셸과 커널이다... 죽이면 죽는다.. OTL
게다가 respawn 될테니 이길수가 없다...!!
아무튼 이러한 상황에서 /dev/ttyAS0 에서
프로그램을 실행하여 시리얼 입력을 받게 할경우,
원인은 모르겠지만 "\t\n\n" 을 먼저 보낸 후, 메시지를 보내야만 받는 현상이 있었다.
물론 100% 받는것도 아니고 대략 50~70% 정도의 응답을 하고, 프로그램적으로 하지 않고
손으로 직접입력하면 탭하나에 문자 하나 겨우 입력하는 수준이다. 그것도 타이밍을 맞추어야 겨우 하나 들어간다.
# Makefile:10: *** commands commence before first target. Stop.
위의 에러는 '첫 번째 타겟이 나오기 전에 명령어가 시작되었다'는 애매한 에러 메시지이다. 필자가 경험한 이 에러의 원인은 주로 긴 문장을 여러 라인에 표시를 하기 위해서 '\'를 사용할 때, 이를 잘못 사용했기 때문인 것 같다. 즉 '\'부분은 라인의 가장 끝문자가 되어야 하는데 실수로 '\'뒤에 스페이스를 몇 개 집어넣으면 여지없이 위의 에러가 발생한다.
대처: 10번째 줄(근처)에서 '\'문자가 있거든 이 문자가 라인의 가장 끝문자가 되도록 한다. 즉 '\'문자 다음에 나오는 글자(스페이스가 대부분) 는 모조리 없애 버린다.
SVN의 태그/브랜치는 CVS의 태그/브랜치와 다르다.
CVS의 태그/브랜치는 version에 박히는 것이라면은,
SVN의 태그/브랜치는 저장소에 복사를 하는 것이다.
그런 의미로 굳이
아래의 구조가 아니어도 상관이 없고, 사용자가 관리하기 편한대로 구조를 잡아도 된다는 것이다.
아무튼 태그/브랜치는 TortoiseSVN의 context-menu에서 Branch/tag로 들어갈 수 있으며
Branch/Tag를 누르면 아래의 다이얼로그가 뜨면서 복사할 URL을 물어본다.
기본적인 repository 구조라면, trunk 대신 tags/tag_number로 입력해준다.
그러면 그 위치로 현재 리비전을 복사해서, 새로운 tag를 생성한다.
(물론 내부적으로 복사하므로 매우 빠르고, 실제 데이터 크기가 크게 늘어나지도 않는다)
Repository Browser로 확인해 본, 태그 디렉토리
위에서 한대로 0.0.1 버전을 생성하였다.
4.19. Branching / Tagging
One of the features of version control systems is the ability to isolate
changes onto a separate line of development. This line is known as a branch. Branches are often used to try out new features
without disturbing the main line of development with compiler errors and bugs.
As soon as the new feature is stable enough then the development branch is merged back into the main branch (trunk).
Another feature of version control systems is the ability to mark particular
revisions (e.g. a release version), so you can at any time recreate a certain
build or environment. This process is known as tagging.
Subversion does not have special commands for branching or tagging, but uses
so-called “cheap copies” instead. Cheap copies are
similar to hard links in Unix, which means that instead of making a complete
copy in the repository, an internal link is created, pointing to a specific
tree/revision. As a result branches and tags are very quick to create, and take
up almost no extra space in the repository.
kscope는 KDE용 cscope의 GUI 프로그램이다.
솔찍히 대충써봐서인지 자세히는 모르겠지만
결과적으로 source insight를 대체하기에는 너무나 부족한 감이 든다.
물론 추적기능이라던가, 여러가지 있지만, 자동추적 기능이 없기 때문에 공백이 크게 느껴지는 것 같다.
아래는 kscope의 Project 메뉴이다.
Create Project를 하면 아래와 같은 dialog 창이 뜬다.
위에는 프로젝트의 이름( = 프로젝트 디렉토리의 이름)을 넣고
아래에는 프로젝트 디렉토리가 저장될 경로를 넣는다.
colinux portable ubuntu / ubuntu 9.04 에서 해봤는데,
/home이 아닌 곳에서는 아래와 같은 에러가 나므로, 되도록이면 $HOME(사용자 디렉토리) 에 생성하도록 한다.
프로젝트를 생성후, 소스 트리에서 소스파일들을 추가해준다.
Add/Remove files에 들어가면 아래와 같은 Dialog창으 뜨게 되고,
Add 에서 Directory 등을 이용해 파일을 추가한다. (이 부분은 source insight와 거의 유사하다)
만약에 *.c *.h 외에 다른 확장자가 필요하다면,
초기 프로젝트 생성시에 File Types에서 추가를 해주거나
Project 메뉴의 Project Properties에서 추가를 해주면 된다.