« Previous : 1 : 2 : 3 : 4 : 5 : 6 : 7 : Next »

[개발일지] 오랜만의 작업...

한동안 너무 바빠서 작업을 진행하지 못하다가
거의 3주만에 작업을 진행하게 되었네요.
밀린걸 몰아서 하려니 힘듭니다.

이번 작업은 모래알이 쌓이는 것입니다.
실제로 파티클을 쌓는 것은 무모할 정도로 무거운 작업입니다.
그래서 이런저런 편법을 쓰곤 하는데요,
이번에는 작업할 수 있는 시간도 부족하고 해서
기존의 시스템을 거의 변경하지 않고 꼼수를 써서 해당 기능을 구현하고 있습니다.
기존 기능의 재활용이랄까요.

궁하면 통하나봅니다.
말도 안되게 전혀 관계없는 기능들을 응용하여 다른 기능을 만들어내고 있습니다.
근데, 그렇게까지 해야 하는 이 궁함(시간적으로요...)이 조금 서글프기도 합니다.

암튼 내일까지 이 부분을 다 끝낼 예정입니다.

Ash Village, 갈 길이 너무 멉니다... =..=;

Posted by moonyeom

2010/11/13 17:17 2010/11/13 17:17
, , ,
Response
No Trackback , No Comment
RSS :
http://www.arcshock.com/kr/rss/response/61

한 5년정도 전부터 만들어서 업글해나가고 있는 3D 엔진을 쓰고 있습니다.
근데 어제, 어이없는 버그가 발견되었어요.

DirectX 의 Device 를 Reset 할때마다 GDI 가 한개씩 증가하는 문제였어요.
이게 눈에 잘 띄지 않는 문제라 지금까지 문제없이 사용해온 것인데요,
실시간으로 계속 Reset 을 해야 하는 상황에서 이 문제가 불거진거죠.
GDI 가 계속 증가... 나중에 리소스 부족으로 꽥.

결국 버그를 찾아냈는데요,
창모드에서 DX 를 초기화할때 화면의 BPP(Bit per pixel)가 필요한데
(요즘은 다들 32비트로 쓰지만, 예전에는 16비트 화면도 많이들 썼지요...)
이걸 얻기 위해서 화면의 Handle을 얻어와야 했어요.
Handle을 얻고 나서 그걸 이용하는 코드가 다 수행된 다음에는
Handle을 다시 Release 해줘야 하는데, 그걸 안했던거죠.

보통때에는 DX 초기화를 여러번 할 일이 거의 없지만,
이번 경우에는 초당 수십번씩 초기화가 일어나는 상황이었어요.
(이게 필요할 일이 있겠냐 싶지만, 회사 프로젝트에서 꼭 필요한 순간이 있었다는....-.-)
암튼, 결국 회사 프로젝트에 엮이는 바람에 발견된 버그랍니다.

일단 발견되고 나니 워낙 초보적인 실수라 금방 해결했지만요.
오래도록 사용하고 있는 엔진도 이렇게 버그가 남아있다는 것과,
별것 아닌 문제가 경우에 따라선 큰 에러를 일으킬 수도 있다는 것.
그리고, 항상 겸손해야겠다는 것을 새삼 느끼게 되었습니다.

P.S.
오늘은 잠도 많이 부족하고 배도 고프고 해서 영 일에 집중을 못하겠네요.
하루종일 트윗질 하다 잠시 쉬려고 블로그질... (^-^)>

Posted by moonyeom

2010/10/21 11:45 2010/10/21 11:45
, , , , ,
Response
No Trackback , No Comment
RSS :
http://www.arcshock.com/kr/rss/response/60

연말까지 이제 남은 기간 두달정도.
그래픽 디자이너는 현실적으로 시간을 거의 못 내는 상황인데다
프로그래머(저요)까지도 시간이 없는 상황으로 내몰리고 있습니다.

본업이 따로 있는 이상 어쩔 수 없는 시간의 제약은 있겠습니다만,
지금은 정말 최악의 시간상황인 듯 하네요.
2주일에 하루 시간내기가 힘든 터라...

그래서 연말까지의 계획은 물리적으로 불가능이라 생각되어
일단 게임의 핵심 시스템에만 열중하는 것으로 결론을 내렸습니다.
...라곤 해도...
2주에 하루씩 작업하는것으론 연말까지 고작해야 5일 정도일텐데...
좀 암담한 상황입니다.
어떻게든 1주에 하루 정도는 마음껏 작업할 수 있게 되면 좋겠는데요...

Posted by moonyeom

2010/10/15 22:06 2010/10/15 22:06
, , ,
Response
No Trackback , No Comment
RSS :
http://www.arcshock.com/kr/rss/response/59

이것 참...
욕심을 내면 낼수록 프로그램이 무거워지는건 당연할텐데 말이죠.
암튼 지난 버전에 비해 좀 더 욕심을 내게 되네요.

이번엔 물체 자체의 움직임을 구현했습니다.
모래알을 맞은 시소가 기울어지는 것뿐 아니라, 시소 자체가 밀리는 현상을 구현한 것입니다.
다만, 이렇게 밀리는 물체끼리 또 충돌을 하게 되면 어쩌냐 하는 문제는...
운동량 총합의 보존이니 뭐니 하다보면 너무 무거워질 것 같아서요.
일단 움직이던 물체만 살짜쿵 바운딩을 하도록 했습니다.
이렇게 해도 퍼즐게임은 된다... 정도로 만족할려고 합니다...
(하지만 광님이 이의를 제기하겠지)

암튼, 지난주의 부진을 이번주에 떨칠 수 있을지가 관건이군요.
그나저나, 우리 마님그래픽디자이너는 아예 손을 놓고 아기 키우기에 올인...
큰일입니다... @_@ㆀ

Posted by moonyeom

2010/10/04 17:58 2010/10/04 17:58
, , ,
Response
No Trackback , No Comment
RSS :
http://www.arcshock.com/kr/rss/response/58

Sand Castle - Ash Village (이하 모래성-잿골) 작업이 지지부진하다가
어제부터 조금씩 진도가 나가고 있네요.
지금은 지난 Prelude 버전에서 구현되지 않던, 좀 더 다양한 물리현상들을 구현하기 위해
핵심 알고리즘을 코드화하는 작업을 하고 있어요.
어제는 구면(사실은 원)에 부딧힌 모래알을 처리하는 작업을 했어요.
본래는 어렵지 않은 작업인데...
무한직선과 점의 거리를 재야 할 곳에서 유한직선으로 잘못 처리한 실수가 있어서
결과가 잘못 나오는 문제때문에 새벽까지 작업을 해야 했어요.
(단순한 버그가 잘 안보이는 법... 날파리나 책벌레가 눈에 잘 안 띄듯... 음, 그건 작아선가 ?)
새벽 코딩이 좋은 효율을 보이는 것은 체력이 받쳐줄때 뿐이라는 것을 새삼 깨달았지요.
암튼, 문제는 해결.

모래성-잿골 개발을 위해서 앞으로 구현해야 할 재미있는 주제의 알고리즘들이 많이 남아있네요. 이걸 즐거워해야 하는건지는 좀 헷갈리지만서도... =,.=;
퍼즐을 풍성하게 하려면 특성이 다양한 물체가 많아야 하는데
Prelude 버전에서는 좀 단순한 물체밖에 없어서 한계가 많았어요.
그래서 이번 모래성-잿골 버전에선 다양한 작동을 하는 물체들을 만들어낼 수 있는
내부 시스템을 설계하고 구현하는데에 무게를 많이 두고 있어요.
얼마나 잘 될지는 모르겠지만... 아뭏든 만드는 입장에선 즐겁고 기대되는게 사실이예요..^^;

연휴가 끝나가네요.
일주일만 더 쉬었으면 좋겠네...

Posted by moonyeom

2010/09/26 19:19 2010/09/26 19:19
, , ,
Response
No Trackback , 4 Comments
RSS :
http://www.arcshock.com/kr/rss/response/57

ArcShock Game Studio 의 긴급 야심작,
갤럭시 마스터(Galaxy Master, GRB Version)를 공개합니다.

사용자 삽입 이미지
Galaxy Master 는 유저가 우주를 창조하는 의 입장이 되어,
구상성단, 가스성운, 나선은하, 암흑성운 등 신비로운 우주를 만들어나가는
초특급 시뮬레이션 어드벤쳐 물리 게임일지도 모릅니다.

무료다운받는곳
http://www.filefront.com/17294591/GalaxyMasterGRB.zip (이쪽이 받기 편함)
http://www.fileplanet.com/files/210000/216191.shtml

게등위(게임물등급위원회)에 적극적인 신고 바랍니다.

★다른 참여자들의 작품을 보고싶으시면 요길 클릭★



Posted by moonyeom

2010/09/17 21:00 2010/09/17 21:00

등위(미안하다 오타났다)의 뻘짓이 어제 오늘 일은 아닙니다만,
그들이 이제 봐줄 수 있는 선을 넘어버렸습니다.
이땅의 비자본 게임 문화를 끌어안고 함께 죽자고 합니다.

먼저, 도대체 무슨 소리인가 하는 내용은
http://areca.egloos.com/5346581
http://pig-min.com/tt/3106
이 두 링크의 글을 살펴봐주셔요.

앞으로 벌어질 일에 대해 대략 예상해보자면 이렇습니다.

옆집 초딩 돌돌이는 게임을 좋아할 뿐 아니라 직접 만들기도 좋아하는 똑똑한 아이입니다.
창의적인 두뇌활동의 일환으로 게임툴을 이용해 간단한 똥피하기 게임을 만들었습니다.
"어머, 우리 아가가 이런걸 다 만들었어 ? 너무 잘했어요..."
엄마아빠이모삼촌에게 칭찬을 들은 우리의 돌돌이는 자신의 블로그에 게임을 올렸습니다.
그리고 다음날, 게시물은 블록당하고 돌돌이는 엄마아빠와 함께 경찰서에 출두합니다.
왜 ?
심의를 받지 않은 게임을 블로그에 올렸기 때문입니다.

뒷집 총각 갑돌이는 게임 프로그래머가 되는 것이 목표입니다.
열심히 게임을 개발하여 포트폴리오를 만들고, 그것을 게임개발자 카페에 올렸습니다.
선배 프로그래머들의 조언도 듣고, 또 잘 만든 부분은 좀 자랑도 하고 싶어서였습니다.
하지만 그 다음날 경찰에 전격 체포됩니다.
심의를 받지 않은 게임을 카페에 올렸기 때문입니다.

다소 과장되었지요 ?
아직은 그렇습니다.
하지만 이제 슬슬 시작되고 있습니다.
직접 프로그래밍한, 게임툴을 이용한, 혹은 플래시를 이용한 모든 비상업적 게임들은
등위(계속 미안하다)에 을 내고 심의를 받아야만 한답니다.

언젠가부터 이 나라가 다시 통제의 그늘로 들어가고 있습니다.
누구때문이라고는 콕 찍어서 말하지 않겠습니다MB (미안하다 오타났다)
하지만, 더 이상 봐주기에는 그들이 선을 한참 넘어선 것 같습니다.
뜻 있는 개발자들(혹은 개발자가 아니라 하더라도)이 함께 움직여
잘못을 바로잡아야 하겠습니다.
아무리 작고 약한 힘이라도 모아야 하겠습니다.

관련된 움직임이 궁금하시면 이곳을 클릭...
http://pig-min.com/tt/3111
http://pig-min.com/tt/3112

Posted by moonyeom

2010/09/05 17:18 2010/09/05 17:18
, , ,
Response
No Trackback , a comment
RSS :
http://www.arcshock.com/kr/rss/response/54

방금 전달받은 따끈따끈한 소식입니다.

Sand Castle - Prelude : The Faded Memories
IndieCade 공모전에서 낙방했습니다.

성원해주신 많은 분들, 수고해주신 Pig-Min Agency 측에 송구하기도 하고,
은근 쬐금 아주 약간 진짜로 쬐금 기대했었는데, 뚝 떨어진게 서운하기도 하지만...
이번에 IndieCade 덕에 E3Show 에까지 나갔다는 것만 생각해도
이미 많은 선물을 받은 셈입니다.
고마웠어요 IndieCade !!! (내년에 또 나갈꼬야)

한동안 더위에 맥이 완전히 빠져있었는데요,
이번 낙방 소식에 정신이 살짝 돌아오는 느낌입니다.
더 완성도 있고 재미있게 만들어야겠어요...
ArcShock 힘내 !!! (^-^)

Posted by moonyeom

2010/08/27 12:30 2010/08/27 12:30
, , , , ,
Response
No Trackback , 4 Comments
RSS :
http://www.arcshock.com/kr/rss/response/53

[잡담] 더위와 개발...

더위는 개발에도 영향을 미치는데요...
특히 저처럼 더위에 매우 취약한 개발자일 경우에는 아주 치명적입니다.

최근 한달정도 무쟈게 더웠습니다.
지구온난화 때문인지 라니냐 탓인지 지자기역전인지
아니면 안드로메다 은하의 접근 때문인지는 모르겠습니다만,
앞으로의 여름은 전처럼 견딜만하지 않을 것 같습니다.

개발 일정을 계획할 때에 더위에 대한 고려를 한 적은 지금까지 한번도 없었습니다만,
올해 여름을 겪고 나니, 앞으로는 여름철 더위를 일정에 영향을 주는
중요한 변수로 인정해야만 하겠다는 생각이 듭니다,.

모래성 진도가 안나가는 것에 대해 변명하려고 이 글을 쓰는 것은 결단코 아니라는.

Posted by moonyeom

2010/08/21 18:35 2010/08/21 18:35

[개발일지] Audiere for OGG

지난번에 이어 이번에도 OGG 관련 내용입니다.
지난번에는, 손안대고 쉽게 코를 풀 수 있으나 Win7 등에서 관리자모드를 요구하는 문제때문에 OggDS 필터 동적 로드/해제 방식은 포기했더랬죠.

아니, 그냥 Ogg Vorbis SDK 를 쓰면 직접 쓰면 되쟎아...
라고 생각하시는 분들도 계시겠지만...
그쪽에서 Delphi/Pascal 용 SDK 를 제공해주지 않기에...
그 많은 SDK 를 따로 분석해서 필요한 부분만 다시 번역하고... 하는 일을 하기 싫어서
이렇게 좀 더 쉬운 방법을 찾고있는겝니다.
쩝...

암튼 그래서 이번에 살펴본 것은
LGPL 라이센스를 따르고 있다고 하는 Audiere 입니다.
DLL 을 입수하여 속을 들여다보니 DLL 함수 이름이 몽땅 맹글링 되어있습니다그려.
함수 명으로 Delphi / Pascal 에서 바로 읽어들이는건 좀 귀챦아지지만...
속을 들여다볼 수 있으니 뭐, 그냥 동적이든 정적이든 링크가 가능하므로...
연결해서 이용해봤습니다.

OGG 파일 플레이, 잘 됩니다 !!!

아, 감사...
LGPL 이니 라이브러리 자체를 수정하지 않고 그냥 쓰면 상용으로 사용하더라도 소스코드 공개의무도 없고... (뭐, 공개하라면 해도 되는 허접한 코드이니 상관없지만)
암튼 이런거 만들어 공유해주시는 분들께 미리 감사...

근데 복잡한 라이센스 규정을 이해하는게 여전히 뭔가 어렵군요.
뭘 함께 포함시켜야 하는건지 아직도 헷갈립니다.

근데 뭔가 약간 미묘하면서도 사소한 문제가 있는데요.
Audiere 에선 SandCastle Prelude 버전의 OST MP3 파일이 플레이 되지 않네요.
다른 정상적인 음질의 파일들은 잘 되는데 말이죠...
음질 나쁘면 인식 안되나봐 뭐야 이거 무시당한거야 ?

암튼, Ogg 만 잘 플레이되면 목적은 달성이니, 불만은 없고요.

다음번엔 또 다른 방법으로 Ogg 를 플레이해볼까 말까 생각중인데요,
Ogg DLL 파일 서너개를 주렁주렁 달고 다니는 방법보다는
Audiere DLL 한개만 달고 다니는게 좀 덜 보기싫을 것 같아서 이 방법으로 마감할까 하는 생각도 들고...
암튼 그렇습니다.

Posted by moonyeom

2010/08/10 12:33 2010/08/10 12:33

« Previous : 1 : 2 : 3 : 4 : 5 : 6 : 7 : Next »